Annotation of parser3/src/classes/smtp/smtp.h, revision 1.1

1.1     ! paf         1: /** @file
        !             2:        Parser: SMTP sender decl.
        !             3: 
        !             4:        Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com)
        !             5: 
        !             6:        Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf)
        !             7: 
        !             8:        $Id: mail.C,v 1.3 2001/04/07 12:13:13 paf Exp $
        !             9: */
        !            10: 
        !            11: #include <winsock.h>
        !            12: 
        !            13: #include "pa_pool.h"
        !            14: #include "pa_string.h"
        !            15: 
        !            16: //////////////////////////////////////////////////////////////////////////////
        !            17: 
        !            18: #define SOCKET_BUFFER_SIZE     512
        !            19: 
        !            20: #define ERR_SENDING_DATA               4002
        !            21: #define ERR_NOT_A_SOCKET               4010
        !            22: #define ERR_CLOSING                    4012
        !            23: #define WAIT_A_BIT                     4013
        !            24: 
        !            25: #define MAXOUTLINE 255
        !            26: 
        !            27: //////////////////////////////////////////////////////////////////////////////
        !            28: 
        !            29: class SMTP : public Pooled {
        !            30:     char            *in_buffer;
        !            31:     char            *out_buffer;
        !            32:     unsigned int       in_index;
        !            33:     unsigned int       out_index;
        !            34:     unsigned int       in_buffer_total;
        !            35:     unsigned int       out_buffer_total;
        !            36:     unsigned int       last_winsock_error;
        !            37:     fd_set             fds;
        !            38:     struct timeval     timeout;
        !            39: 
        !            40:     SOCKET     the_socket;
        !            41: 
        !            42:        char    my_hostname[1024];
        !            43: 
        !            44:     CHAR    ServerProtocol[100];
        !            45:     CHAR    RemoteAddress[100];
        !            46:     CHAR    RemoteHost[100];
        !            47:     CHAR    RemoteUser[100];
        !            48:     CHAR    HttpAccept[100];
        !            49:     CHAR    HttpUserAgent[256];
        !            50: 
        !            51:     CHAR    FirstName[100];
        !            52:     CHAR    LastName[100];
        !            53:     CHAR    WebUse[100];
        !            54:     CHAR    EMail[100];
        !            55:     CHAR    HomePage[100];
        !            56:     CHAR    text[500];
        !            57: 
        !            58:        const String& origin_string;
        !            59: 
        !            60: public:
        !            61:        SMTP(Pool& pool, const String& aorigin_string);
        !            62: 
        !            63:     // smtp.C
        !            64:        void    Send(char *, char *, const char *,  char *, char *);
        !            65:        BOOL    MakeSmtpHeader(char *, char *, char *, char *);
        !            66:        void    prepare_message(char *, char *,  char *, char *);
        !            67:        void    open_socket(char *, char *);
        !            68:        int             get_line(void);
        !            69:        void    SendSmtpError(const char *);
        !            70:        void    transform_and_send_edit_data(const char *);
        !            71:        void    send_data(const char *);
        !            72:        void    ConnectToHost(char *, char *);
        !            73:        int             GetBuffer(int);
        !            74:        int             GetChar(int, char *);
        !            75:        void    SendLine(const char *, unsigned long);
        !            76:        void    SendBuffer(const char *, unsigned long);
        !            77:        void    FlushBuffer();
        !            78:        BOOL    CloseConnect();
        !            79: 
        !            80:     // comms.C
        !            81:     int      IsAddressARawIpaddress(char *);
        !            82:     int      ResolveService(char *, int *);
        !            83:     int      ResolveHostname(char *, struct sockaddr_in *);
        !            84:     int      GetAndSetTheSocket(SOCKET *);
        !            85:     int      GetConnection(SOCKET, struct sockaddr_in *);
        !            86:     void     MiscSocketSetup(SOCKET, fd_set *, struct timeval *);
        !            87:     void     ShowError(char *);
        !            88: };
        !            89: 

E-mail: