⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shmsys.h

📁 界面程序
💻 H
字号:
/*=============================================================
 * 功能: 		共享内存头文件(NAS V6.0)
 * 		增加用于安全子系统的共享内存
 * 作者:
 * wyz:2001/03/27: Add
 * #define RCVNAS_STAT_SHM	3	
 * #define RCVNAS_REQ_SHM	4
 * 
 * zgx 2001/04/05 modify
 * "JGBM" ==> "BANK"; "jgbm" ==> "bank"
 * ===============================================================*/
#ifndef _SHMSYS_H_
#define _SHMSYS_H_

/* ================以下设计供运行管理使用================ */
#include "safe_stat_key_structure.h"

#define SHMFILE		"/etc/IPCFILE"
#define	SUPER_SRV_IPCFILE	"/etc/SUPSRV_IPCFILE"

#define SHMID1		1
#define BANK_STAT_SHM	2	/* 必须固定 */
#define RCVNAS_STAT_SHM	3	/*用于保存rcvnas子进程状态*/
#define RCVNAS_REQ_SHM	4	/*用于保存rcvnas进程的请求*/
#define	TRAN_RECORD_SHM	5

#define	EXEC_NUM	20

/* PSTAT中 pause 的含义如下 */
#define	ACTIVE	'A'		/* 活动状态 */
#define PAUSE	'P'		/* 进程暂停 */
#define KILLED	'K'		/* 进程杀死 */
#define	SETTIME	'T'		/* 设置时间 */

typedef struct {
	char	name[31];		/* exec file name */
	int	pid;
	char	pause;		
	char	time[9];
	int	times;
} PSTAT;

typedef struct {
	PSTAT	pst[EXEC_NUM];
	char	monitor;		/* 0 -- Pause  1 -- Working */
	char	errmsg;			/* 0 -- Pause  1 -- Working */
	char	trace;			/* 0 -- Pause  1 -- Working */
	char	debug;			/* 0 -- Pause  1 -- Working */

	int	hostls;			/* Used by Switch to restore hostls */
	char	center[12];		/* Local center bank_id */
	char	center_host[3];		/* Local center host_id */
	int	reload_num;
	STAT_KEY_IN_BUFF stat_key_in_buf;
} SHM1;

struct simple_bank_tab {
		char	bankid[12];
		char	hostid[3];
		char	name[31]; 
		char	ip[21];
		char	port1[7]; // add by wyf 2000/07/06
		char	ip2[21]; // add by bao as nas-a-31-990406
		char	port2[7]; // add by wyf 2000/07/06
		char	moni_enable;
		char	stati;	 /*  'C' connect, 'I' interrupt , 'U' unnet */	
				/* &0x01==1 IP异常, &0x01==0 IP正常 */
				/* &0x02==1 IP2异常, &0x02==0 IP2正常 */
		char    logstat; /* 'I' - LOGIN, 'O' - LOGOUT, 'U'-未联网行 */
};

/*
 * 联行状态
 */
typedef	struct	{
	int bank_num;

	struct simple_bank_tab j[100];
} BANK_STAT;



#define cshm1()	creat_shm(SHMFILE, SHMID1, sizeof(SHM1))
#define gshm1()	get_shm(SHMFILE, SHMID1, sizeof(SHM1))
#define rshm1()	rm_shm(SHMFILE, SHMID1, sizeof(SHM1))


/* ================以下设计供安全子系统使用================ */

#define SHMSAFE		2	
#define SHMSAFE_OLD	3


#endif	//_SHMSYS_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -