Description: Code
#ifndef __M2UA_IOCTL_H__
#define __M2UA_IOCTL_H__
#ident "@(#) m2ua_ioctl.h,v openss7-0_9_2_G(0.9.2.7) Copyright (c) 2001-2008 OpenSS7 Corporation."
#define M2UA_IOC_MAGIC '2'
#define M2UA_OBJ_TYPE_LM 0
#define M2UA_OBJ_TYPE_AS_U 1
#define M2UA_OBJ_TYPE_AS_P 2
#define M2UA_OBJ_TYPE_SP 3
#define M2UA_OBJ_TYPE_SG 4
#define M2UA_OBJ_TYPE_SPP 5
#define M2UA_OBJ_TYPE_ASP 6
#define M2UA_OBJ_TYPE_SGP 7
#define M2UA_OBJ_TYPE_SL_U 8
#define M2UA_OBJ_TYPE_SL_P 9
#define M2UA_OBJ_TYPE_XP_SCTP 10
#define M2UA_OBJ_TYPE_XP_TCP 11
#define M2UA_OBJ_TYPE_XP_SSCOP 12
#define M2UA_OBJ_TYPE_DF 13
typedef struct m2ua_addr {
lmi_ulong spid;
ushort sdti;
ushort sdli;
} m2ua_addr_t;
typedef struct m2ua_opt_conf_as {
lmi_ulong tack;
} m2ua_opt_conf_as_t;
typedef struct m2ua_opt_conf_sp {
lmi_ulong tack;
lmi_ulong tbeat;
lmi_ulong tidle;
} m2ua_opt_conf_sp_t;
typedef struct m2ua_opt_conf_spp {
lmi_ulong tack;
} m2ua_opt_conf_spp_t;
typedef struct m2ua_opt_conf_sl {
lmi_ulong tack;
} m2ua_opt_conf_sl_t;
typedef struct m2ua_opt_conf_xp {
lmi_ulong tack;
} m2ua_opt_conf_xp_t;
typedef struct m2ua_opt_conf_df {
} m2ua_opt_conf_df_t;
typedef struct m2ua_option {
lmi_ulong type;
lmi_ulong id;
} m2ua_option_t;
#define M2UA_IOCGOPTIONS _IOR( M2UA_IOC_MAGIC, 0, m2ua_option_t )
#define M2UA_IOCSOPTIONS _IOW( M2UA_IOC_MAGIC, 1, m2ua_option_t )
typedef struct m2ua_conf_as {
lmi_ulong spid;
lmi_ulong iid;
m2ua_addr_t add;
} m2ua_conf_as_t;
typedef struct m2ua_conf_sp {
lmi_ulong spid;
lmi_ulong cost;
lmi_ulong tmode;
} m2ua_conf_sp_t;
typedef struct m2ua_conf_spp {
lmi_ulong spid;
lmi_ulong aspid;
lmi_ulong cost;
} m2ua_conf_spp_t;
typedef struct m2ua_conf_sl {
lmi_ulong asid;
lmi_ulong muxid;
lmi_ulong iid;
m2ua_addr_t add;
lmi_option_t proto;
} m2ua_conf_sl_t;
typedef struct m2ua_conf_xp {
lmi_ulong sppid;
lmi_ulong spid;
lmi_ulong muxid;
} m2ua_conf_xp_t;
typedef struct m2ua_conf_df {
lmi_option_t proto;
} m2ua_conf_df_t;
typedef struct m2ua_config {
lmi_ulong type;
lmi_ulong id;
lmi_ulong cmd;
} m2ua_config_t;
#define M2UA_GET 0
#define M2UA_ADD 1
#define M2UA_CHA 2
#define M2UA_DEL 3
#define M2UA_IOCGCONFIG _IOWR( M2UA_IOC_MAGIC, 2, m2ua_config_t )
#define M2UA_IOCSCONFIG _IOWR( M2UA_IOC_MAGIC, 3, m2ua_config_t )
#define M2UA_IOCTCONFIG _IOWR( M2UA_IOC_MAGIC, 4, m2ua_config_t )
#define M2UA_IOCCCONFIG _IOWR( M2UA_IOC_MAGIC, 5, m2ua_config_t )
typedef struct m2ua_timers_as {
lmi_ulong tack;
} m2ua_timers_as_t;
typedef struct m2ua_statem_as {
m2ua_timers_as_t timers;
lmi_ulong as_numb;
lmi_ulong spp_numb;
} m2ua_statem_as_t;
typedef struct m2ua_timers_sp {
lmi_ulong tack;
} m2ua_timers_sp_t;
typedef struct m2ua_statem_sp {
m2ua_timers_sp_t timers;
lmi_ulong sp_numb;
} m2ua_statem_sp_t;
typedef struct m2ua_timers_spp {
lmi_ulong tack;
lmi_ulong tbeat;
lmi_ulong tidle;
} m2ua_timers_spp_t;
typedef struct m2ua_statem_spp {
m2ua_timers_spp_t timers;
lmi_ulong as_numb;
} m2ua_statem_spp_t;
typedef struct m2ua_timers_sl {
lmi_ulong tack;
} m2ua_timers_sl_t;
typedef struct m2ua_statem_sl {
m2ua_timers_sl_t timers;
} m2ua_statem_sl_t;
typedef struct m2ua_timers_xp {
lmi_ulong tack;
} m2ua_timers_xp_t;
typedef struct m2ua_statem_xp {
m2ua_timers_xp_t timers;
} m2ua_statem_xp_t;
typedef struct m2ua_timers_df {
} m2ua_timers_df_t;
typedef struct m2ua_statem_df {
m2ua_timers_df_t timers;
} m2ua_statem_df_t;
typedef struct m2ua_statem {
lmi_ulong type;
lmi_ulong id;
lmi_ulong flags;
lmi_ulong state;
} m2ua_statem_t;
#define M2UA_IOCGSTATEM _IOWR( M2UA_IOC_MAGIC, 6, m2ua_statem_t )
#define M2UA_IOCCMRESET _IOWR( M2UA_IOC_MAGIC, 7, m2ua_statem_t )
typedef struct m2ua_stats_as {
} m2ua_stats_as_t;
typedef struct m2ua_stats_sp {
} m2ua_stats_sp_t;
typedef struct m2ua_stats_spp {
} m2ua_stats_spp_t;
typedef struct m2ua_stats_sl {
} m2ua_stats_sl_t;
typedef struct m2ua_stats_xp {
} m2ua_stats_xp_t;
typedef struct m2ua_stats_df {
} m2ua_stats_df_t;
typedef struct m2ua_stats {
lmi_ulong type;
lmi_ulong id;
lmi_ulong header;
} m2ua_stats_t;
#define M2UA_IOCGSTATSP _IOWR( M2UA_IOC_MAGIC, 8, m2ua_stats_t )
#define M2UA_IOCSSTATSP _IOWR( M2UA_IOC_MAGIC, 9, m2ua_stats_t )
#define M2UA_IOCGSTATS _IOWR( M2UA_IOC_MAGIC, 10, m2ua_stats_t )
#define M2UA_IOCCSTATS _IOWR( M2UA_IOC_MAGIC, 11, m2ua_stats_t )
typedef struct m2ua_notify {
lmi_ulong type;
lmi_ulong id;
lmi_notify_t notify;
} m2ua_notify_t;
#define M2UA_IOCGNOTIFY _IOR( M2UA_IOC_MAGIC, 12, m2ua_notify_t )
#define M2UA_IOCSNOTIFY _IOR( M2UA_IOC_MAGIC, 13, m2ua_notify_t )
#define M2UA_IOCCNOTIFY _IOR( M2UA_IOC_MAGIC, 14, m2ua_notify_t )
typedef struct m2ua_mgmt {
lmi_ulong type;
lmi_ulong id;
lmi_ulong cmd;
} m2ua_mgmt_t;
#define M2UA_MGMT_UP 1
#define M2UA_MGMT_DOWN 2
#define M2UA_MGMT_ACTIVATE 3
#define M2UA_MGMT_DEACTIVATE 4
#define M2UA_MGMT_UP_BLOCK 5
#define M2UA_MGMT_UP_UNBLOCK 6
#define M2UA_MGMT_ACT_BLOCK 7
#define M2UA_MGMT_ACT_UNBLOCK 8
#define M2UA_IOCCMGMT _IOWR( M2UA_IOC_MAGIC, 15, m2ua_mgmt_t )
typedef struct m2ua_pass {
lmi_ulong muxid;
lmi_ulong type;
lmi_ulong band;
lmi_ulong ctl_length;
lmi_ulong dat_length;
} m2ua_pass_t;
#define M2UA_IOCCPASS _IOWR( M2UA_IOC_MAGIC, 16, m2ua_pass_t )
#define M2UA_IOC_FIRST 0
#define M2UA_IOC_LAST 16
#define M2UA_IOC_PRIVATE 32
#endif