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

📄 nmmglobal.h

📁 2410下面通过MOTO手台录音程序;自己用的
💻 H
字号:
/*******************************************************************
	File Name:	 NmmGlobal.h
	Description:	 Define  MACRO used for whole NMM module
				
	version:	       1.0
	
	Copy Right:	

       modify list	
       
***************************************************************************/

#ifndef _NMMGLOBAL_H
#define _NMMGLOBAL_H

/******************************************************************
  *	INCLUDE											    		   			   *
  ******************************************************************/
#include <msgQLib.h>
#include "time.h"



/******************************************************************
  *	CONST											    		   			    *
  ******************************************************************/
/*for max define*/
#define MAX_CMD_NUM 16
#define MAX_NAME_LEN 64
#define MAX_HELP_LEN 64
#define MAX_WORD_LEN  MAX_NAME_LEN
#define MAX_CMD_LEN MAX_NAME_LEN
#define MAX_STATUS 1			
#define MAX_USERNAME_LEN 10
#define MAX_PASSWORD_LEN 10


/*for msg type*/
#define CONSOLE_MSG 0	
#define TELNET_MSG 1

/*for result*/
#define NMM_OK 0
#define NMM_TIMEOUT 1
#define NMM_AUTH_FAIL -2
#define NMM_ERROR -1



/* for debug  */
#define g_NMM_Debug 1
#define g_USERNAME    "admin"
#define g_PASSWD      "admin"




/*for priority*/
#define NMM_MSG_PRIORITY   150
#define ADMIN_LEVEL 1

/*for type redefine*/
#ifndef UB
 #define UB unsigned char
#endif

#ifndef UW
#define UW unsigned long 
#endif

#ifndef INT32 
#define INT32 int
#endif

#ifndef INT16 
#define INT16 short
#endif

#ifndef INT8 
#define INT8 char
#endif

#ifndef UINT32 
#define UINT32 u_long
#endif

#ifndef UINT16 
#define UINT16 u_short
#endif

#ifndef UINT8 
#define UINT8 u_char
#endif

#ifndef VOID
#define VOID void
#endif 
#ifndef BYTE
#define BYTE char
#endif
#define MAXSESSION 10
#define IFNAME "cs0"
/*command parameter store*/
union val
{
	char   s[MAX_NAME_LEN];
	int    i;
	UINT32 ip;
};

/*session define*/
typedef struct session
{
	int NetworkType;
	int  sid;
	int  SocketId;
	int  type;
	int  flag;	
	char in[MAX_CMD_LEN];
	int  inlen;
	int  status;

	int  verify;
	char user[MAX_USERNAME_LEN];
	char passwd[MAX_PASSWORD_LEN];
	int UserLevel;
	int  counter;
	time_t time;	

	union val u[MAX_CMD_NUM];
	int  cmdnum;
	int  (*output) (int NetworkType,int SocketId, char *info, int len);
	int  (*input)  (int NetworkType,int SocketId, char *info, int len);
	int  (*close)  (struct session *s);
	int  (*preproc)(struct session *s);
	int  (*process)(char *info, int len, struct session *s);
	int telnetEXIT_flag;
	
}SESSION;

/*command structure*/
typedef struct command
{
	char name[MAX_NAME_LEN];
	char help[MAX_HELP_LEN];
	int (*func)(SESSION *s);
	int (*nofunc)(SESSION *s);
	struct command *cont;
	struct command *next;
}NMM_CONFIG_CMD;
typedef struct user
{
	char username[MAX_USERNAME_LEN];
	char passwd[MAX_PASSWORD_LEN];
}NMM_CONFIG_LOGIN;



typedef struct
{
	UINT32	IpAddress;
	UINT32	SubnetMask;
	UINT32	Gateway;
} NMM_IP_ALL_CONFIGURE;

typedef struct 
{
     NMM_IP_ALL_CONFIGURE localip;
     UINT32  remoteip;
     UINT16 remoteport; 
     UINT16 localport;
}IP_INFO;

typedef struct
{
	BYTE MASTERDEV_NO;
	BYTE SUBDEV_NO;
	BYTE MODULE_NO;
	BYTE RESERVE;	
}NMM_RCD_DEVNO;

typedef struct 
{	
	UB STATION_ID[14];
	UB GROUP_ID[14];
	UB REMOTE_ID[14];
	UB STATION_TYPE;
	UB reserve[3];
}NMM_STATION_INFO;

NMM_CONFIG_CMD g_NMM_CmdList[MAX_STATUS];
NMM_CONFIG_LOGIN *g_user;
IP_INFO *g_ip_info;
NMM_RCD_DEVNO *g_rcd_devno;
NMM_STATION_INFO *g_station_info;



#ifndef NMM_STACK_SIZE
#define NMM_STACK_SIZE 20000	
#endif

#ifndef NMM_MSG_STACK_SIZE
#define NMM_MSG_STACK_SIZE 20000	
#endif

#ifndef CMM_MSG_STACK_SIZE
#define CMM_MSG_STACK_SIZE 40000	
#endif

#ifndef SMM_MSG_STACK_SIZE
#define SMM_MSG_STACK_SIZE 20000	
#endif

#ifndef VPM_MSG_STACK_SIZE
#define VPM_MSG_STACK_SIZE 40000	
#endif

#ifndef TELNET_TSK_PRI
#define TELNET_TSK_PRI	180
#endif

#ifndef UART1_TSK_PRI
#define UART1_TSK_PRI   201
#endif

#ifndef _MSG_RECEIVE_PRI
#define _MSG_RECEIVE_PRI 200
#endif

#ifndef CMM_TSK_PRI
#define CMM_TSK_PRI   201
#endif
#endif

⌨️ 快捷键说明

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