• 大小: 1.14MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-11-21
  • 语言: C/C++
  • 标签: smtp  pop3  

资源简介

c++编写的smtp和pop3服务器实现,简单小巧,运行流畅,支持多客户端。

资源截图

代码片段和文件信息

/*****************************************************************************************************
Program File Name: popserver.cpp
Program Begin Date: 2007-4-16
Program Description: A Simple pop3 server
Author: wangjianlin
*****************************************************************************************************/
#include 
#include 
#include 
#include 
#pragma comment(lib “ws2_32.lib“) 
/*****************************************************************************************************/
#define MAX_CONNECTION_NUM 50         //定义最大连接数
#define POP_SERVER_PORT 110          //定义服务器端口
#define BUFFER_SIZE 1024             //定义缓冲区大小
/*****************************************************************************************************/
u_short serverPort=POP_SERVER_PORT;                     //定义服务器端口为默认端口
char *readBuf;                                           //定义接受数据缓冲区
WSAData wsaData;                                         //定义WSAData结构
SOCKET clientSocket[MAX_CONNECTION_NUM];                 //定义所有客户端socket
SOCKET serverSocket;                                     //定义服务器监听socket
struct sockaddr_in clientSockAddr[MAX_CONNECTION_NUM];   //定义所有客户端信息
struct sockaddr_in server;                               //保存要设置的服务器信息
/*****************************************************************************************************/
struct UserInfo                                          //定义用户信息结构
{                                                       
  char username[20];                                   //用户名
char password[30];                                   //密码
};
struct ClientContent                                     //客户端输入的信息                        
{
char command[10];                                    //保存命令字符串
char *param;                                         //指向命令参数
};
struct CommandFinished                                   //命令执行状态结构共2条命令
{
char USER;                                           //如果该命令已经成功执行的话
char PASS;                                           //就为字符‘Y‘否则为0
};
/*****************************************************************************************************/
DWORD WINAPI PopBeginService(LPVOID lpParam);            //对客户进行服务的函数,其中lpParam传入服务Socket序号
void WriteClientInfo(int index);                         //index为传入的客户Socket序号
void CommandHandle(int index);                           //对index位置的客户命令进行处理
void GetCommandAndContent(char *bufClientContent *clientContent); //分析buf指向的信息为命令和参数
int GetFileSize(char *fileNamestruct UserInfo *userInfo); //得到文件fileName的大小
int GetMailFileTotalSize(UserInfo *userInfo);           //得到某个用户邮件总大小
int GetMailFileNum(UserInfo *userInfo);                  //得到某个用户邮件数目
void SortMailFile(UserInfo *userInfo);                  //对删除后的邮件重新排序
void USER_Handle(int indexCommandFinished *commandFinishedchar *paramUserInfo *userInfo); //处理USER命令
void PASS_Handle(int indexCommandF

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      43401  2007-05-12 17:51  MailSystemServer\popserver.cpp

     文件      43323  2007-05-12 16:23  MailSystemServer\smtpserver.cpp

     文件      15223  2007-05-14 20:41  MailSystemServer\TestSMTP\Debug\hao.obj

     文件     170476  2007-05-14 20:41  MailSystemServer\TestSMTP\Debug\KEHU.ilk

     文件    3645260  2007-04-23 14:13  MailSystemServer\TestSMTP\Debug\KEHU.pch

     文件     508928  2007-05-14 20:41  MailSystemServer\TestSMTP\Debug\KEHU.pdb

     文件     164864  2007-05-14 20:43  MailSystemServer\TestSMTP\Debug\vc60.idb

     文件      86016  2007-05-14 20:41  MailSystemServer\TestSMTP\Debug\vc60.pdb

     文件       4259  2007-04-10 15:58  MailSystemServer\TestSMTP\KEHU.dsp

     文件        533  2007-04-10 15:38  MailSystemServer\TestSMTP\KEHU.dsw

     文件      41984  2007-05-14 20:44  MailSystemServer\TestSMTP\KEHU.ncb

     文件      48640  2007-05-14 20:44  MailSystemServer\TestSMTP\KEHU.opt

     文件       1240  2007-05-14 20:41  MailSystemServer\TestSMTP\KEHU.plg

     文件         24  2007-04-10 21:36  MailSystemServer\TestSMTP\ServerLog.txt

     文件       3294  2007-05-14 20:41  MailSystemServer\TestSMTP\testSMTP.cpp

     文件          0  2007-05-13 21:58  MailSystemServer\user.dat

     目录          0  2007-04-10 15:38  MailSystemServer\TestSMTP\Debug

     目录          0  2007-04-10 15:38  MailSystemServer\TestSMTP

     目录          0  2007-05-23 21:11  MailSystemServer

----------- ---------  ---------- -----  ----

              4777465                    19


评论

共有 条评论