00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00064 #ifndef INCLUDE_POP3_CLIENT_H
00065 #define INCLUDE_POP3_CLIENT_H
00066
00067 #include<inet/datatypes.h>
00068
00069 #define POP3C_SENDERMAXLEN 30
00072 #define POP3C_SUBJECTMAXLEN 30
00076 #define POP3C_TOUT 20
00085 struct pop3c_struct
00086 {
00087 UINT8 state;
00088 UINT32 remip;
00089 UINT16 remport;
00090 INT8 sochandle;
00091 UINT8 tmrhandle;
00092 UINT8 unacked;
00093 UINT16 msgtotal;
00094 UINT16 curmsgindex;
00095 UINT32 curmsgtotlen;
00096 UINT16 curmsghlen;
00097 UINT8 headerbuf[9];
00098 UINT8 charsinheaderbuf;
00099 UINT8 from[POP3C_SENDERMAXLEN];
00100 UINT8 subject[POP3C_SUBJECTMAXLEN];
00102 };
00103
00104
00105
00106
00107 #define POP3C_UNINITIALIZED 1
00108 #define POP3C_CLOSED 2
00109 #define POP3C_OPEN_REQUESTED 3
00110 #define POP3C_CONNECTIONOPEN_SENT 4
00111 #define POP3C_CONNECTION_OPENED 5
00112 #define POP3C_SERVER_READY 6
00113 #define POP3C_USERNAME_SENT 7
00114 #define POP3C_USERNAME_ACKED 8
00115 #define POP3C_PASSWORD_SENT 9
00116 #define POP3C_PASSWORD_ACKED 10
00117 #define POP3C_STAT_SENT 11
00118 #define POP3C_STAT_GET 12
00119 #define POP3C_LIST_SENT 13
00120 #define POP3C_LIST_GET 14
00121 #define POP3C_TOP0_SENT 15
00122 #define POP3C_RECEIVING_HEADER 16
00123 #define POP3C_RECEIVING_HDR_FROM 17
00124 #define POP3C_RECEIVING_HDR_SUBJ 18
00125 #define POP3C_TOP0_GET 19
00126 #define POP3C_RETR_SENT 20
00127 #define POP3C_RECEIVING_MSG_HEADER 21
00128 #define POP3C_RECEIVING_MSG 22
00129 #define POP3C_MESSAGE_RECEIVED 23
00130 #define POP3C_DELE_SENT 24
00131 #define POP3C_DELE_ACKED 25
00132 #define POP3C_QUIT_SENT 26
00133 #define POP3C_QUIT_ACKED 27
00135 #define POP3C_OK '+'
00136
00137
00138
00139
00140 INT8 pop3c_connect(UINT32, UINT16);
00141 void pop3c_init(void);
00142 UINT8 pop3c_getstate(void);
00143 INT32 pop3c_eventlistener(INT8, UINT8, UINT32, UINT32);
00144 void pop3c_run(void);
00145 void pop3c_senduser(void);
00146 void pop3c_sendpassword(void);
00147 void pop3c_sendstat(void);
00148 void pop3c_sendlist(UINT16);
00149 void pop3c_sendtop(UINT16);
00150 void pop3c_sendretr(UINT16);
00151 void pop3c_senddele(UINT16);
00152 void pop3c_sendquit(void);
00153 void pop3c_changestate(UINT8);
00154 INT16 pop3c_parsestat(void);
00155 INT16 pop3c_parselist(void);
00156
00157
00158
00159
00160
00161 void pop3c_error(void);
00162 void pop3c_data(UINT8);
00163 void pop3c_allok(void);
00164 void pop3c_messages(UINT16);
00165 INT16 pop3c_msgoffer(UINT16, UINT32, UINT8*, UINT8*);
00166 INT8 pop3c_getusername(UINT8*);
00167 INT8 pop3c_getpassword(UINT8*);
00168
00169 #endif