📄 isupi_ioctl.h
字号:
typedef struct isup_statem_sp { isup_timers_sp_t timers; cc_ulong tst_bind; cc_ulong mgm_bind; cc_ulong mnt_bind; cc_ulong icc_bind; cc_ulong ogc_bind[0]; /* followed by bound streams for outgoing calls */} isup_statem_sp_t;typedef struct isup_timers_mtp {} isup_timers_mtp_t;typedef struct isup_statem_mtp { isup_timers_mtp_t timers;} isup_statem_mtp_t;typedef struct isup_timers_df {} isup_timers_df_t;typedef struct isup_statem_df { isup_timers_df_t timers; cc_ulong tst_bind; cc_ulong mgm_bind; cc_ulong mnt_bind; cc_ulong icc_bind; cc_ulong ogc_bind[0]; /* followed by bound streams for outgoing calls */} isup_statem_df_t;typedef struct isup_statem { cc_ulong type; /* object type */ cc_ulong id; /* object id */ cc_ulong flags; /* object flags */ cc_ulong state; /* object state */ /* followed by object-specific state structure */} isup_statem_t;#define ISUP_IOCGSTATEM _IOWR( ISUP_IOC_MAGIC, 6, isup_statem_t )#define ISUP_IOCCMRESET _IOWR( ISUP_IOC_MAGIC, 7, isup_statem_t )/* * STATISTICS */typedef struct isup_stats { cc_ulong type; /* object type */ cc_ulong id; /* object id */ cc_ulong header; /* object stats header */} isup_stats_t;typedef struct isup_stats_ct { /* circuit stats */ cc_ulong ct_t17_expiry; /* Q.752 12.1 */ cc_ulong ct_rel_abnormal; /* Q.752 12.6 */ cc_ulong ct_unexpected_bla; /* Q.752 12.14 */ cc_ulong ct_unexpected_uba; /* Q.752 12.15 */ cc_ulong ct_t13_expiry; /* Q.752 12.16 */ cc_ulong ct_t15_expiry; /* Q.752 12.17 */ cc_ulong ct_bad_msg_format; /* Q.752 12.20 */ cc_ulong ct_unexpected_msg; /* Q.752 12.21 */ cc_ulong ct_rel_unrec_info; /* Q.752 12.22 */ cc_ulong ct_rel_problem; /* Q.752 12.23 */ cc_ulong ct_segm_discarded; cc_ulong ct_missing_ack_cgba;; /* Q.752 12.8 */ cc_ulong ct_missing_ack_cgua;; /* Q.752 12.9 */ cc_ulong ct_abnormal_ack_cgba;; /* Q.752 12.10 */ cc_ulong ct_abnormal_ack_cgua;; /* Q.752 12.11 */} isup_stats_ct_t;typedef struct isup_stats_cg { /* circuit stats */ cc_ulong ct_t17_expiry; /* Q.752 12.1 */ cc_ulong ct_t23_expiry; /* Q.752 12.2 */ cc_ulong ct_rel_abnormal; /* Q.752 12.6 */ cc_ulong ct_unexpected_bla; /* Q.752 12.14 */ cc_ulong ct_unexpected_uba; /* Q.752 12.15 */ cc_ulong ct_t13_expiry; /* Q.752 12.16 */ cc_ulong ct_t15_expiry; /* Q.752 12.17 */ cc_ulong ct_bad_msg_format; /* Q.752 12.20 */ cc_ulong ct_unexpected_msg; /* Q.752 12.21 */ cc_ulong ct_rel_unrec_info; /* Q.752 12.22 */ cc_ulong ct_rel_problem; /* Q.752 12.23 */ cc_ulong ct_segm_discarded; cc_ulong ct_missing_ack_cgba;; /* Q.752 12.8 */ cc_ulong ct_missing_ack_cgua;; /* Q.752 12.9 */ cc_ulong ct_abnormal_ack_cgba;; /* Q.752 12.10 */ cc_ulong ct_abnormal_ack_cgua;; /* Q.752 12.11 */ /* circuit group stats */ cc_ulong cg_unexpected_cgba; /* Q.752 12.12 */ cc_ulong cg_unexpected_cgua; /* Q.752 12.13 */ cc_ulong cg_t19_expiry; /* Q.752 12.18 */ cc_ulong cg_t21_expiry; /* Q.752 12.19 */ cc_ulong cg_t23_expiry;} isup_stats_cg_t;typedef struct isup_stats_tg { /* circuit stats */ cc_ulong ct_t17_expiry; /* Q.752 12.1 */ cc_ulong ct_t23_expiry; /* Q.752 12.2 */ cc_ulong ct_rel_abnormal; /* Q.752 12.6 */ cc_ulong ct_unexpected_bla; /* Q.752 12.14 */ cc_ulong ct_unexpected_uba; /* Q.752 12.15 */ cc_ulong ct_t13_expiry; /* Q.752 12.16 */ cc_ulong ct_t15_expiry; /* Q.752 12.17 */ cc_ulong ct_bad_msg_format; /* Q.752 12.20 */ cc_ulong ct_unexpected_msg; /* Q.752 12.21 */ cc_ulong ct_rel_unrec_info; /* Q.752 12.22 */ cc_ulong ct_rel_problem; /* Q.752 12.23 */ cc_ulong ct_segm_discarded; cc_ulong ct_missing_ack_cgba;; /* Q.752 12.8 */ cc_ulong ct_missing_ack_cgua;; /* Q.752 12.9 */ cc_ulong ct_abnormal_ack_cgba;; /* Q.752 12.10 */ cc_ulong ct_abnormal_ack_cgua;; /* Q.752 12.11 */ /* trunk group stats */ cc_ulong tg_dual_siezures;} isup_stats_tg_t;typedef struct isup_stats_sr { /* circuit stats */ cc_ulong ct_t17_expiry; /* Q.752 12.1 */ cc_ulong ct_t23_expiry; /* Q.752 12.2 */ cc_ulong ct_rel_abnormal; /* Q.752 12.6 */ cc_ulong ct_unexpected_bla; /* Q.752 12.14 */ cc_ulong ct_unexpected_uba; /* Q.752 12.15 */ cc_ulong ct_t13_expiry; /* Q.752 12.16 */ cc_ulong ct_t15_expiry; /* Q.752 12.17 */ cc_ulong ct_bad_msg_format; /* Q.752 12.20 */ cc_ulong ct_unexpected_msg; /* Q.752 12.21 */ cc_ulong ct_rel_unrec_info; /* Q.752 12.22 */ cc_ulong ct_rel_problem; /* Q.752 12.23 */ cc_ulong ct_segm_discarded; cc_ulong ct_missing_ack_cgba;; /* Q.752 12.8 */ cc_ulong ct_missing_ack_cgua;; /* Q.752 12.9 */ cc_ulong ct_abnormal_ack_cgba;; /* Q.752 12.10 */ cc_ulong ct_abnormal_ack_cgua;; /* Q.752 12.11 */ /* circuit group stats */ cc_ulong cg_unexpected_cgba; /* Q.752 12.12 */ cc_ulong cg_unexpected_cgua; /* Q.752 12.13 */ cc_ulong cg_t19_expiry; /* Q.752 12.18 */ cc_ulong cg_t21_expiry; /* Q.752 12.19 */ cc_ulong cg_t23_expiry; /* trunk group stats */ cc_ulong tg_dual_siezures; /* user part stats */ cc_ulong sr_up_unavailable; /* Q.752 10.4, 10.10 */ cc_ulong sr_up_congested; /* Q.752 10.7, 10.13 */ cc_ulong sr_unequipped_cic; /* message stats */ cc_ulong msgs_sent; /* Q.752 11.1 */ cc_ulong msgs_recv; /* Q.752 11.2 */ cc_ulong msgs_sent_by_type[256]; /* Q.752 11.1 */ cc_ulong msgs_recv_by_type[256]; /* Q.752 11.2 */} isup_stats_sr_t;typedef struct isup_stats_sp { /* circuit stats */ cc_ulong ct_t17_expiry; /* Q.752 12.1 */ cc_ulong ct_t23_expiry; /* Q.752 12.2 */ cc_ulong ct_rel_abnormal; /* Q.752 12.6 */ cc_ulong ct_unexpected_bla; /* Q.752 12.14 */ cc_ulong ct_unexpected_uba; /* Q.752 12.15 */ cc_ulong ct_t13_expiry; /* Q.752 12.16 */ cc_ulong ct_t15_expiry; /* Q.752 12.17 */ cc_ulong ct_bad_msg_format; /* Q.752 12.20 */ cc_ulong ct_unexpected_msg; /* Q.752 12.21 */ cc_ulong ct_rel_unrec_info; /* Q.752 12.22 */ cc_ulong ct_rel_problem; /* Q.752 12.23 */ cc_ulong ct_segm_discarded; cc_ulong ct_missing_ack_cgba;; /* Q.752 12.8 */ cc_ulong ct_missing_ack_cgua;; /* Q.752 12.9 */ cc_ulong ct_abnormal_ack_cgba;; /* Q.752 12.10 */ cc_ulong ct_abnormal_ack_cgua;; /* Q.752 12.11 */ /* circuit group stats */ cc_ulong cg_unexpected_cgba; /* Q.752 12.12 */ cc_ulong cg_unexpected_cgua; /* Q.752 12.13 */ cc_ulong cg_t19_expiry; /* Q.752 12.18 */ cc_ulong cg_t21_expiry; /* Q.752 12.19 */ cc_ulong cg_t23_expiry; /* trunk group stats */ cc_ulong tg_dual_siezures; /* user part stats */ cc_ulong sr_up_unavailable; /* Q.752 10.4, 10.10 */ cc_ulong sr_up_congested; /* Q.752 10.7, 10.13 */ cc_ulong sr_unequipped_cic; /* message stats */ cc_ulong msgs_sent; /* Q.752 11.1 */ cc_ulong msgs_recv; /* Q.752 11.2 */ cc_ulong msgs_sent_by_type[256]; /* Q.752 11.1 */ cc_ulong msgs_recv_by_type[256]; /* Q.752 11.2 */} isup_stats_sp_t;typedef struct isup_stats_mtp {} isup_stats_mtp_t;typedef struct isup_stats_df { /* circuit stats */ cc_ulong ct_t17_expiry; /* Q.752 12.1 */ cc_ulong ct_t23_expiry; /* Q.752 12.2 */ cc_ulong ct_rel_abnormal; /* Q.752 12.6 */ cc_ulong ct_unexpected_bla; /* Q.752 12.14 */ cc_ulong ct_unexpected_uba; /* Q.752 12.15 */ cc_ulong ct_t13_expiry; /* Q.752 12.16 */ cc_ulong ct_t15_expiry; /* Q.752 12.17 */ cc_ulong ct_bad_msg_format; /* Q.752 12.20 */ cc_ulong ct_unexpected_msg; /* Q.752 12.21 */ cc_ulong ct_rel_unrec_info; /* Q.752 12.22 */ cc_ulong ct_rel_problem; /* Q.752 12.23 */ cc_ulong ct_segm_discarded; cc_ulong ct_missing_ack_cgba;; /* Q.752 12.8 */ cc_ulong ct_missing_ack_cgua;; /* Q.752 12.9 */ cc_ulong ct_abnormal_ack_cgba;; /* Q.752 12.10 */ cc_ulong ct_abnormal_ack_cgua;; /* Q.752 12.11 */ /* circuit group stats */ cc_ulong cg_unexpected_cgba; /* Q.752 12.12 */ cc_ulong cg_unexpected_cgua; /* Q.752 12.13 */ cc_ulong cg_t19_expiry; /* Q.752 12.18 */ cc_ulong cg_t21_expiry; /* Q.752 12.19 */ cc_ulong cg_t23_expiry; /* trunk group stats */ cc_ulong tg_dual_siezures; /* message stats */ cc_ulong msgs_sent; /* Q.752 11.1 */ cc_ulong msgs_recv; /* Q.752 11.2 */ cc_ulong msgs_sent_by_type[256]; /* Q.752 11.1 */ cc_ulong msgs_recv_by_type[256]; /* Q.752 11.2 */} isup_stats_df_t;#define ISUP_IOCGSTATSP _IOWR( ISUP_IOC_MAGIC, 8, isup_stats_t )#define ISUP_IOCSSTATSP _IOWR( ISUP_IOC_MAGIC, 9, isup_stats_t )#define ISUP_IOCGSTATS _IOWR( ISUP_IOC_MAGIC, 10, isup_stats_t )#define ISUP_IOCCSTATS _IOWR( ISUP_IOC_MAGIC, 11, isup_stats_t )/* * EVENTS */#define ISUP_EVENT_ISUP_UNAVAIL_FAILURE 0x00000001UL /* Q.752 10.1, 10.8 on occrence */#define ISUP_EVENT_ISUP_UNAVAIL_BLOCKED 0x00000002UL /* Q.752 10.2 on occrence */#define ISUP_EVENT_ISUP_AVAIL 0x00000004UL /* Q.752 10.3, 10.9 on occrence */#define ISUP_EVENT_ISUP_CONG 0x00000008UL /* Q.752 10.5, 10.11 on occrence */#define ISUP_EVENT_ISUP_CONG_CEASED 0x00000010UL /* Q.752 10.6, 10.12 on occrence */#define ISUP_EVENT_T17_TIMEOUT 0x00000020UL /* Q.752 12.1 1st and delta */#define ISUP_EVENT_T23_TIMEOUT 0x00000040UL /* Q.752 12.2 1st and delta */#define ISUP_EVENT_T5_TIMEOUT 0x00000080UL /* Q.752 12.5 on occrence */#define ISUP_EVENT_ABNORMAL_RELEASE 0x00000100UL /* Q.752 12.6 1st and delta */#define ISUP_EVENT_HARDWARE_BLOCKING 0x00000200UL /* Q.752 12.7 on occrence */#define ISUP_EVENT_MISSING_ACK_IN_CGBA 0x00000400UL /* Q.752 12.8 1st and delta */#define ISUP_EVENT_MISSING_ACK_IN_CGUA 0x00000800UL /* Q.752 12.9 1st and delta */#define ISUP_EVENT_ABNORMAL_ACK_IN_CGBA 0x00001000UL /* Q.752 12.10 1st and delta */#define ISUP_EVENT_ABNORMAL_ACK_IN_CGUA 0x00002000UL /* Q.752 12.11 1st and delta */#define ISUP_EVENT_UNEXPECTED_CGBA 0x00004000UL /* Q.752 12.12 1st and delta */#define ISUP_EVENT_UNEXPECTED_CGUA 0x00008000UL /* Q.752 12.13 1st and delta */#define ISUP_EVENT_UNEXPECTED_BLA 0x00010000UL /* Q.752 12.14 1st and delta */#define ISUP_EVENT_UNEXPECTED_UBA 0x00020000UL /* Q.752 12.15 1st and delta */#define ISUP_EVENT_T13_TIMEOUT 0x00040000UL /* Q.752 12.16 1st and delta */#define ISUP_EVENT_T15_TIMEOUT 0x00080000UL /* Q.752 12.17 1st and delta */#define ISUP_EVENT_T19_TIMEOUT 0x00100000UL /* Q.752 12.18 1st and delta */#define ISUP_EVENT_T21_TIMEOUT 0x00200000UL /* Q.752 12.19 1st and delta */#define ISUP_EVENT_MESSAGE_FORMAT_ERROR 0x00400000UL /* Q.752 12.20 1st and delta */#define ISUP_EVENT_UNEXPECTED_MESSAGE 0x00800000UL /* Q.752 12.21 1st and delta */#define ISUP_EVENT_RELEASE_UNREC_INFO 0x01000000UL /* Q.752 12.22 1st and delta */#define ISUP_EVENT_RELEAWE_FAILURE 0x02000000UL /* Q.752 12.23 1st and delta */#define ISUP_EVENT_CT_MASK ( \ ISUP_EVENT_T17_TIMEOUT | \ ISUP_EVENT_T23_TIMEOUT | \ ISUP_EVENT_T5_TIMEOUT | \ ISUP_EVENT_ABNORMAL_RELEASE | \ ISUP_EVENT_HARDWARE_BLOCKING | \ ISUP_EVENT_UNEXPECTED_BLA | \ ISUP_EVENT_UNEXPECTED_UBA | \ ISUP_EVENT_T13_TIMEOUT | \ ISUP_EVENT_T15_TIMEOUT | \ ISUP_EVENT_T19_TIMEOUT | \ ISUP_EVENT_T21_TIMEOUT | \ ISUP_EVENT_MESSAGE_FORMAT_ERROR | \ ISUP_EVENT_UNEXPECTED_MESSAGE | \ ISUP_EVENT_RELEASE_UNREC_INFO | \ ISUP_EVENT_RELEAWE_FAILURE )#define ISUP_EVENT_CG_MASK ( \ ISUP_EVENT_CT_MASK | \ ISUP_EVENT_MISSING_ACK_IN_CGBA | \ ISUP_EVENT_MISSING_ACK_IN_CGUA | \ ISUP_EVENT_ABNORMAL_ACK_IN_CGBA | \ ISUP_EVENT_ABNORMAL_ACK_IN_CGUA | \ ISUP_EVENT_UNEXPECTED_CGBA | \ ISUP_EVENT_UNEXPECTED_CGUA )#define ISUP_EVENT_TG_MASK ( \ ISUP_EVENT_CT_MASK \ ISUP_EVENT_CG_MASK )#define ISUP_EVENT_SR_MASK ( ( \ ISUP_EVENT_ISUP_UNAVAIL_FAILURE | \ ISUP_EVENT_ISUP_UNAVAIL_BLOCKED | \ ISUP_EVENT_ISUP_AVAIL | \ ISUP_EVENT_ISUP_CONG | \ ISUP_EVENT_ISUP_CONG_CEASED ) | \ ISUP_EVENT_TG_MASK )#define ISUP_EVENT_SP_MASK ( \ ISUP_EVENT_SR_MASK )#define ISUP_EVENT_DF_MASK ( \ ISUP_EVENT_SP_MASK )typedef struct isup_notify { cc_ulong type; /* object type */ cc_ulong id; /* object id */ lmi_notify_t notify; /* notifications */} isup_notify_t;#define ISUP_IOCGNOTIFY _IOR( ISUP_IOC_MAGIC, 12, isup_notify_t )#define ISUP_IOCSNOTIFY _IOW( ISUP_IOC_MAGIC, 13, isup_notify_t )#define ISUP_IOCCNOTIFY _IOW( ISUP_IOC_MAGIC, 14, isup_notify_t )/* 10.1 (Event:On occur) Start of local ISDN-UP unavailable - failure 10.2 (Event:On occur) Start of local ISDN-UP unavailable - maint made busy 10.3 (Event:On occur) ISDN-UP available 10.4 (s:30min) Total duration ISDN-UP unavailable 10.5 (Event:On occur) Start of local ISDN-UP congestion 10.6 (Event:On occur) Stop of local ISDN-UP congestion 10.7 (s:30min) Duration of local ISDN-UP congestion 10.8 (Event/dest:On occur) Start of remote ISDN-UP unavailable 10.9 (Event/dest:On occur) Stop of remote ISDN-UP unavailable 10.10 (s/dest:30min) Duration of remote ISDN-UP unavailable 10.11 (Event/dest:On occur) Start of remote ISDN-UP congestion 10.12 (Event/dest:On occur) Stop of remote ISDN-UP congestion 10.13 (s/dest:30min) Duration of remote ISDN-UP congestion 11.1 (Msgs/type:5/30min) Total ISDN-UP messages sent (by type) 11.2 (Msgs/type:5/30min) Total ISDN-UP messages received (by type) 12.1 (Event/CIC/dest:1+d) No acknowledgement for circuit reset with T17 12.2 (Event/CIC/dest:1+d) No GRA reeived for GRS within T23 12.3 - 12.4 - 12.5 (Event/CIC/dest:On occur) RLC not received within T5 12.6 (Event/CIC/dest:1+d) Release initiated due to abnormal conditions 12.7 (Event/CIC/dest:On occur) Circuit BLO (excessive errors detected by CRC) 12.8 (Event/CIC/dest:1+d) Missing blocking acknowledgement in CGBA for previous CGB 12.9 (Event/CIC/dest:1+d) Missing unblocking acknowledgement in CGUA for previous CGU 12.10 (Event/CIC/dest:1+d) Abnormal blocking acknowledgement in CGBA for prevous CGB 12.11 (Event/CIC/dest:1+d) Abnormal unblocking acknowledgement in CGUA for previous CGU 12.12 (Event/CIC/dest:1+d) Unexpected CGBA with abnormal blocking acknowledgement 12.13 (Event/CIC/dest:1+d) Unexpected CGUA with abnormal unblocking acknowledgement 12.14 (Event/CIC/dest:1+d) Unexpected BLA with abnormal blocking acknowledgement 12.15 (Event/CIC/dest:1+d) Unexpected UBA with abnormal unblocking acknowledgement 12.16 (Event/CIC/dest:1+d) No BLA received for BLO within T13 12.17 (Event/CIC/dest:1+d) No UBA received for UBL within T15 12.18 (Event/CIC/dest:1+d) No CGBA received for CGB within T19 12.19 (Event/CIC/dest:1+d) No CGUA received for CGU within T21 12.20 (Event/CIC/dest:1+d) Message format error 12.21 (Event/CIC/dest:1+d) Unexpected message received 12.22 (Event/CIC/dest:1+d) Release due to unrecognized info. 12.23 (Event/CIC:1+d) Inability to release a circuit *//* * ISUP MANAGEMENT */typedef struct isup_mgmt { cc_ulong type; /* object type */ cc_ulong id; /* object id */ cc_ulong cmd; /* command */} isup_mgmt_t;#define ISUP_MGMT_BLOCK 1#define ISUP_MGMT_UNBLOCK 2#define ISUP_MGMT_RESET 3#define ISUP_MGMT_QUERY 4#define ISUP_IOCCMGMT _IOWR( ISUP_IOC_MAGIC, 15, isup_mgmt_t )/* * CONTROL LOWER */typedef struct isup_pass { cc_ulong muxid; /* mux index of lower MTP to pass message to */ cc_ulong type; /* type of message block */ cc_ulong band; /* band of message block */ cc_ulong ctl_length; /* length of cntl part */ cc_ulong dat_length; /* length of data part */ /* followed by cntl and data part of message to pass to MTP */} isup_pass_t;#define ISUP_IOCCPASS _IOWR( ISUP_IOC_MAGIC, 16, isup_pass_t )#define ISUP_IOC_FIRST 0#define ISUP_IOC_LAST 16#define ISUP_IOC_PRIVATE 32#endif /* __ISUPI_IOCTL_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -