Requests that the data link service (DLS) provider disable specific multicast addresses on a per stream basis.
The message consists of one M_PROTO message block, which contains the following structure:
typedef struct
{
ulong dl_primitive;
ulong dl_addr_length;
ulong dl_addr_offset;
} dl_disabmulti_req_t;
This structure is defined in /usr/include/sys/dlpi.h.
The DL_DISABMULTI_REQ primitive requests that the DLS provider disable specific multicast addresses on a per stream basis.
The DLS provider must not run in the interrupt environment. If the DLS provider runs in the interrupt environment, the system returns a DL_ERROR_ACK primitive with an error code of DL_SYSERR and an operating system error code of 0.
Item | Description |
---|---|
dl_primitive | Specifies the DL_DISABMULTI_REQ primitive. |
dl_addr_length | Specifies the length of the physical address. |
dl_addr_offset | Indicates where the multicast address begins. The value of this parameter is the offset from the beginning of the M_PROTO message block. |
Item | Description |
---|---|
Valid | The primitive is valid in any state in which a local acknowledgement is not pending, with the exception of the DL_UNATTACH state. |
New | The resulting state is unchanged. |
Item | Description |
---|---|
Successful | The DL_OK_ACK primitive is sent to the DLS user. |
Unsuccessful | The DL_ERROR_ACK primitive is returned, and the resulting state is unchanged. |
Item | Description |
---|---|
DL_BADADDR | Indicates the data link service access point (DLSAP) address information is invalid or is in an incorrect format. |
DL_NOTENAB | Indicates the address specified is not enabled. |
DL_NOTSUPPORTED | Indicates the primitive is known but not supported by the DLS provider. |
DL_OUTSTATE | Indicates the primitive was issued from an invalid state. |
DL_SYSERR | Indicates a system error occurred. The DL_ERROR_ACK primitive indicates the system error. |