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

📄 variables.c

📁 这是一个在在Dynamic C环境下实现的设备web服务器的建立
💻 C
字号:
/*** BeginHeader */
#ifndef _VAR_CLARE_
#define _VAR_CLARE_

#define COMM_BUFF_SIZE								0x1000
#define RUN_LED                 					700
#define PKTLOS_TIMER                                900
#define ARP_TIMER                                   800
#define DISP_TIMER                                  30
#define ARP_Q_SIZE                                  0x20
#define ARP_Q_BUF                                   0x10
#define MAX_CHANNEL                                 0x04
#define MAX_FORMSIZE                                0x64

#define MAX_LOGIN_USER                              0x02
#define MAX_USER_NAME                               0x08
#define MAX_USER_PWD                                0x20
#define ADMIN_GROUP									0x0001
#define MONITOR_GROUP								0x0002

#define CHANGE_IP                                   0x01
#define PARAMETER1                                  0x02
#define PARAMETER2                                  0x03
#define PARAMETER3                                  0x04
#define ADVANCE_CFG                                 0x05

//////////////////////////////////////////////////////////////////////////////////
#define MAX_OEM_USER                                0x04

//#define DEF_LOCAL_IPADDR							0xAC105FCE
//#define DEF_LOCAL_IPMASK							0xffff0000
//#define DEF_GATEWAY_ADDR							0xAC105F01
#define DEF_LOCAL_IPADDR								0xC0A80102
#define DEF_LOCAL_IPMASK								0xffffff00
#define DEF_GATEWAY_ADDR								0xC0A80101

#define DEF_VLAN_ID                                 	0xAA66
#define DEF_UP_BAND                                 	10000

#define DEF_ENCAP_LEVEL                             	0x02


#define DEF_JITTER_BUF                              	0x10

#define RC_LOCAL_IPADDR							    0x0a0a0a0a
#define RC_LOCAL_IPMASK							    0xff000000
#define RC_GATEWAY_ADDR							    0x0a0a0a01

#define OT_LOCAL_IPADDR								0xC0A80102
#define OT_LOCAL_IPMASK								0xffffff00
#define OT_GATEWAY_ADDR								0xC0A80101


#define DEF_HARD_TYPE                               0xC0C0
#define RC_HARD_TYPE                                0xC0C0
#define OT_HARD_TYPE                                0xC0C0

#define DEF_SRC_UDP_PORT                            0xC000
#define RC_SRC_UDP_PORT                             0xC001
#define OT_SRC_UDP_PORT                             0xC000

#define DEF_DST_UDP_PORT                            0x085E
#define RC_DST_UDP_PORT                             0x085E
#define OT_DST_UDP_PORT                             0x085E

#define DEF_PROTO                                   0x11
#define RC_PROTO                                    0x11
#define OT_PROTO                                    0x11

#define DEF_TOS                                     0x00
#define RC_TOS                                      0x00
#define OT_TOS                                      0x00

#define DEF_MAX_TTL                                 0xFF
#define RC_MAX_TTL                                  0xFF
#define OT_MAX_TTL                                  0xFF

#define DEF_FILTER                                  0x02
#define RC_FILTER                                   0x02
#define OT_FILTER                                   0x02

#define DEF_SEG_FLAG                                0x4000
#define RC_SEG_FLAG                                 0x4000
#define OT_SEG_FLAG                                 0x4000


/////////////////////////////////////////////////////////////////////////////////////

#define VIRT_ETH_IPADDR                             0xc0c0c0c0
#define VIRT_ETH_IPMASK                             0xffffff00
#define VIRT_ETH_GATEWAY                            0xc0c0c0c1


typedef struct _DispAddrInfo
{
	unsigned char 			ip[16];//for display
	unsigned char 			netmask[16];
	unsigned char 			gateway[16];
	unsigned char 			macaddress[18];
}DispAddrInfo;

