📄 dlpi.h
字号:
dl_ulong dl_primitive; /* DL_DISCONNECT_REQ */ dl_ulong dl_reason; /* norm., abnorm., perm. or trans. */ dl_ulong dl_correlation; /* association with connect_ind */} dl_disconnect_req_t;/* DL_DISCONNECT_IND, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_DISCONNECT_IND */ dl_ulong dl_originator; /* USER or PROVIDER */ dl_ulong dl_reason; /* permanent or transient */ dl_ulong dl_correlation; /* association with connect_ind */} dl_disconnect_ind_t;/* DL_RESET_REQ, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_RESET_REQ */} dl_reset_req_t;/* DL_RESET_IND, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_RESET_IND */ dl_ulong dl_originator; /* Provider or User */ dl_ulong dl_reason; /* flow control, link error, resync */} dl_reset_ind_t;/* DL_RESET_RES, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_RESET_RES */} dl_reset_res_t;/* DL_RESET_CON, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_RESET_CON */} dl_reset_con_t;/* CONNECTIONLESS SERVICE PRIMITIVES *//* DL_UNITDATA_REQ, M_PROTO type, with M_DATA block(s) */typedef struct { dl_ulong dl_primitive; /* DL_UNITDATA_REQ */ dl_ulong dl_dest_addr_length; /* DLSAP length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_priority_t dl_priority; /* priority value */} dl_unitdata_req_t;/* DL_UNITDATA_IND, M_PROTO type, with M_DATA block(s) */typedef struct { dl_ulong dl_primitive; /* DL_UNITDATA_IND */ dl_ulong dl_dest_addr_length; /* DLSAP length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_ulong dl_src_addr_length; /* DLSAP addr length sender */ dl_ulong dl_src_addr_offset; /* offset from start of block */ dl_ulong dl_group_address; /* one if multicast/broadcast */} dl_unitdata_ind_t;/* DL_UDERROR_IND, M_PROTO type (or M_PCPROTO type if LLI-based provider) */typedef struct { dl_ulong dl_primitive; /* DL_UDERROR_IND */ dl_ulong dl_dest_addr_length; /* Destination DLSAP */ dl_ulong dl_dest_addr_offset; /* Offset from start of block */ dl_ulong dl_unix_errno; /* unix system error code */ dl_ulong dl_errno; /* DLPI error code */} dl_uderror_ind_t;/* DL_UDQOS_REQ, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_UDQOS_REQ */ dl_ulong dl_qos_length; /* requested qos byte length */ dl_ulong dl_qos_offset; /* offset from start of block */} dl_udqos_req_t;/* Primitives to handle XID and TEST operations *//* DL_TEST_REQ, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_TEST_REQ */ dl_ulong dl_flag; /* poll/final */ dl_ulong dl_dest_addr_length; /* DLSAP length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */} dl_test_req_t;/* DL_TEST_IND, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_TEST_IND */ dl_ulong dl_flag; /* poll/final */ dl_ulong dl_dest_addr_length; /* dlsap length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_ulong dl_src_addr_length; /* dlsap length of source */ dl_ulong dl_src_addr_offset; /* offset from start of block */} dl_test_ind_t;/* DL_TEST_RES, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_TEST_RES */ dl_ulong dl_flag; /* poll/final */ dl_ulong dl_dest_addr_length; /* DLSAP length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */} dl_test_res_t;/* DL_TEST_CON, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_TEST_CON */ dl_ulong dl_flag; /* poll/final */ dl_ulong dl_dest_addr_length; /* dlsap length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_ulong dl_src_addr_length; /* dlsap length of source */ dl_ulong dl_src_addr_offset; /* offset from start of block */} dl_test_con_t;/* DL_XID_REQ, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_XID_REQ */ dl_ulong dl_flag; /* poll/final */ dl_ulong dl_dest_addr_length; /* dlsap length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */} dl_xid_req_t;/* DL_XID_IND, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_XID_IND */ dl_ulong dl_flag; /* poll/final */ dl_ulong dl_dest_addr_length; /* dlsap length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_ulong dl_src_addr_length; /* dlsap length of source */ dl_ulong dl_src_addr_offset; /* offset from start of block */} dl_xid_ind_t;/* DL_XID_RES, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_XID_RES */ dl_ulong dl_flag; /* poll/final */ dl_ulong dl_dest_addr_length; /* DLSAP length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */} dl_xid_res_t;/* DL_XID_CON, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_XID_CON */ dl_ulong dl_flag; /* poll/final */ dl_ulong dl_dest_addr_length; /* dlsap length of dest. user */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_ulong dl_src_addr_length; /* dlsap length of source */ dl_ulong dl_src_addr_offset; /* offset from start of block */} dl_xid_con_t;/* ACKNOWLEDGED CONNECTIONLESS SERVICE PRIMITIVES *//* DL_DATA_ACK_REQ, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_DATA_ACK_REQ */ dl_ulong dl_correlation; /* User's correlation token */ dl_ulong dl_dest_addr_length; /* length of destination addr */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_ulong dl_src_addr_length; /* length of source address */ dl_ulong dl_src_addr_offset; /* offset from start of block */ dl_ulong dl_priority; /* priority */ dl_ulong dl_service_class; /* DL_RQST_RSP|DL_RQST_NORSP */} dl_data_ack_req_t;/* DL_DATA_ACK_IND, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_DATA_ACK_IND */ dl_ulong dl_dest_addr_length; /* length of destination addr */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_ulong dl_src_addr_length; /* length of source address */ dl_ulong dl_src_addr_offset; /* offset from start of block */ dl_ulong dl_priority; /* pri. for data unit transm. */ dl_ulong dl_service_class; /* DL_RQST_RSP|DL_RQST_NORSP */} dl_data_ack_ind_t;/* DL_DATA_ACK_STATUS_IND, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_DATA_ACK_STATUS_IND */ dl_ulong dl_correlation; /* User's correlation token */ dl_ulong dl_status; /* success or failure of previous req */} dl_data_ack_status_ind_t;/* DL_REPLY_REQ, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_REPLY_REQ */ dl_ulong dl_correlation; /* User's correlation token */ dl_ulong dl_dest_addr_length; /* destination address length */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_ulong dl_src_addr_length; /* source address length */ dl_ulong dl_src_addr_offset; /* offset from start of block */ dl_ulong dl_priority; /* pri for data unit trans. */ dl_ulong dl_service_class;} dl_reply_req_t;/* DL_REPLY_IND, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_REPLY_IND */ dl_ulong dl_dest_addr_length; /* destination address length */ dl_ulong dl_dest_addr_offset; /* offset from start of block */ dl_ulong dl_src_addr_length; /* length of source address */ dl_ulong dl_src_addr_offset; /* offset from start of block */ dl_ulong dl_priority; /* pri for data unit trans. */ dl_ulong dl_service_class; /* DL_RQST_RSP|DL_RQST_NORSP */} dl_reply_ind_t;/* DL_REPLY_STATUS_IND, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_REPLY_STATUS_IND */ dl_ulong dl_correlation; /* User's correlation token */ dl_ulong dl_status; /* success or failure of previous req */} dl_reply_status_ind_t;/* DL_REPLY_UPDATE_REQ, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_REPLY_UPDATE_REQ */ dl_ulong dl_correlation; /* user's correlation token */ dl_ulong dl_src_addr_length; /* length of source address */ dl_ulong dl_src_addr_offset; /* offset from start of block */} dl_reply_update_req_t;/* DL_REPLY_UPDATE_STATUS_IND, M_PROTO type */typedef struct { dl_ulong dl_primitive; /* DL_REPLY_UPDATE_STATUS_IND */ dl_ulong dl_correlation; /* User's correlation token */ dl_ulong dl_status; /* success or failure of previous req */} dl_reply_update_status_ind_t;union DL_primitives { dl_ulong dl_primitive; dl_info_req_t info_req; dl_info_ack_t info_ack; dl_attach_req_t attach_req; dl_detach_req_t detach_req; dl_bind_req_t bind_req; dl_bind_ack_t bind_ack; dl_unbind_req_t unbind_req; dl_subs_bind_req_t subs_bind_req; dl_subs_bind_ack_t subs_bind_ack; dl_subs_unbind_req_t subs_unbind_req; dl_ok_ack_t ok_ack; dl_error_ack_t error_ack; dl_connect_req_t connect_req; dl_connect_ind_t connect_ind; dl_connect_res_t connect_res; dl_connect_con_t connect_con; dl_token_req_t token_req; dl_token_ack_t token_ack; dl_disconnect_req_t disconnect_req; dl_disconnect_ind_t disconnect_ind; dl_reset_req_t reset_req; dl_reset_ind_t reset_ind; dl_reset_res_t reset_res; dl_reset_con_t reset_con; dl_unitdata_req_t unitdata_req; dl_unitdata_ind_t unitdata_ind; dl_uderror_ind_t uderror_ind; dl_udqos_req_t udqos_req; dl_enabmulti_req_t enabmulti_req; dl_disabmulti_req_t disabmulti_req; dl_promiscon_req_t promiscon_req; dl_promiscoff_req_t promiscoff_req; dl_phys_addr_req_t physaddr_req; dl_phys_addr_ack_t physaddr_ack; dl_set_phys_addr_req_t set_physaddr_req; dl_get_statistics_req_t get_statistics_req; dl_get_statistics_ack_t get_statistics_ack; dl_test_req_t test_req; dl_test_ind_t test_ind; dl_test_res_t test_res; dl_test_con_t test_con; dl_xid_req_t xid_req; dl_xid_ind_t xid_ind; dl_xid_res_t xid_res; dl_xid_con_t xid_con; dl_data_ack_req_t data_ack_req; dl_data_ack_ind_t data_ack_ind; dl_data_ack_status_ind_t data_ack_status_ind; dl_reply_req_t reply_req; dl_reply_ind_t reply_ind; dl_reply_status_ind_t reply_status_ind; dl_reply_update_req_t reply_update_req; dl_reply_update_status_ind_t reply_update_status_ind;};#define DL_INFO_REQ_SIZE sizeof (dl_info_req_t)#define DL_INFO_ACK_SIZE sizeof (dl_info_ack_t)#define DL_ATTACH_REQ_SIZE sizeof (dl_attach_req_t)#define DL_DETACH_REQ_SIZE sizeof (dl_detach_req_t)#define DL_BIND_REQ_SIZE sizeof (dl_bind_req_t)#define DL_BIND_ACK_SIZE sizeof (dl_bind_ack_t)#define DL_UNBIND_REQ_SIZE sizeof (dl_unbind_req_t)#define DL_SUBS_BIND_REQ_SIZE sizeof (dl_subs_bind_req_t)#define DL_SUBS_BIND_ACK_SIZE sizeof (dl_subs_bind_ack_t)#define DL_SUBS_UNBIND_REQ_SIZE sizeof (dl_subs_unbind_req_t)#define DL_OK_ACK_SIZE sizeof (dl_ok_ack_t)#define DL_ERROR_ACK_SIZE sizeof (dl_error_ack_t)#define DL_CONNECT_REQ_SIZE sizeof (dl_connect_req_t)#define DL_CONNECT_IND_SIZE sizeof (dl_connect_ind_t)#define DL_CONNECT_RES_SIZE sizeof (dl_connect_res_t)#define DL_CONNECT_CON_SIZE sizeof (dl_connect_con_t)#define DL_TOKEN_REQ_SIZE sizeof (dl_token_req_t)#define DL_TOKEN_ACK_SIZE sizeof (dl_token_ack_t)#define DL_DISCONNECT_REQ_SIZE sizeof (dl_disconnect_req_t)#define DL_DISCONNECT_IND_SIZE sizeof (dl_disconnect_ind_t)#define DL_RESET_REQ_SIZE sizeof (dl_reset_req_t)#define DL_RESET_IND_SIZE sizeof (dl_reset_ind_t)#define DL_RESET_RES_SIZE sizeof (dl_reset_res_t)#define DL_RESET_CON_SIZE sizeof (dl_reset_con_t)#define DL_UNITDATA_REQ_SIZE sizeof (dl_unitdata_req_t)#define DL_UNITDATA_IND_SIZE sizeof (dl_unitdata_ind_t)#define DL_UDERROR_IND_SIZE sizeof (dl_uderror_ind_t)#define DL_UDQOS_REQ_SIZE sizeof (dl_udqos_req_t)#define DL_ENABMULTI_REQ_SIZE sizeof (dl_enabmulti_req_t)#define DL_DISABMULTI_REQ_SIZE sizeof (dl_disabmulti_req_t)#define DL_PROMISCON_REQ_SIZE sizeof (dl_promiscon_req_t)#define DL_PROMISCOFF_REQ_SIZE sizeof (dl_promiscoff_req_t)#define DL_PHYS_ADDR_REQ_SIZE sizeof (dl_phys_addr_req_t)#define DL_PHYS_ADDR_ACK_SIZE sizeof (dl_phys_addr_ack_t)#define DL_SET_PHYS_ADDR_REQ_SIZE sizeof (dl_set_phys_addr_req_t)#define DL_GET_STATISTICS_REQ_SIZE sizeof (dl_get_statistics_req_t)#define DL_GET_STATISTICS_ACK_SIZE sizeof (dl_get_statistics_ack_t)#define DL_XID_REQ_SIZE sizeof (dl_xid_req_t)#define DL_XID_IND_SIZE sizeof (dl_xid_ind_t)#define DL_XID_RES_SIZE sizeof (dl_xid_res_t)#define DL_XID_CON_SIZE sizeof (dl_xid_con_t)#define DL_TEST_REQ_SIZE sizeof (dl_test_req_t)#define DL_TEST_IND_SIZE sizeof (dl_test_ind_t)#define DL_TEST_RES_SIZE sizeof (dl_test_res_t)#define DL_TEST_CON_SIZE sizeof (dl_test_con_t)#define DL_DATA_ACK_REQ_SIZE sizeof (dl_data_ack_req_t)#define DL_DATA_ACK_IND_SIZE sizeof (dl_data_ack_ind_t)#define DL_DATA_ACK_STATUS_IND_SIZE sizeof (dl_data_ack_status_ind_t)#define DL_REPLY_REQ_SIZE sizeof (dl_reply_req_t)#define DL_REPLY_IND_SIZE sizeof (dl_reply_ind_t)#define DL_REPLY_STATUS_IND_SIZE sizeof (dl_reply_status_ind_t)#define DL_REPLY_UPDATE_REQ_SIZE sizeof (dl_reply_update_req_t)#define DL_REPLY_UPDATE_STATUS_IND_SIZE sizeof (dl_reply_update_status_ind_t)#endif /* _SYS_DLPI_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -