---
name: "ost_IPV4Mask"
section: "3"
platform: "linux"
package: "libcommoncpp2-doc"
version: "1.8.1-10"
release: "Debian 11 (Bullseye)"
platforms: ["linux"]
url: "https://new.carta.tech/ost_IPV4Mask"
---

# ost\_IPV4Mask(3)

Internet addresses used specifically as masking addresses (such as ' 255.255.255.0') are held in the IPV4Mask derived object.

## NAME

ost::IPV4Mask - Internet addresses used specifically as masking addresses (such as ' 255.255.255.0') are held in the **IPV4Mask** derived object.

## SYNOPSIS

`#include <address.h>`

Inherits **ost::IPV4Address**.

### Public Member Functions

**IPV4Mask** (const char \*mask)\
 Create the mask from a null terminated ASCII string such as '255.255.255.128'.  **IPV4Address** & **operator=** (unsigned long addr)\
 Allows assignment from the return of functions like inet\_addr() or htonl()

### Friends

**\_\_EXPORT** **IPV4Host** **operator&** (const **IPV4Host** &addr, const **IPV4Mask** &mask)\
 Masks are usually used to coerce host addresses into a specific router or class domain.

### Additional Inherited Members

## Detailed Description

Internet addresses used specifically as masking addresses (such as ' 255.255.255.0') are held in the **IPV4Mask** derived object.

The separate class is used so that C++ type casting can automatically determine when an **IPV4Address** object is really a mask address object rather than simply using the base class. This also allows manipulative operators for address masking to operate only when presented with a Masked address as well as providing cleaner and safer source.

**Author**

David Sugar dyfet@ostel.com

Internet Address Mask such as subnet masks.

## Constructor & Destructor Documentation

### ost::IPV4Mask::IPV4Mask (const char \* mask)

Create the mask from a null terminated ASCII string such as '255.255.255.128'.

**Parameters**

*mask* null terminated ASCII mask string.

## Member Function Documentation

### IPV4Address& ost::IPV4Mask::operator= (unsigned long addr)` [inline]`

Allows assignment from the return of functions like inet\_addr() or htonl()

References ost::IPV4Address::operator=().

## Friends And Related Function Documentation

### \_\_EXPORT IPV4Host operator& (const IPV4Host & addr, const IPV4Mask & mask)` [friend]`

Masks are usually used to coerce host addresses into a specific router or class domain. This can be done by taking the Inet Host Address object and 'and'ing it with an address mask. This operation can be directly expressed in C++ through the & operator.

**Returns**

a internet host address that has been masked.

**Parameters**

*addr* host address to be masked by subnet. \
 *mask* inetnet mask address object to mask by.

## Author

Generated automatically by Doxygen for GNU CommonC++ from the source code.
