Description: Code
#ifndef __SCCPI_IOCTL_H__
#define __SCCPI_IOCTL_H__
#ident "@(#) sccpi_ioctl.h,v openss7-0_9_2_G(0.9.2.7) Copyright (c) 2001-2008 OpenSS7 Corporation."
#include <linux/ioctl.h>
#define SCCP_IOC_MAGIC 's'
#define SCCP_OBJ_TYPE_DF 0
#define SCCP_OBJ_TYPE_SC 1
#define SCCP_OBJ_TYPE_NA 2
#define SCCP_OBJ_TYPE_CP 3
#define SCCP_OBJ_TYPE_SS 4
#define SCCP_OBJ_TYPE_RS 5
#define SCCP_OBJ_TYPE_SR 6
#define SCCP_OBJ_TYPE_SP 7
#define SCCP_OBJ_TYPE_MT 8
#ifdef __KERNEL__
typedef mblk_t *sccp_timer_t;
#else
typedef unsigned long sccp_timer_t;
#endif
typedef struct sccp_opt_conf_mt {
} sccp_opt_conf_mt_t;
typedef struct sccp_opt_conf_sp {
np_ulong tgtt;
} sccp_opt_conf_sp_t;
typedef struct sccp_opt_conf_sr {
np_ulong tattack;
np_ulong tdecay;
np_ulong tstatinfo;
np_ulong tsst;
} sccp_opt_conf_sr_t;
typedef struct sccp_opt_conf_rs {
np_ulong tsst;
} sccp_opt_conf_rs_t;
typedef struct sccp_opt_conf_cp {
} sccp_opt_conf_cp_t;
typedef struct sccp_opt_conf_ss {
np_ulong tisst;
np_ulong twsog;
} sccp_opt_conf_ss_t;
typedef struct sccp_opt_conf_na {
} sccp_opt_conf_na_t;
typedef struct sccp_opt_conf_sc {
np_ulong tcon;
np_ulong tias;
np_ulong tiar;
np_ulong trel;
np_ulong trel2;
np_ulong tint;
np_ulong tguard;
np_ulong tres;
np_ulong trea;
np_ulong tack;
} sccp_opt_conf_sc_t;
typedef struct sccp_opt_conf_df {
} sccp_opt_conf_df_t;
typedef union sccp_opt_conf_obj {
struct sccp_opt_conf_df df;
struct sccp_opt_conf_sc sc;
struct sccp_opt_conf_na na;
struct sccp_opt_conf_cp cp;
struct sccp_opt_conf_ss ss;
struct sccp_opt_conf_rs rs;
struct sccp_opt_conf_sr sr;
struct sccp_opt_conf_sp sp;
struct sccp_opt_conf_mt mt;
} sccp_opt_conf_obj_t;
typedef struct sccp_option {
np_ulong type;
np_ulong id;
sccp_opt_conf_obj_t options[0];
} sccp_option_t;
#define SCCP_IOCGOPTION _IOWR( SCCP_IOC_MAGIC, 0, sccp_option_t )
#define SCCP_IOCSOPTION _IOWR( SCCP_IOC_MAGIC, 1, sccp_option_t )
typedef struct sccp_conf_mt {
int muxid;
np_ulong spid;
np_ulong srid;
lmi_option_t proto;
} sccp_conf_mt_t;
typedef struct sccp_conf_sp {
np_ulong naid;
struct mtp_addr add;
lmi_option_t proto;
} sccp_conf_sp_t;
typedef struct sccp_conf_sr {
np_ulong spid;
struct mtp_addr add;
lmi_option_t proto;
} sccp_conf_sr_t;
typedef struct sccp_conf_rs {
np_ulong srid;
np_ulong ssn;
} sccp_conf_rs_t;
typedef struct sccp_conf_cp {
} sccp_conf_cp_t;
typedef struct sccp_conf_ss {
np_ulong spid;
np_ulong ssn;
} sccp_conf_ss_t;
typedef struct sccp_conf_na {
lmi_option_t proto;
} sccp_conf_na_t;
typedef struct sccp_conf_sc {
} sccp_conf_sc_t;
typedef struct sccp_conf_df {
lmi_option_t proto;
} sccp_conf_df_t;
typedef union sccp_conf_obj {
struct sccp_conf_df df;
struct sccp_conf_sc sc;
struct sccp_conf_na na;
struct sccp_conf_cp cp;
struct sccp_conf_ss ss;
struct sccp_conf_rs rs;
struct sccp_conf_sr sr;
struct sccp_conf_sp sp;
struct sccp_conf_mt mt;
} sccp_conf_obj_t;
typedef struct sccp_config {
np_ulong type;
np_ulong id;
np_ulong cmd;
sccp_conf_obj_t config[0];
} sccp_config_t;
#define SCCP_GET 0
#define SCCP_ADD 1
#define SCCP_CHA 2
#define SCCP_DEL 3
#define SCCP_IOCGCONFIG _IOWR( SCCP_IOC_MAGIC, 2, sccp_config_t )
#define SCCP_IOCSCONFIG _IOWR( SCCP_IOC_MAGIC, 3, sccp_config_t )
#define SCCP_IOCTCONFIG _IOWR( SCCP_IOC_MAGIC, 4, sccp_config_t )
#define SCCP_IOCCCONFIG _IOWR( SCCP_IOC_MAGIC, 5, sccp_config_t )
typedef struct sccp_timers_mt {
} sccp_timers_mt_t;
typedef struct sccp_statem_mt {
struct sccp_timers_mt timers;
} sccp_statem_mt_t;
typedef struct sccp_timers_sp {
sccp_timer_t tgtt;
} sccp_timers_sp_t;
typedef struct sccp_statem_sp {
struct sccp_timers_sp timers;
} sccp_statem_sp_t;
typedef struct sccp_timers_sr {
sccp_timer_t tattack;
sccp_timer_t tdecay;
sccp_timer_t tstatinfo;
sccp_timer_t tsst;
} sccp_timers_sr_t;
typedef struct sccp_statem_sr {
struct sccp_timers_sr timers;
} sccp_statem_sr_t;
typedef struct sccp_timers_rs {
sccp_timer_t tsst;
} sccp_timers_rs_t;
typedef struct sccp_statem_rs {
struct sccp_timers_rs timers;
} sccp_statem_rs_t;
typedef struct sccp_timers_cp {
} sccp_timers_cp_t;
typedef struct sccp_statem_cp {
struct sccp_timers_cp timers;
} sccp_statem_cp_t;
typedef struct sccp_timers_ss {
sccp_timer_t tisst;
sccp_timer_t twsog;
} sccp_timers_ss_t;
typedef struct sccp_statem_ss {
struct sccp_timers_ss timers;
} sccp_statem_ss_t;
typedef struct sccp_timers_na {
} sccp_timers_na_t;
typedef struct sccp_statem_na {
struct sccp_timers_na timers;
} sccp_statem_na_t;
typedef struct sccp_timers_sc {
sccp_timer_t tcon;
sccp_timer_t tias;
sccp_timer_t tiar;
sccp_timer_t trel;
sccp_timer_t trel2;
sccp_timer_t tint;
sccp_timer_t tguard;
sccp_timer_t tres;
sccp_timer_t trea;
sccp_timer_t tack;
} sccp_timers_sc_t;
typedef struct sccp_statem_sc {
struct sccp_timers_sc timers;
} sccp_statem_sc_t;
typedef struct sccp_timers_df {
} sccp_timers_df_t;
typedef struct sccp_statem_df {
struct sccp_timers_df timers;
} sccp_statem_df_t;
typedef union sccp_statem_obj {
struct sccp_statem_df df;
struct sccp_statem_sc sc;
struct sccp_statem_na na;
struct sccp_statem_cp cp;
struct sccp_statem_ss ss;
struct sccp_statem_rs rs;
struct sccp_statem_sr sr;
struct sccp_statem_sp sp;
struct sccp_statem_mt mt;
} sccp_statem_obj_t;
typedef struct sccp_statem {
np_ulong type;
np_ulong id;
np_ulong flags;
np_ulong state;
sccp_statem_obj_t statem[0];
} sccp_statem_t;
#define SCCP_IOCGSTATEM _IOWR( SCCP_IOC_MAGIC, 6, sccp_statem_t )
#define SCCP_IOCCMRESET _IOWR( SCCP_IOC_MAGIC, 7, sccp_statem_t )
typedef struct sccp_stats_mt {
} sccp_stats_mt_t;
typedef struct sccp_stats_sp {
} sccp_stats_sp_t;
typedef struct sccp_stats_sr {
} sccp_stats_sr_t;
typedef struct sccp_stats_rs {
} sccp_stats_rs_t;
typedef struct sccp_stats_cp {
} sccp_stats_cp_t;
typedef struct sccp_stats_ss {
} sccp_stats_ss_t;
typedef struct sccp_stats_na {
} sccp_stats_na_t;
typedef struct sccp_stats_sc {
} sccp_stats_sc_t;
typedef struct sccp_stats_df {
} sccp_stats_df_t;
typedef union sccp_stats_obj {
struct sccp_stats_df df;
struct sccp_stats_sc sc;
struct sccp_stats_na na;
struct sccp_stats_cp cp;
struct sccp_stats_ss ss;
struct sccp_stats_rs rs;
struct sccp_stats_sr sr;
struct sccp_stats_sp sp;
struct sccp_stats_mt mt;
} sccp_stats_obj_t;
typedef struct sccp_stats {
np_ulong type;
np_ulong id;
np_ulong header;
sccp_stats_obj_t stats[0];
} sccp_stats_t;
#define SCCP_IOCGSTATSP _IOWR( SCCP_IOC_MAGIC, 8, sccp_stats_t )
#define SCCP_IOCSSTATSP _IOWR( SCCP_IOC_MAGIC, 9, sccp_stats_t )
#define SCCP_IOCGSTATS _IOWR( SCCP_IOC_MAGIC, 10, sccp_stats_t )
#define SCCP_IOCCSTATS _IOWR( SCCP_IOC_MAGIC, 11, sccp_stats_t )
typedef struct sccp_notify_mt {
np_ulong events;
} sccp_notify_mt_t;
typedef struct sccp_notify_sp {
np_ulong events;
} sccp_notify_sp_t;
typedef struct sccp_notify_sr {
np_ulong events;
} sccp_notify_sr_t;
typedef struct sccp_notify_rs {
np_ulong events;
} sccp_notify_rs_t;
typedef struct sccp_notify_cp {
np_ulong events;
} sccp_notify_cp_t;
typedef struct sccp_notify_ss {
np_ulong events;
} sccp_notify_ss_t;
typedef struct sccp_notify_na {
np_ulong events;
} sccp_notify_na_t;
typedef struct sccp_notify_sc {
np_ulong events;
} sccp_notify_sc_t;
typedef struct sccp_notify_df {
np_ulong events;
} sccp_notify_df_t;
typedef union sccp_notify_obj {
struct sccp_notify_df df;
struct sccp_notify_sc sc;
struct sccp_notify_na na;
struct sccp_notify_cp cp;
struct sccp_notify_ss ss;
struct sccp_notify_rs rs;
struct sccp_notify_sr sr;
struct sccp_notify_sp sp;
struct sccp_notify_mt mt;
} sccp_notify_obj_t;
typedef struct sccp_notify {
np_ulong type;
np_ulong id;
sccp_notify_obj_t notify[0];
} sccp_notify_t;
#define SCCP_IOCGNOTIFY _IOWR( SCCP_IOC_MAGIC, 12, sccp_notify_t )
#define SCCP_IOCSNOTIFY _IOWR( SCCP_IOC_MAGIC, 13, sccp_notify_t )
#define SCCP_IOCCNOTIFY _IOWR( SCCP_IOC_MAGIC, 14, sccp_notify_t )
typedef struct sccp_mgmt {
np_ulong type;
np_ulong id;
np_ulong cmd;
} sccp_mgmt_t;
#define SCCP_MGMT_ALLOW 0
#define SCCP_MGMT_RESTRICT 1
#define SCCP_MGMT_PROHIBIT 2
#define SCCP_MGMT_ACTIVATE 3
#define SCCP_MGMT_DEACTIVATE 4
#define SCCP_MGMT_BLOCK 5
#define SCCP_MGMT_UNBLOCK 6
#define SCCP_MGMT_INHIBIT 7
#define SCCP_MGMT_UNINHIBIT 8
#define SCCP_MGMT_CONGEST 9
#define SCCP_MGMT_UNCONGEST 10
#define SCCP_MGMT_DANGER 11
#define SCCP_MGMT_NODANGER 12
#define SCCP_MGMT_RESTART 13
#define SCCP_MGMT_RESTARTED 14
#define SCCP_IOCCMGMT _IOW( SCCP_IOC_MAGIC, 15, sccp_mgmt_t )
typedef struct sccp_pass {
np_ulong muxid;
np_ulong type;
np_ulong band;
np_ulong ctl_length;
np_ulong dat_length;
} sccp_pass_t;
#define SCCP_IOCCPASS _IOW( SCCP_IOC_MAGIC, 16, sccp_pass_t )
#define SCCP_IOC_FIRST 0
#define SCCP_IOC_LAST 16
#define SCCP_IOC_PRIVATE 32
#endif