/* GNU Mailutils -- a suite of utilities for electronic mail Copyright (C) 2004-2021 Free Software Foundation, Inc. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library. If not, see . */ #ifndef _MUCPP_POP3_H #define _MUCPP_POP3_H #include #include #include #include #include namespace mailutils { class Pop3 { protected: mu_pop3_t pop3; Stream* pStream; public: Pop3 (); Pop3 (const mu_pop3_t); ~Pop3 (); void set_carrier (const Stream& carrier); Stream& get_carrier (); void connect (); void disconnect (); void set_timeout (int timeout); int get_timeout (); void apop (const char* name, const char* digest); void stls (); Iterator& capa (bool reread); void dele (unsigned int msgno); size_t list (unsigned int msgno); Iterator& list_all (); void noop (); void pass (const char* pass); void quit (); Stream& retr (unsigned int msgno); void rset (); void stat (size_t* count, mu_off_t* octets); Stream& top (unsigned int msgno, unsigned int lines); std::string uidl (unsigned int msgno); Iterator& uidl_all (); void user (const char* user); void getline (); void response (size_t* nread); void sendline (const char* line); }; } #endif // not _MUCPP_POP3_H