45 lines
1.0 KiB
C
45 lines
1.0 KiB
C
#ifndef _ROAMING_RULES_H
|
|
#define _ROAMING_RULES_H
|
|
|
|
#include <sys/types.h>
|
|
|
|
#define MAX_RULES 2048
|
|
#define MAX_PREFIX_LEN 16
|
|
|
|
#define PLMN_NOT_ALLOWED 8
|
|
#define UNEXPECTED_DATA_VALUE 36
|
|
|
|
typedef enum RR_NVCS
|
|
{
|
|
NO_NVCS_DISABLE,
|
|
NO_NVCS_LU_ONLY, /* Only LU is allowed, no MO service */
|
|
NO_NVCS_BOTH, /* Both LU and MO service */
|
|
}_RR_NVCS;
|
|
|
|
typedef struct roaming_rule
|
|
{
|
|
u_char used_flag;
|
|
u_short id;
|
|
char prefix[MAX_PREFIX_LEN];
|
|
u_char lu_action;
|
|
u_char reject_cause;
|
|
int vlr_counter;
|
|
char no_voice_camel;
|
|
char no_sms_camel;
|
|
char smsc_camel_if;
|
|
char routing_home;
|
|
}_roaming_rule;
|
|
|
|
typedef struct roaming_rule_table
|
|
{
|
|
_roaming_rule roaming_rule[MAX_RULES];
|
|
}_roaming_rule_table;
|
|
|
|
int snmpSetRoamingRule(u_char oidlen,u_long *oid,u_char *pdata,u_short datalen);
|
|
int snmpGetRoamingRule(u_char oidlen,u_long *oid,u_char *pdata,u_char *vartype);
|
|
int xapGetRoamingRule(_roaming_rule *rr_ptr);
|
|
int xapGetSMSCamelFlag(char *vlr_number);
|
|
int saveRoamingRule();
|
|
|
|
#endif
|