Previous section.

Data Link Provider Interface (DLPI)

Data Link Provider Interface (DLPI)
Copyright © 1997 The Open Group

Primitives for Management Services

This appendix presents the optional primitives to perform essential management functions. The management functions supported are get and set of physical address, and statistics gathering. Data Link Provider Interface (DLPI) - DL_PHYS_ADDR_REQ
Previous section.


Why not acquire a nicely bound hard copy?
Click here to return to the publication details or order a copy of this publication.

NAME

DL_PHYS_ADDR_REQ (dl_phys_addr_req_t) - this primitive requests the DLS provider to return either the default (factory) or the current value of the physical address associated with the stream depending upon the value of the address type selected in the request.

SYNOPSIS

The message consists of one M_PROTO message block containing the structure shown below:

typedef struct {
    t_uscalar_t  dl_primitive;
    t_uscalar_t  dl_addr_type;
} dl_phys_addr_req_t;

PARAMETERS

dl_primitive

conveys DL_PHYS_ADDR_REQ.

dl_addr_type

conveys the type of address requested - factory physical address or current physical address:

DL_FACT_PHYS_ADDR

factory physical address

DL_CURR_PHYS_ADDR

current physical address.

STATE

The message is valid in any attached state in which a local acknowledgement is not pending. For a style 2 provider, this would be after a PPA is attached using the DL_ATTACH_REQ. For a Style 1 provider, the PPA is implicitly attached after the stream is opened.

NEW STATE

The resulting state is unchanged.

RESPONSE

The provider responds to the request with a DL_PHYS_ADDR_ACK if the request is supported. Otherwise, a DL_ERROR_ACK is returned.

ERRORS

DL_NOTSUPPORTED

Primitive is known, but not supported by the DLS Provider.

DL_OUTSTATE

The primitive was issued from an invalid state.

Data Link Provider Interface (DLPI) - DL_PHYS_ADDR_ACK
Previous section.

NAME

DL_PHYS_ADDR_ACK (dl_phys_addr_ack_t) - this primitive returns the value for the physical address to the link user in response to a DL_PHYS_ADDR_REQ.

SYNOPSIS

The message consists of M_PCPROTO message block containing the following structure:

typedef struct {
    t_uscalar_t  dl_primitive;
    t_uscalar_t  dl_addr_length;
    t_uscalar_t  dl_addr_offset;
} dl_phys_addr_ack_t;

PARAMETERS

dl_primitive

conveys DL_PHYS_ADDR_ACK.

dl_addr_length

conveys length of the physical address.

dl_addr_offset

conveys the offset from the beginning of the M_PCPROTO message block.

STATE

The message is valid in any state in response to a DL_PHYS_ADDR_REQ.

NEW STATE

The resulting state is unchanged.
Data Link Provider Interface (DLPI) - DL_SET_PHYS_ADDR_REQ
Previous section.

NAME

DL_SET_PHYS_ADDR_REQ (dl_set_phys_addr_req_t) - sets the physical address value for all streams for that provider for a particular PPA.

SYNOPSIS

The message consists of M_PROTO message block which contains the following structure:

typedef struct {
    t_uscalar_t  dl_primitive;
    t_uscalar_t  dl_addr_length;
    t_uscalar_t  dl_addr_offset;
} dl_set_phys_addr_req_t;

PARAMETERS

dl_primitive

conveys DL_SET_PHYS_ADDR_REQ.

dl_addr_offset

conveys the offset from the beginning of the M_PROTO message block.

dl_addr_length

conveys the length of the requested hardware address.

STATE

The message is valid in any attached state in which a local acknowledgement is not pending. For a Style 2 provider, this would be after a PPA is attached using the DL_ATTACH_REQ.For a Style 1 provider, the PPA is implicitly attached after the stream is opened.

NEW STATE

The resulting state is unchanged

RESPONSE

The provider responds to the request with a DL_OK_ACK on successful completion. Otherwise, a DL_ERROR_ACK is returned.

ERRORS

DL_BADADDR

The address information was invalid or was in an incorrect format.

DL_BUSY

One or more streams for that particular PPA are in the DL_BOUND state.

DL_NOTSUPPORTED

Primitive is known, but not supported by the DLS Provider.

DL_OUTSTATE

The primitive was issued from an invalid state.

DL_SYSERR

A system error has occurred

Data Link Provider Interface (DLPI) - DL_GET_STATISTICS_REQ
Previous section.

NAME

DL_GET_STATISTICS_REQ (dl_get_statistics_req_t) - directs the DLS provider to return statistics

SYNOPSIS

The message consists of one M_PROTO message block containing the structure shown below:

typedef struct {
    t_uscalar_t  dl_primitive;
} dl_get_statistics_req_t;

PARAMETERS

dl_primitive

conveys DL_GET_STATISTICS_REQ.

STATE

The message is valid in any state in which a local acknowledgement is not pending.

NEW STATE

The resulting state is unchanged

RESPONSE

The DLS Provider responds to this request with a DL_GET_STATISTICS_ACK if the primitive is supported. Otherwise, a DL_ERROR_ACK is returned.

ERRORS

DL_NOTSUPPORTED

Primitive is known but not supported by the DLS Provider.

Data Link Provider Interface (DLPI) - DL_GET_STATISTICS_ACK
Previous section.

NAME

DL_GET_STATISTICS_ACK (dl_get_statistics_ack_t) - returns statistics in reponse to the DL_GET_STATISTICS_REQ. The contents of the statistics block is defined in the DLS Provider specific addendum.

SYNOPSIS

The message consists of one M_PCPROTO message block containing the structure shown below:

typedef struct {
    t_uscalar_t  dl_primitive;
    t_uscalar_t  dl_stat_length;
    t_uscalar_t  offset;
} dl_get_statistics_ack_t;

PARAMETERS

dl_primitive

conveys DL_GET_STATISTICS_ACK.

dl_stat_len

conveys the length of the statistics structure.

dl_stat_offset

conveys the offset from the beginning of the M_PCROTO message block where the statistics information resides.

STATE

The message is valid in any state in which a local acknowledgement is not pending.

NEW STATE

The resulting state is unchanged

Contents Next section Index