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

📄 cc_mailcontrol.h

📁 Linux平台环境下
💻 H
字号:
#ifndef _CC_MAILCONTROL_H
#define _CC_MAILCONTROL_H

#define DEST_PORT 25

//邮件头信息结构体
typedef struct _cc_mailhead
{
	char servername[51];		//邮件服务器地址
	char username[26];			//用户名
	char password[26];			//密码
	char addr_source[51];		//源地址
	char addr_dest[51];			//目的地地址
	char title[201];			//邮件内容标题
	char use_serverchk[2];		//是否启用服务器验证
}cc_mailhead;

/*****************************************************/
//初始化邮件头信息结构体
//para1:		cc_mailhead *my_mailhead							邮件头信息结构体指针
//para2:		char *servername		lensizeof(servername)<=51	邮件服务器名
//para3:		char *username			lensizeof(username)<=26		用户名
//para4:		char *password			lensizeof(password)<=26		用户密码
//para5:		char *addr_source		lensizeof(addr_source)<=51	源地址
//para6:		char *addr_dest			lensizeof(addr_dest)<=51	目的地地址
//para7:		char *title				lensizeof(title)<=201		邮件内容标题
//return code:	
//				-1:	邮件服务器名长度超出
//				-2: 用户名长度超出
//				-3: 用户密码长度超出
//				-4: 源地址长度超出
//				-5: 目的地地址长度超出
//				-6: 邮件内容标题长度超出
//				 1:	初始化邮件头信息结构体成功
/*****************************************************/
int Build_Mail_HeadStruct(cc_mailhead *p_str_mailhead, char *servername, char *username, char *password, char *addr_source, char *addr_dest, char *title, char *use_serverchk);

/*****************************************************/
//拼接出信封字符串					
//para1:		cc_mailhead *my_mailhead	邮件头信息结构体指针
//return code:	
//				 1:	拼接信封成功
/*****************************************************/
int Build_Mail_Head(cc_mailhead *my_mailhead, char *head);//保证head长度>=650

/*****************************************************/
//拼接出信体字符串
//para1:		char *content	邮件正文部分的内容		lensizeof(content)<=1200
//para2:		char *body		存放拼接后的信体字符串	lensizeof(body)>=1310
//return code:	
//				-1:	存放邮件内容的内存区域太大,存在内存溢出的危险
//				 1: 拼接信体成功
/*****************************************************/
int Build_Mail_Content(char *content, char *body);//保证body长度>=1300

/*****************************************************/
//发送邮件
//para1:		cc_mailhead *my_mailhead		邮件头信息结构体指针
//para2:		char *content					信件正文部分字符串	lensizeof(content)<=1200
//return code:	
//				-1:	存放邮件内容的内存区域太大,存在内存溢出的危险
//				-2:	通过邮件服务器名得到IP地址失败
//				-3: 创建Socket套接字失败
//				-4: 连接SMTP主机失败
//				-5: 发送信封前Socket套接字不可写
//				-6: 发送信封失败
//				-7: 发送信体前Socket套接字不可写
//				-8: 发送信体失败
//				-9: 发送结束标记前Socket套接字不可写
//				-10: 发送结束标记失败
//				-11: 发送退出标记前Socket套接字不可写
//				-12: 发送退出标记失败
//				 1: 发送邮件成功
/*****************************************************/
int Send_Mail(cc_mailhead *my_mailhead, char *content);

/*****************************************************/
//检查套接字是否可写
//para1:		int *fd		套接字指针
//para2:		int sec		会话超时的秒数	当 sec=-1 时, 会话永远不超时直至会话完毕
//para3:		int usec	会话超时的微秒数	
//return code:	
//				-1:	套接字不可写
//				 1:	套接字可写
/*****************************************************/
int CheckWriteBuf(int *fd, int sec, int usec);

/*****************************************************/
//根据邮件服务器名得到IP地址
//para1:		char *hostname		邮件服务器名
//para2:		char* ip_addr		邮件服务器IP地址
//return code:	
//				-1:	通过邮件服务器名得到IP地址失败
//				 1:	通过邮件服务器名得到IP地址成功
/*****************************************************/
int GetIpByHostName(char *hostname, char* ip_addr);

#endif//_CC_MAILCONTROL_H

⌨️ 快捷键说明

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