typedef struct _EthStateInfo
{
	unsigned char  Link[5];
	unsigned int   Speed;
	unsigned char  Model[5];
}EthStateInfo;

typedef struct _ChannelState
{
	unsigned char 	Los[7];
	unsigned char 	Ais[7];
	unsigned char 	Llb[7];
	unsigned char 	Rlb[7];
	unsigned char   CtrlL[8];
	unsigned char   CtrlR[8];
}ChannelState;

typedef struct _FormDispEth
{
	unsigned int  DstIp[4];
	unsigned int  Mask[4];
	unsigned int  Gateway[4];
}FormDispEth;

typedef struct _ChannelCfgPara1
{
  unsigned char Enable;//1
  unsigned char Port;//1
  unsigned char DstMac[6];//6
  unsigned long DstIp;//4
  unsigned int  DstUDPPort;//2
  unsigned char EnArp;//1
  unsigned char Proto;//1
} ChannelCfgPara1;

typedef struct _ChanDispCfgPara1
{
  unsigned char Enable[8];
  unsigned char Port[4][9];
  //unsigned char DstMac[6][3];
  unsigned int  DstIp[4];
  //unsigned char EnArp[8];
} ChanDispCfgPara1;


typedef struct _ChannelCfgPara2
{
  unsigned int  CacheLen;//2
  unsigned char EnVlan;//1
  unsigned char Ttl;//1
  unsigned int  SegFlag;//2
  unsigned int  VlanId;//2
  unsigned char ClkMod;//1
  unsigned char Reserver[2];
}ChannelCfgPara2;

typedef struct _ChanDispCfgPara2
{
  unsigned char ClkMod[2][9];
  unsigned int  JitBuf;//2
  unsigned char  Vlan[8];
  unsigned int  V_ID;//2
  
}ChanDispCfgPara2;


typedef struct _ChannelCfgPara3
{
   unsigned char EnLev ;//1
   unsigned char E1orT1;//1
   unsigned char EnIp;//1
   //unsigned char ClkMod;//1
   //unsigned char AppMod;//1
   unsigned char Filter;//1
   unsigned int  Tos;//2
   unsigned int  Upwidth;//2
   unsigned char Reserver[6];//6
}ChannelCfgPara3;

typedef struct _ChanDispCfgPara3
{
   unsigned char EnLev[5][9];
   unsigned char E1orT1[2][9];
   unsigned char EnIp[2][9];
   //unsigned char ClkMod[2][9];
   //unsigned char AppMod[2][9];
   unsigned int  uiTos;
   unsigned int  uiUp;
}ChanDispCfgPara3;

typedef struct _UserLogin
{
	unsigned char Name[MAX_USER_NAME];
	unsigned char Password[MAX_USER_PWD];
	unsigned int  Group;
} UserLogin;

union LgintChar
{
         long int mlong;
         //unsigned long int ulival;
         unsigned char mch[4];
         float mf;
};

typedef struct _FormType
{
	char *name;
	char value[MAX_FORMSIZE];
} FormType;



typedef struct _E1Status
{
	unsigned char Los;
	unsigned char Ais;
	unsigned char Llb;
	//unsigned char Rlb;
}E1Status;

typedef struct _AddrInfo//170
{
	unsigned long			ulIpAddr;//4
	unsigned long			ulIpMask;//4
	unsigned long			ulGateway;//4
	unsigned char			ucMacAddr[6];//6
	unsigned int            uiFrmType;//2
	unsigned int            uiUDPPort;//2
	unsigned char           Reserver[12];//12
	ChannelCfgPara1         FirE1Para[MAX_CHANNEL];//16*4
	ChannelCfgPara2         SecdE1Para[MAX_CHANNEL];//(14)*4
	ChannelCfgPara3         TirdE1Para;//16
}AddrInfo;

