init ems server code
This commit is contained in:
643
plat/public/src/include/omc_public.h
Normal file
643
plat/public/src/include/omc_public.h
Normal file
@@ -0,0 +1,643 @@
|
||||
|
||||
/************************************************************************/
|
||||
/* Title: omc_public.h */
|
||||
/* Desc: Public variables def for PACS OMC Project. */
|
||||
/* Author: Meng Xiaozhen */
|
||||
/* CrtDate: 2000-08-16 */
|
||||
/* AltDate: 2001-06-21 */
|
||||
/* CVS: $Id: omc_public.h,v 1.1 2000/08/03 01:09:33 mengxz Exp $ */
|
||||
/************************************************************************/
|
||||
#ifndef OMC_PUBLIC__H
|
||||
#define OMC_PUBLIC__H
|
||||
|
||||
#ifndef PUBLIC__H
|
||||
#include "public.h"
|
||||
#endif
|
||||
|
||||
#ifndef IPTRANS__H
|
||||
#include "iptrans.h"
|
||||
#endif
|
||||
|
||||
#define DEBUG 1
|
||||
|
||||
/***************************************************/
|
||||
/* Macro define for Server's system number */
|
||||
#define GRP_NUM 32
|
||||
|
||||
#define TS_NUM 32
|
||||
#define TS_SUB 16
|
||||
#define TS_E1 8
|
||||
|
||||
#define PW_NUM 32
|
||||
#define PW_SUB 3
|
||||
|
||||
#define ETH_NUM 32
|
||||
#define ETH_SUB 16
|
||||
|
||||
#define RDEV_NUM 32
|
||||
#define RDEV_SUB 8
|
||||
#define RDEV_E1 1
|
||||
|
||||
#define BSS_NUM 48
|
||||
|
||||
#define BSC_NUM 12
|
||||
#define BSC_SUB 9
|
||||
#define BSC_E1 2
|
||||
|
||||
#define BTS_NUM 24 //BTS system include 12 BTS subsystem
|
||||
#define BTSSITE_NUM 48 //BTS site include 6 BTS subsystem
|
||||
#define BTS_SUB 12
|
||||
#define BTS_E1 2
|
||||
|
||||
#define SVR_NUM 36
|
||||
|
||||
#define CONN_NUM 128
|
||||
#define CLIENT_NUM 50
|
||||
#define BTN_NUM 66
|
||||
|
||||
#define ALARM_NUM 20
|
||||
#define CACHE_BUF 512
|
||||
/***************************************************/
|
||||
|
||||
/***************************************************/
|
||||
/* Macro definition of start ID for applet's button used by system device */
|
||||
#define TS_START_BTN 0
|
||||
#define RDEV_START_BTN 18
|
||||
#define SVR_START_BTN 34
|
||||
#define BSC_START_BTN 54
|
||||
/***************************************************/
|
||||
|
||||
|
||||
/***************************************************/
|
||||
/* Macro define for Server's IP Address */
|
||||
#define OMC_0 "172.18.128.1"
|
||||
#define OMC_1 "172.18.129.1"
|
||||
#define HLR_0 "172.18.132.1"
|
||||
#define HLR_1 "172.18.133.1"
|
||||
#define PPS_0 "172.18.136.1"
|
||||
#define PPS_1 "172.18.137.1"
|
||||
#define CDR_0 "172.18.160.1"
|
||||
#define CDR_1 "172.18.161.1"
|
||||
/***************************************************/
|
||||
|
||||
/***************************************************/
|
||||
/* Macro define for Mysql Database */
|
||||
#define HOST_NAME "localhost"
|
||||
#define DB_NAME1 "mysql"
|
||||
#define DB_PORT_NUM 0
|
||||
#define SOCKET_NAME NULL
|
||||
#define FLAGS 0
|
||||
#define USER_NAME "root"
|
||||
#define PASSWORD "rootaa"
|
||||
/***************************************************/
|
||||
|
||||
/***************************************************/
|
||||
/* Macro def for (UDP)Communication port used by OMC */
|
||||
#define PORT_OUT 4951 //for sending message to ts
|
||||
#define PORT_BASE 4951
|
||||
#define PORT_REALSTAT 3 /* 4951 + 3 = 4954 */
|
||||
#define PORT_CSTA 4 /* 4951 + 4 = 4955 */
|
||||
#define PORT_COMM 5 /* 4951 + 5 = 4956 */
|
||||
#define PORT_HEARTBEAT 6 /* 4951 + 6 = 4957 */
|
||||
#define PORT_CLUSTER 27 /* 4951 + 27 =4978 */
|
||||
#define BROADCAST_IP "172.18.255.255"
|
||||
#define CLUSTER_IP "239.255.10.1"
|
||||
#define BROADCAST 0 //if broadcast message
|
||||
|
||||
/***************************************************/
|
||||
/* Macro def for shm key and sem key used by OMC */
|
||||
#define COMM_FLAG_SHM_KEY 0x6a000000
|
||||
#define COMM_FLAG_SHM_PERM 0666
|
||||
#define COMM_FLAG_SEM_KEY 300
|
||||
#define COMM_FLAG_SEM_PERM 0666
|
||||
#define COMM_FLAG_SEM_NUM 1
|
||||
#define COMM_FLAG_SIZE 1024
|
||||
|
||||
#define COMM_LIST_SHM_KEY 0x6a100000
|
||||
#define COMM_LIST_SHM_PERM 0666
|
||||
#define COMM_LIST_SEM_KEY 310
|
||||
#define COMM_LIST_SEM_PERM 0666
|
||||
#define COMM_LIST_SEM_NUM 1
|
||||
|
||||
#define STATUS_SHM_KEY 0x6a200000
|
||||
#define STATUS_SHM_PERM 0666
|
||||
#define STATUS_SEM_KEY 320
|
||||
#define STATUS_SEM_PERM 0666
|
||||
#define STATUS_SEM_NUM 1
|
||||
|
||||
#define CACHE_SHM_KEY 0x6a400000
|
||||
#define CACHE_SHM_PERM 0666
|
||||
#define CACHE_SEM_KEY 340
|
||||
#define CACHE_SEM_PERM 0666
|
||||
#define CACHE_SEM_NUM 1
|
||||
|
||||
#define BSS_SHM_KEY 0x6a600000
|
||||
#define BSS_SHM_PERM 0666
|
||||
#define BSS_SEM_KEY 360
|
||||
#define BSS_SEM_PERM 0666
|
||||
#define BSS_SEM_NUM 1
|
||||
|
||||
#define LED_SHM_KEY 0x6a800000
|
||||
#define LED_SHM_PERM 0666
|
||||
#define LED_SEM_KEY 380
|
||||
#define LED_SEM_PERM 0666
|
||||
#define LED_SEM_NUM 1
|
||||
|
||||
#define CLUSTER_SHM_KEY 0x6a900000
|
||||
#define CLUSTER_SHM_PERM 0666
|
||||
#define CLUSTER_SEM_KEY 390
|
||||
#define CLUSTER_SEM_PERM 0666
|
||||
#define CLUSTER_SEM_NUM 1
|
||||
/***************************************************/
|
||||
|
||||
/*############################################################################
|
||||
* shm structure
|
||||
* between heartbeat transceiver and heartbeat processor
|
||||
* &
|
||||
* between heartbeat transceiver and svr cluster processor
|
||||
*###########################################################################*/
|
||||
typedef struct cache_list{
|
||||
long msgSrcIP;
|
||||
u_short msgLength;
|
||||
BYTE msgContent[CACHE_BUF];
|
||||
}cache_list;
|
||||
|
||||
typedef struct status_cahce{
|
||||
//int send_flag;
|
||||
/*this flag is only for server cluster funciton
|
||||
*0/1/2=ignore cluster FSM influence,directly send heartbeat/cluster permit *to send heartbeat/can't send heartbeat,waiting cluster's info
|
||||
*/
|
||||
u_short msgReadSub;
|
||||
u_short msgWriteSub;
|
||||
cache_list msgcache[CACHE_BUF];
|
||||
}status_cache;
|
||||
|
||||
/*############################################################################
|
||||
* shm structure between real status processor and heartbeat processor
|
||||
*###########################################################################*/
|
||||
|
||||
typedef struct clientinfo {
|
||||
BYTE used_flag; // 0/1=not used/used
|
||||
BYTE grp_id; // group which is requested by client now
|
||||
BYTE is_responsed; // 0/1/2=not response/responsing/responsed
|
||||
long ip;
|
||||
unsigned int waittime; //if waittime>60seconds,timeout
|
||||
BYTE updatetime[16]; //last time when client request info
|
||||
} client_info;
|
||||
|
||||
typedef struct conninfo {
|
||||
BYTE avail_flag; // 0/1=unavailable/available
|
||||
BYTE disp_name; // 0/1=not display/display
|
||||
char name[16];
|
||||
char remark[44];
|
||||
BYTE lsys_type;// local device system type
|
||||
BYTE lsys_id; //local device system id
|
||||
BYTE lsub_id; //local device subsystem id
|
||||
BYTE rsys_type; //remote device system type
|
||||
BYTE rsys_id; //remote device system id
|
||||
BYTE rsub_id; //remote device subsystem id
|
||||
} conn_info;
|
||||
|
||||
typedef struct btninfo {
|
||||
BYTE used_flag; // 0/1=not use/used
|
||||
BYTE sys_type; // device system type
|
||||
BYTE sys_id; // device system id
|
||||
BYTE sub_id; // device subsystem id
|
||||
} btn_info;
|
||||
|
||||
typedef struct grp_simple_stat {
|
||||
btn_info btn[BTN_NUM]; // relationship between button and device
|
||||
unsigned int coord[2]; // X,Y coord for group icon
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
BYTE isinstalled; // 0/1=not install/install
|
||||
BYTE ts_id[2]; // Transit switch id(default=99,no ts)
|
||||
BYTE disp_name; // 0/1=not display/display
|
||||
BYTE grp_name[17]; // Group name
|
||||
BYTE grp_remark[45]; // remark about group
|
||||
BYTE stat_amount; // number of status for group icon
|
||||
BYTE stat_direct; // direction of display status (0/1=h/v)
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3= uninstalled
|
||||
*/
|
||||
}grpsimple_stat;
|
||||
|
||||
typedef struct subts_detail_stat {
|
||||
BYTE subtype; //subsystem status
|
||||
BYTE timeout; //if the subsystem is timeout(0/1=timeout/not)
|
||||
BYTE substat0[8];// simple status of this subsystem
|
||||
/* substat0[0] -- if subsys is installed(0/1=not/yes)
|
||||
* substat0[1] -- if subsys is normal(0/1=abnormal/normal)
|
||||
* substat0[2] -- if subsys send master clock(0/1=not/sending)
|
||||
* substat0[3] -- locking clock(0-7:2=normal,7=idle,other=abnormal)
|
||||
*/
|
||||
BYTE substat1[8]; // performance or status data of subsystem
|
||||
/* substat1[0-1] -- CPU Load ('00'-'45')
|
||||
* substat1[2-4] -- Clock frequency('000'-'255')
|
||||
*/
|
||||
|
||||
BYTE e1stat0[TS_E1][8]; //simple status of all E1
|
||||
/* e1[i][0] -- e1[i] installed/not installed (0/1=not/yes)
|
||||
* e1[i][1] -- e1[i] layer 2 installed/not installed (0/1=not/yes)
|
||||
* e1[i][2] -- e1[i] layer 1 connected/disconnected (0/1=not/yes)
|
||||
* e1[i][3] -- e1[i] layer 2 connected/disconnected (0/1=not/yes)
|
||||
* e1[i][4] -- e1[i] without/with ECHO CANCELLER (0/1=not/yes)
|
||||
*/
|
||||
BYTE e1stat1[TS_E1][8]; // performance or status data of all E1
|
||||
/* e1[i][0-1] -- e1[i] idle channels('00'/'30')
|
||||
*/
|
||||
|
||||
long lock_alarmtime;
|
||||
/*last time inserting alarm log into db because of clock locking error
|
||||
*/
|
||||
long e1_alarmtime[TS_E1][2];
|
||||
/*last time inserting alarm log into db because of e1 1,2th error
|
||||
*/
|
||||
BYTE version_info[16];
|
||||
/*version information for the application
|
||||
*/
|
||||
BYTE updatetime[16]; //last time refreshing subsystem status
|
||||
}subtsdetail_stat;
|
||||
|
||||
typedef struct subpw_detail_stat {
|
||||
BYTE timeout; //if the subsystem is timeout(0/1=timeout/not)
|
||||
BYTE substat[2]; // status of this subsystem(0/1=abnomal/normal)
|
||||
/* substat[0] -- if subsys is installed(0/1=not/yes)
|
||||
* substat[1] -- if subsys is normal(0/1=abnormal/normal)
|
||||
*/
|
||||
|
||||
long pcard_alarmtime;
|
||||
/*last time inserting alarm log into db because of power card error
|
||||
*/
|
||||
BYTE updatetime[16]; //last time refreshing subsystem status
|
||||
}subpwdetail_stat;
|
||||
|
||||
typedef struct ts_detail_stat {
|
||||
BYTE grp_id;
|
||||
BYTE clock_status;//if master clock is normal(0/1=N/Y)
|
||||
long clock_alarmtime;//master clock status
|
||||
/*last time inserting alarm log into db because of master clock error
|
||||
*/
|
||||
subtsdetail_stat sub_detail[TS_SUB];
|
||||
subpwdetail_stat subpw_detail[PW_SUB];
|
||||
}tsdetail_stat;
|
||||
|
||||
typedef struct subts_simple_stat {
|
||||
BYTE isinstalled;
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3=uninstalled
|
||||
*/
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
int waittime; // if TS subsystem is timeout
|
||||
BYTE issent ; // if sending get request to timeout ts subsystem
|
||||
} subtssimple_stat;
|
||||
|
||||
|
||||
typedef struct ts_simple_stat {
|
||||
BYTE isinstalled; // 0/1=N/Y
|
||||
BYTE location; // 0/1=local/remote
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3=uninstalled
|
||||
*/
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
BYTE grp_id;
|
||||
BYTE disp_name; // 0/1=not display/display
|
||||
BYTE name[16];
|
||||
BYTE remark[44];
|
||||
int coord[2];
|
||||
BYTE stat_amount; // number of status for ts icon
|
||||
BYTE stat_direct; // direction of display status (0/1=h/v)
|
||||
subtssimple_stat sub_simple[TS_SUB];
|
||||
subtssimple_stat subpw_simple[PW_SUB];
|
||||
} tssimple_stat;
|
||||
|
||||
typedef struct subeth_detail_stat {
|
||||
BYTE timeout; //if the subsystem is timeout(0/1=timeout/not)
|
||||
long self_ip; //ip address of LAN Module self
|
||||
BYTE mac[6]; //physical address of LAN Module
|
||||
|
||||
BYTE substat[6];
|
||||
/* substat[0] -- if LAN Module is installed(0/1)
|
||||
* substat[1] -- if LAN Module is normal(0/1)
|
||||
* substat[2] -- if there is unreachable ip(0/1)
|
||||
* substat[3] -- if LAN Module upload program to csu(0/1)
|
||||
* substat[4] -- if csu is availabe (0/1)
|
||||
*/
|
||||
|
||||
BYTE cpu_load[2]; //CPU load of LAN module(hex value)
|
||||
BYTE unreachable_ip[4]; //ip Can't be found by LAN Module (hex value)
|
||||
long unreach_time;
|
||||
|
||||
long alarmtime[2];
|
||||
/*CSU Upload program status
|
||||
*alarmtime[0] -- can't reach target ip address
|
||||
*alarmtime[1] -- uploading program
|
||||
*/
|
||||
BYTE version_info[16];
|
||||
/*version information for the application
|
||||
*/
|
||||
char updatetime[16];
|
||||
}subethdetail_stat;
|
||||
|
||||
typedef struct eth_detail_stat {
|
||||
BYTE grp_id;
|
||||
subethdetail_stat sub_detail[ETH_SUB];
|
||||
}ethdetail_stat;
|
||||
|
||||
typedef struct subeth_simple_stat {
|
||||
BYTE isinstalled;
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3=uninstalled
|
||||
*/
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
int waittime; // if TS subsystem is timeout
|
||||
BYTE issent ; // if sending get request to timeout ts subsystem
|
||||
} subethsimple_stat;
|
||||
|
||||
typedef struct eth_simple_stat {
|
||||
BYTE isinstalled; // 0/1=N/Y
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3=uninstalled
|
||||
*/
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
BYTE grp_id;
|
||||
subethsimple_stat sub_simple[ETH_SUB];
|
||||
} ethsimple_stat;
|
||||
|
||||
typedef struct subrdev_detail_stat {
|
||||
BYTE subtype; //0-4
|
||||
|
||||
BYTE timeout; //if the subsystem is timeout(0/1=timeout/not)
|
||||
BYTE substat0[6];
|
||||
/* substat[0] -- if subsys is installed(0/1=N/Y)
|
||||
* substat[1] -- if subsys is normal(0/1=N/Y)
|
||||
* sysstat[2] -- if send master clock(0/1=N/Y)
|
||||
*/
|
||||
BYTE substat1[6];
|
||||
/* substat[0-1] -- used CPU(00/30)
|
||||
*/
|
||||
|
||||
BYTE e1stat0[RDEV_E1][8];
|
||||
/* e1[0] -- e1 installed/not installed (0/1=N/Y)
|
||||
* e1[1] -- e1 layer 1 connected/disconnected (0/1=N/Y)
|
||||
* e1[2] -- e1 layer 2 connected/disconnected (0/1=N/Y)
|
||||
*/
|
||||
BYTE e1stat1[RDEV_E1][8];
|
||||
/* e1[i][0-1] -- e1 idle channels('00'--'30')
|
||||
*/
|
||||
|
||||
long e1_alarmtime[RDEV_E1][2];
|
||||
/* alarmtime[i][0] -- e1[i] layer 1
|
||||
* alarmtime[i][1] -- e1[i] layer 2
|
||||
*/
|
||||
BYTE version_info[16];
|
||||
/*version information for the application
|
||||
*/
|
||||
char updatetime[16];
|
||||
}subrdevdetail_stat;
|
||||
|
||||
typedef struct rdev_detail_stat {
|
||||
BYTE grp_id;
|
||||
BYTE systype; //05=VPS;06=PCR
|
||||
BYTE clock_status;//if master clock is normal(0/1=N/Y)
|
||||
long clock_alarmtime;//master clock status
|
||||
/*last time inserting alarm log into db because of master clock error
|
||||
*/
|
||||
subrdevdetail_stat sub_detail[RDEV_SUB];
|
||||
}rdevdetail_stat;
|
||||
|
||||
typedef struct subrdev_simple_stat {
|
||||
BYTE isinstalled;
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3=uninstalled
|
||||
*/
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
int waittime; // if Rdev subsystem is timeout
|
||||
BYTE issent ; // if sending get request to timeout ts subsystem
|
||||
} subrdevsimple_stat;
|
||||
|
||||
typedef struct rdev_simple_stat {
|
||||
BYTE isinstalled; // 0/1=N/Y
|
||||
BYTE location; // 0/1=local/remote
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3=uninstalled
|
||||
*/
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
BYTE grp_id;
|
||||
BYTE disp_name; // 0/1=not display/display
|
||||
BYTE name[16];
|
||||
BYTE remark[44];
|
||||
int coord[2];
|
||||
BYTE stat_amount; // number of status for rdev icon
|
||||
BYTE stat_direct; // direction of display status (0/1=h/v)
|
||||
subrdevsimple_stat sub_simple[RDEV_SUB];
|
||||
} rdevsimple_stat;
|
||||
|
||||
typedef struct bts_simple_stat {
|
||||
BYTE isinstalled; // 0/1=not/installed
|
||||
BYTE bts_site_id;
|
||||
BYTE bts_link_id;
|
||||
BYTE location; // 0/1=local/remote
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3=uninstalled
|
||||
*/
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
BYTE grp_id;
|
||||
BYTE disp_name; // 0/1=not display/display
|
||||
BYTE name[16];
|
||||
BYTE remark[44];
|
||||
int coord[2];
|
||||
BYTE stat_amount; // number of status for bts site icon
|
||||
BYTE stat_direct; // direction of display status (0/1=h/v)
|
||||
} btssimple_stat;
|
||||
|
||||
typedef struct bsc_simple_stat {
|
||||
BYTE isinstalled; // 0/1=not/installed
|
||||
BYTE location; // 0/1=local/remote
|
||||
BYTE timeout; // 0/1=timeout/not timeout
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3=uninstalled
|
||||
*/
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
BYTE grp_id;
|
||||
BYTE disp_name; // 0/1=not display/display
|
||||
BYTE name[16];
|
||||
BYTE remark[44];
|
||||
int coord[2];
|
||||
BYTE stat_amount; // number of status for bsc icon
|
||||
BYTE stat_direct; // direction of display status (0/1=h/v)
|
||||
} bscsimple_stat;
|
||||
|
||||
|
||||
/* structure for server detail status in heartbeat processor
|
||||
************************************/
|
||||
typedef struct svr_detail_stat {
|
||||
BYTE timeout; //if the subsystem is timeout(0/1=not/timeout)
|
||||
BYTE grp_id;
|
||||
BYTE systype;
|
||||
BYTE sys_id;
|
||||
int cpuused;
|
||||
int viravail;
|
||||
int virfree;
|
||||
int memavail;
|
||||
int memfree;
|
||||
int hdavail;
|
||||
int hdfree;
|
||||
BYTE init_progress[3];
|
||||
BYTE proc_id[16];
|
||||
BYTE proc_status[16];
|
||||
BYTE subproc_num[16];
|
||||
BYTE sysstat[16]; // 0/1=abnormal/normal
|
||||
/*
|
||||
* 0=Normal,1=abnormal
|
||||
*sysstat[0]: system status
|
||||
* sysstat[1]:cpu status sysstat[2]:swap status
|
||||
* sysstat[3]:memory status sysstat[4]:disk status
|
||||
* sysstat[5]:proc_status sysstat[6]:server working status
|
||||
* sysstat[7]:database status
|
||||
*/
|
||||
long alarmtime[6];
|
||||
|
||||
BYTE version_info[16];
|
||||
/*version information for the application
|
||||
*/
|
||||
BYTE updatetime[16];
|
||||
} svrdetail_stat;
|
||||
|
||||
typedef struct svr_simple_stat {
|
||||
BYTE grp_id;
|
||||
BYTE location;
|
||||
BYTE isinstalled;
|
||||
int waittime;
|
||||
BYTE ischanged;
|
||||
/* 0/1=N/Y,process will send message to client if status is changed
|
||||
*/
|
||||
BYTE status;
|
||||
/*0=critical ; 1=normal ; 2=alarm ; 3=uninstalled
|
||||
*/
|
||||
int critical; // critical counter
|
||||
int alarm; // alarm counter
|
||||
BYTE disp_name; // 0/1=not display/display
|
||||
BYTE name[16];
|
||||
BYTE remark[44];
|
||||
int coord[2];
|
||||
BYTE stat_amount; // number of status for bts site icon
|
||||
BYTE stat_direct; // direction of display status (0/1=h/v)
|
||||
} svrsimple_stat;
|
||||
|
||||
struct alarm_log {
|
||||
BYTE systype;
|
||||
BYTE sys_id;
|
||||
BYTE sub_id;
|
||||
BYTE e1no;
|
||||
BYTE alarmnum;
|
||||
BYTE occurtime[16];
|
||||
};
|
||||
|
||||
typedef struct ts_alarm_log {
|
||||
int readSub;
|
||||
int writeSub;
|
||||
struct alarm_log alrlist[ALARM_NUM];
|
||||
} tsalarm_log;
|
||||
|
||||
typedef struct ask_alarm_log {
|
||||
long client_ip; //ip address where the request is sent from
|
||||
int init_Req_Flag;
|
||||
int readSub;
|
||||
int writeSub;
|
||||
struct alarm_log alrlist[ALARM_NUM];
|
||||
} askalarm_log;
|
||||
|
||||
/*
|
||||
* shared memory structure
|
||||
*************************/
|
||||
typedef struct shm_ts_stat {
|
||||
BYTE init_flag;
|
||||
BYTE sys_struct;//0/1=single/double plane system structure
|
||||
grpsimple_stat grp_simple[GRP_NUM];
|
||||
tsdetail_stat ts_detail[TS_NUM];
|
||||
tssimple_stat ts_simple[TS_NUM];
|
||||
ethdetail_stat eth_detail[ETH_NUM];
|
||||
ethsimple_stat eth_simple[ETH_NUM];
|
||||
rdevdetail_stat vps_detail[RDEV_NUM];
|
||||
rdevsimple_stat vps_simple[RDEV_NUM];
|
||||
rdevdetail_stat pcr_detail[RDEV_NUM];
|
||||
rdevsimple_stat pcr_simple[RDEV_NUM];
|
||||
svrdetail_stat svr_detail[SVR_NUM];
|
||||
svrsimple_stat svr_simple[SVR_NUM];
|
||||
/*
|
||||
sysnum=systype*2+sys_id
|
||||
svr_simple[0]=OMC-0
|
||||
svr_simple[1]=OMC-1
|
||||
svr_simple[2]=HLR-0
|
||||
svr_simple[3]=HLR-1
|
||||
svr_simple[4]=PRP-0
|
||||
svr_simple[5]=PRP-1
|
||||
svr_simple[6]=CDR-0
|
||||
svr_simple[7]=CDR-1
|
||||
*/
|
||||
bscsimple_stat bsc_simple[BSC_NUM];
|
||||
|
||||
BYTE global_status[ETH_NUM];
|
||||
conn_info connection[CONN_NUM];
|
||||
client_info client[CLIENT_NUM];
|
||||
/*global_status[0]= if normal ;global_status[1]= if changed*/
|
||||
tsalarm_log alarmlog;
|
||||
} shm_stat;
|
||||
|
||||
/*****************************************************************************/
|
||||
/* Lan Module's global status*/
|
||||
typedef struct global_status{
|
||||
BYTE eth_mac[ETH_NUM][ETH_SUB][7];
|
||||
long update_time[ETH_NUM][ETH_SUB];
|
||||
long alarm_time[ETH_NUM][ETH_SUB];
|
||||
}eth_global;
|
||||
/***************************************************/
|
||||
|
||||
/*****************************************************************************/
|
||||
/* structure for BSS simple status in heartbeat processor
|
||||
************************************/
|
||||
typedef struct bss_simple_stat {
|
||||
BYTE isinstalled[BSS_NUM];
|
||||
BYTE ischanged[BSS_NUM];
|
||||
BYTE isnormal[BSS_NUM];
|
||||
unsigned int waittime[BSS_NUM];
|
||||
} bsssimple_stat;
|
||||
/***************************************************/
|
||||
|
||||
#endif /*OMC_PUBLIC__H */
|
||||
Reference in New Issue
Block a user