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

📄 asixmail.h

📁 一个操作系统源代码 用于嵌入式设备 在Vc++环境下仿真 成功移植到多款处理器上
💻 H
字号:

#ifndef _ASIXMAIL_H
#define _ASIXMAIL_H


#define DIAL_LINE
//#define GSM_LINE

#define ASIX_DEBUG //for debugging in asixmail upper code

extern unsigned char 	asix[];/*defined in kb_data.c Lingming 2000/4/21*/


#define MAILREADED		0x01
#define MAILUNREADED	        0x02
#define MAILSENT		0x03
#define MAILUNSENT		0x04
#define EMPTYINDEX		0xff
#define MAX_PULLLISTNUM         10
#define NOINPUT		0x0
#define SHOUXIE		0x01
#define FUHAO		0x02
#define SHUZI		0x04
#define PINYING		0x08
#define YINGWEN_U	0x10
#define YINGWEN_L	0x20
#define BOHAO		0x40
#define ALLINPUT	0x3f

extern P_U8    	OrigFlashPoint;
extern P_U8		UserFlashPoint;
extern P_U8		RamhPoint;

#define MAXBOXITEM		30                 /*in fact when user save mail , there only MAXBOXITEM-1 is available*/
				                                  /* the last one is used as boundary*/	
 extern char		*OutSideMail[MAXBOXITEM];// the outside mail buffer pointer
 extern U8		MailChanged;
 extern char 		send_mark[MAXBOXITEM];
 extern  const char	ASIX_version[];
 extern  U8             Datatemp[0x10000];
 extern  U8             Dataspace[40000];
  
struct zhangcfg{
	char 	dns[16];
	char 	smtp[31];
	char	popser[31];
	char	popacc[19];
	char	poppass[19];
	char	dialnum[31];
	char	dialacc[19];
	char	dialpass[19];
/*#ifdef GSMSMS
	char 	smscenter[14];
	char 	smsgateway[14];
#endif*/

};
extern struct zhangcfg *Cfg;

struct inbox_index {
	
	U8	flag;
	U16	headoff;/*this offset is refered to INBOXHEAD*/
	U16	len;
	char	msg_digest[16];
	U32	reserved;
	
	
};

extern struct inbox_index *InboxIndex;

struct outbox_index {
	
	
	U8	flag;
	U16	headoff;/*this offset is refered to OUTBOXHEAD*/
	U16	len;
	U32	reserved;
	U8	reserved2;
};

extern struct outbox_index *OutboxIndex;



struct  cfg_wizardtemp {
		U16	len;
		U8	dft_input;
		U8	allow_input;
		void 	*history;
};


struct mail_head {
	char	*from;
	char	*to;
	char	*subject;
	char	*date;
	U8	flag;
	U8	index;
	char 	*text;
};

struct asix_state {
	U8	inboxnum;
	U8	outboxnum;
	U8	sentboxnum;
	U16	inbyte;
	U16	outbyte;
	U16	sentbyte;
};

extern struct asix_state ASIX_Stat;

#define ASIX_ADDR_NUM	100
struct asix_addr {
	char	*name;
	char	*addr;
	U16	hits;	
};
extern struct asix_addr	AsixAddr[];

struct newmail_his {
	char 	str[60];
	U16	hits;
};

extern struct newmail_his from_his[];
extern struct newmail_his to_his[];

	

#define INBOX_SPACE		0xa000	/*40960 bytes*/
#define CHECK_CHAR		0x7e	/*~*/

#define NETCFG_HEAD		10
#define INBOX_INDEX_HEAD	(NETCFG_HEAD+sizeof(struct netcfg)+4)
#define OUTBOX_INDEX_HEAD	(INBOX_INDEX_HEAD+MAXBOXITEM*sizeof(struct inbox_index)+4)
#define INBOX_HEAD		(OUTBOX_INDEX_HEAD+MAXBOXITEM*sizeof(struct outbox_index)+4)
#define OUTBOX_HEAD		(INBOX_HEAD+INBOX_SPACE+4)


//STATUS	InputString(char *warning_text,U8 mode,char *input_string,U8 string_len);
void mailmain(void);
void initAsix(void);
char *readline(char *bufptr);
void rip(char *s);
char * rip1(char *s);
U32 aton(s);
U8 MCheckFlash(char *fhead);

#define MAILFORMAT	0x1
#define MAILSAVE	0x0
U8 MFlashWrite(char *fhead,unsigned char mode);

U8 MFlashFix(void);

#define DELINBOX	0x1
#define DELOUTBOX	0x2
U8 DelMail(U8 index,U8 mode, U8 confirm);

#define SAVEINBOX	0x1
#define SAVEOUTBOX	0x2
U8 SaveMail(char *buf,U8 mode);


#define NEW_MAIL	0x0
#define REPLY_MAIL	0x1
#define EDIT_MAIL	0x2
#define OUTSIDE_MAIL	0x3
#define RESEND_MAIL	0x4
U8 NewMail(struct mail_head *reply, U8 mode);
//U8 OutsideMail(char *to, char *text);

#define INBOXLIST	0x1
#define OUTBOXLIST	0x2
#define SENTBOXLIST	0x3
U8 MailBox(U8 mode);
U8 ReadMail(struct mail_head *mailhead, U8 mode);


U8 SendMail(void);
U8 ReceiveMail(P_U8 mailpoint);
U8 ClearReadMail(void);
extern char *DToS(U16 num);

void ASIXstat(void);
#endif	

⌨️ 快捷键说明

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