typedef struct _AdvanCfg
{
	unsigned char OemUser[MAX_OEM_USER][9];
	unsigned char EqMac[18];
	unsigned int  SetTtl;
	unsigned int  Protocol;
	unsigned int  Filter;
	unsigned int  EthFrmType;
	unsigned int  EnpFlg;
	unsigned int  SrcPort;
	unsigned int  DstPort;

}  AdvanCfg;

typedef struct _ArpVal
{
	unsigned char Channel;
	unsigned long DstIP;
} ArpVal;

typedef struct _RmtUp
{
	unsigned char Cnt;
	unsigned char IsArp[MAX_CHANNEL];
	unsigned long ArpIP[MAX_CHANNEL];
} RmtUp;

typedef struct _DispPara
{
	unsigned int   LenCode;
	unsigned int   Unnormal;
	unsigned int   Normal;

	
}DispPara;

/*** EndHeader */

/*** BeginHeader g_SerConf, g_AddrInfo, g_TabsList, g_CommBuf */
extern AddrInfo						g_AddrInfo[MAX_OEM_USER];
extern DispAddrInfo					g_DispAddrInfo;
extern EthStateInfo           		FirstUp;
extern EthStateInfo           		FirstData;
extern EthStateInfo           		SecondData;
extern ChannelState                 E1State[MAX_CHANNEL];
extern ChannelCfgPara1              FirE1Para[MAX_CHANNEL];
extern ChannelCfgPara2              SecdE1Para[MAX_CHANNEL];
extern ChannelCfgPara3              TirdE1Para;
extern ChanDispCfgPara1             DispE1Para1[MAX_CHANNEL];
extern ChanDispCfgPara2             DispE1Para2[MAX_CHANNEL];
extern ChanDispCfgPara3             DispE1Para3;
extern FormDispEth                  NetworkCfg;
extern UserLogin                    User[MAX_LOGIN_USER];
extern FormType                     FormData[6*MAX_CHANNEL];
extern E1Status                     Status;
extern AdvanCfg                     AdvanPara;
extern ArpVal                       ArpSelChan;
extern RmtUp                        RemoteUp;
extern DispPara                     Test;
//extern union LgintChar 		    smpl_dat;
extern union LgintChar		    sum,t,var1,var2,varc1,div,remain;
extern unsigned char 		    shft_n;
extern unsigned char 			DefaultIp;
extern unsigned char            Arp_En;
extern unsigned char			g_CgiProcess;

//extern unsigned long			g_WaitStoreTimer;
extern unsigned long			g_WaitLedTimer;
extern unsigned long			g_PktosTimer;
extern unsigned long			g_ArpTimer;
extern unsigned long			g_DispTimer;

extern unsigned char			g_HardwareVer[20];
extern unsigned char			g_SoftVer[10];
extern unsigned char            LogoPic[100];

extern unsigned char            E1Led[3];
extern unsigned char 			g_CommBuf[COMM_BUFF_SIZE];
extern unsigned char			g_EthBadFlg;
//extern unsigned char			g_B5325Buf[8];
extern unsigned char	        g_CmdQNum;
extern unsigned char	        g_CmdQFront;
extern unsigned char	        g_CmdQRear;
extern long						g_CmdQueue[ARP_Q_SIZE];
extern unsigned char			g_EnSend;
extern unsigned char            UserIndx;

/*** EndHeader */
AddrInfo						g_AddrInfo[MAX_OEM_USER];
DispAddrInfo					g_DispAddrInfo;

EthStateInfo           			FirstUp;
EthStateInfo           			FirstData;
EthStateInfo           			SecondData;

