init ems server code
This commit is contained in:
123
plat/pal/pal.h
Normal file
123
plat/pal/pal.h
Normal file
@@ -0,0 +1,123 @@
|
||||
#ifndef _PAL_H_
|
||||
#define _PAL_H_
|
||||
|
||||
#include "../public/src/include/public.h"
|
||||
|
||||
#define PROTO_AIF 0
|
||||
#define PROTO_ISUP 1
|
||||
#define PROTO_BICC 2
|
||||
#define PROTO_ISDN 3
|
||||
#define PROTO_TUP 4
|
||||
#define PROTO_SIP 5
|
||||
#define PROTO_MGC 6
|
||||
#define MAX_PROTO_TYPE 7
|
||||
|
||||
#define VARIANT_ITU 0
|
||||
#define VARIANT_ANSI 1
|
||||
#define VARIANT_ETSI 2
|
||||
#define VARIANT_UK 3
|
||||
#define VARIANT_QSIG 4
|
||||
|
||||
#define DUAL_SEIZURE_REATTEMPT 0 /* Re-attempt on detection of dual seizure */
|
||||
#define DUAL_SEIZURE_CONTINUE 1 /* Continue the call on detection of dual seizure */
|
||||
|
||||
#define CTRL_PLAT_0 0
|
||||
#define CTRL_PLAT_1 1
|
||||
|
||||
#define PAL_MAX_CALLBACK 64
|
||||
#define PAL_MAX_SAP 16
|
||||
#define PAL_MAX_CG 256
|
||||
#define PAL_MAX_CIRCUIT 256
|
||||
#define PAL_DOMAIN_LEN 32
|
||||
|
||||
typedef struct sap_attribute {
|
||||
void *event_handle[PAL_MAX_CALLBACK];
|
||||
} sap_attrib_struct;
|
||||
|
||||
/* Non-Facility Associated Signalling */
|
||||
struct nfas_info {
|
||||
u8 flag;
|
||||
u32 prim_link;
|
||||
u32 backup_link;
|
||||
};
|
||||
|
||||
typedef struct cg_attribute {
|
||||
u8 protocol;
|
||||
u8 variant;
|
||||
u8 priority; //0: re-attempt; 1: continue
|
||||
u8 network_id;
|
||||
u32 dpc;
|
||||
u32 opc;
|
||||
char dest_domain[PAL_DOMAIN_LEN]; //for sip
|
||||
char local_domain[PAL_DOMAIN_LEN]; //for sip
|
||||
struct nfas_info nfas;
|
||||
u32 tg_id;
|
||||
} cg_attrib_struct;
|
||||
|
||||
typedef struct circuit_attribute {
|
||||
u8 plat_id;
|
||||
u8 cic_range;
|
||||
u32 head_cic;
|
||||
u32 link_id; //for isdn
|
||||
u8 user_network_if; //for isdn
|
||||
u8 d_chnl; //for isdn
|
||||
} circuit_attrib_struct;
|
||||
|
||||
typedef struct pal_sap {
|
||||
u8 id;
|
||||
u8 enable;
|
||||
sap_attrib_struct attrib;
|
||||
} pal_sap_struct;
|
||||
|
||||
typedef struct pal_circuitgroup {
|
||||
u8 id;
|
||||
u8 enable;
|
||||
u8 sap_id;
|
||||
u8 circuit_num;
|
||||
cg_attrib_struct attrib;
|
||||
} pal_cg_struct;
|
||||
|
||||
typedef struct pal_circuit {
|
||||
u8 id;
|
||||
u8 enable;
|
||||
u8 cg_id;
|
||||
circuit_attrib_struct attrib;
|
||||
} pal_circuit_struct;
|
||||
|
||||
typedef struct _pst_struct
|
||||
{
|
||||
u16 cg_id;
|
||||
u32 tg_id;
|
||||
u32 cic;
|
||||
|
||||
u32 sp_proc_id;
|
||||
u32 su_proc_id;
|
||||
|
||||
int trace_flag;
|
||||
} Pst;
|
||||
|
||||
/* Upper layer interface */
|
||||
extern u8 *pal_version(void);
|
||||
extern char* pal_error(void);
|
||||
extern int pal_bind_sap(sap_attrib_struct *attrib);
|
||||
extern int pal_create_cg(u8 sap_id, cg_attrib_struct *attrib);
|
||||
extern int pal_delete_cg(int cg_id);
|
||||
extern int pal_modify_cg(int cg_id, cg_attrib_struct *attrib);
|
||||
extern int pal_create_circuit(int cg_id, circuit_attrib_struct *attrib);
|
||||
extern int pal_delete_circuit(int circuit_id);
|
||||
|
||||
/* Lower layer interface */
|
||||
extern void *pal_get_handler(u32 cg_id);
|
||||
extern const pal_sap_struct *pal_sap_ptr(u8 sap_id);
|
||||
extern const pal_cg_struct *pal_cg_ptr(u32 cg_id);
|
||||
extern const pal_circuit_struct *pal_circuit_ptr(u32 circuit_id);
|
||||
extern const pal_cg_struct *pal_ss7_find_cg(u8 ni, u32 dpc, u32 opc);
|
||||
extern const pal_cg_struct *pal_isdn_find_cg(u32 link_id);
|
||||
extern const pal_cg_struct *pal_sip_find_cg(char *domain, char *their_domain);
|
||||
extern const pal_circuit_struct *pal_locate_circuit(u32 cg_id, u32 cic);
|
||||
extern const pal_circuit_struct *pal_ss7_find_circuit(u8 ni, u32 dpc, u32 opc, u32 cic);
|
||||
extern const pal_circuit_struct *pal_isdn_find_circuit(u32 link_id, u32 cic);
|
||||
extern const pal_circuit_struct *pal_isdn_find_circuit_of_link(u32 link_id);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user