ChannelState                 	E1State[MAX_CHANNEL];
ChannelCfgPara1              	FirE1Para[MAX_CHANNEL];
ChannelCfgPara2              	SecdE1Para[MAX_CHANNEL];
ChannelCfgPara3              	TirdE1Para;
ChanDispCfgPara1             	DispE1Para1[MAX_CHANNEL];
ChanDispCfgPara2             	DispE1Para2[MAX_CHANNEL];
ChanDispCfgPara3             	DispE1Para3;
FormDispEth                  	NetworkCfg;
UserLogin                    	User[MAX_LOGIN_USER];
FormType                        FormData[6*MAX_CHANNEL];
E1Status                        Status;
AdvanCfg                        AdvanPara;
ArpVal                          ArpSel;
RmtUp                        	RemoteUp;
DispPara                        Test;
//union LgintChar 			    smpl_dat;
union LgintChar					sum,t,var1,var2,varc1,div,remain;
unsigned char 					shft_n;
unsigned char 					DefaultIp;
unsigned char					g_CgiProcess;

//unsigned long					g_WaitStoreTimer;
unsigned long					g_WaitLedTimer;
unsigned long					g_PktosTimer;
unsigned long					g_ArpTimer;
unsigned long					g_DispTimer;

unsigned char	        		g_CmdQNum ;
unsigned char	        		g_CmdQFront ;
unsigned char	        		g_CmdQRear;
unsigned char                   Arp_En;
long							g_CmdQueue[ARP_Q_SIZE];
unsigned char					g_EnSend;
unsigned char			        g_HardwareVer[20];
unsigned char			        g_SoftVer[10];
unsigned char                   LogoPic[100];
unsigned char                   E1Led[3];
unsigned char 				    g_CommBuf[COMM_BUFF_SIZE];
//unsigned char					g_EthBadFlg;
//unsigned char				    g_B5325Buf[8];
unsigned char            		UserIndx;
/*** BeginHeader*/
/////////////////////////////////////////////////////////////////////////////////////////////////
xstring  LogoStr{ "Welcome to  Electronics Co., Ltd  Web Manager!\0","Welcome to Communications  Web Manager!\0","Welcome to ROOTS  Web Manager!\0"};

xstring	 SoftVersion {"02.00.02\0","02.00.02\0","02.00.02\0","02.00.02\0"};
////////////////////////////////////////////////////////////////////////////////////////////
xstring  UserName{"tiantianhao\0","root\0"};
xstring  Password{"1234567890\0","root\0"};
xstring  CgiOfStr{"HTTP/1.0 200 OK\r\nContent-Type: text/html\r\n\r\n\0","<html><head><title>Results</title></head><body>\r\n\0","<p>All settings will be applied after you reboot system!\r\n\0",\
                   "<p><a href=""/SetE1Lb.htm"">Return</a></body></html>\r\n\0","<p><a href=""/SetEthinfo.htm"">Return</a></body></html>\r\n\0","<p><a href=""/SetE1info.htm"">Return</a></body></html>\r\n\0",\
                   "<p><a href=""/EqInfo.shtml"">Return</a></body></html>\r\n\0","<p>Reboot success! \r\n\0","<p>Loopback set Success!\r\n\0",\
                   "<p>Advance set Success!<p>Please Click Return then Reboot!\r\n\<p><a href=""/Reboot.htm"">Return</a></body></html>\r\n\0","Parse form errro!\r\n\0",\
                   "<p>Deffault Parameter Recovery Success! Please Click Return then Reboot !\r\n<p><a href=""/Reboot.htm"">Return</a></body></html>\r\n\0"};
xstring  PWDChange{"<p>New password will be applied after you reboot system!\r\n\0","<p>New password and Confirm new password is not the same!\r\n\0","<p>Current password input incorrect!\r\n\0"};
xstring  CgiRetStr{"HTTP/1.0 200 OK\r\n Date: %s\r\n Content-Type: text/html\r\n\r\n <HTML><HEAD><TITLE>Success</TITLE></HEAD><body><br><p align=center>Configuration Success!</p></body></HTML>","1"};
/*** EndHeader */

/*** BeginHeader */
#endif
/*** EndHeader */

⌨️ 快捷键说明

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