summaryrefslogtreecommitdiffstats
path: root/kioslave/pop3/pop3.h
diff options
context:
space:
mode:
Diffstat (limited to 'kioslave/pop3/pop3.h')
-rw-r--r--kioslave/pop3/pop3.h133
1 files changed, 0 insertions, 133 deletions
diff --git a/kioslave/pop3/pop3.h b/kioslave/pop3/pop3.h
deleted file mode 100644
index 60b23c3e8..000000000
--- a/kioslave/pop3/pop3.h
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- * Copyright (c) 1999,2000 Alex Zepeda
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- */
-
-#ifndef _POP3_H
-#define _POP3_H
-
-#include <sys/types.h>
-#include <sys/time.h>
-
-#include <stdio.h>
-
-#include <tqstring.h>
-
-#include <kio/tcpslavebase.h>
-
-#define MAX_PACKET_LEN 4096
-
-class POP3Protocol:public TDEIO::TCPSlaveBase {
-public:
- POP3Protocol(const TQCString & pool, const TQCString & app, bool SSL);
- virtual ~ POP3Protocol();
-
- virtual void setHost(const TQString & host, int port,
- const TQString & user, const TQString & pass);
-
- virtual void special(const TQByteArray & aData);
- virtual void get(const KURL & url);
- virtual void stat(const KURL & url);
- virtual void del(const KURL & url, bool isfile);
- virtual void listDir(const KURL & url);
-
-protected:
-
- ssize_t myRead(void *data, ssize_t len);
- ssize_t myReadLine(char *data, ssize_t len);
-
- /**
- * This returns the size of a message as a long integer.
- * This is useful as an internal member, because the "other"
- * getSize command will emit a signal, which would be harder
- * to trap when doing something like listing a directory.
- */
- size_t realGetSize(unsigned int msg_num);
-
- /**
- * Send a command to the server. Using this function, getResponse
- * has to be called separately.
- */
- bool sendCommand(const char *cmd);
-
- enum Resp{Err, Ok, Cont, Invalid};
- /**
- * Send a command to the server, and wait for the one-line-status
- * reply via getResponse. Similar rules apply. If no buffer is
- * specified, no data is passed back.
- */
- Resp command(const char *buf, char *r_buf = 0, unsigned int r_len = 0);
-
- /**
- * All POP3 commands will generate a response. Each response will
- * either be prefixed with a "+OK " or a "-ERR ". The getResponse
- * function will wait until there's data to be read, and then read in
- * the first line (the response), and copy the response sans +OK/-ERR
- * into a buffer (up to len bytes) if one was passed to it.
- */
- Resp getResponse(char *buf, unsigned int len, const char *command);
-
- /** Call int pop3_open() and report an error, if if fails */
- void openConnection();
-
- /**
- * Attempt to properly shut down the POP3 connection by sending
- * "QUIT\r\n" before closing the socket.
- */
- void closeConnection();
-
- /**
- * Attempt to initiate a POP3 connection via a TCP socket. If no port
- * is passed, port 110 is assumed, if no user || password is
- * specified, the user is prompted for them.
- */
- bool pop3_open();
- /**
- * Authenticate via APOP
- */
- int loginAPOP( char *challenge, TDEIO::AuthInfo &ai );
-
- bool saslInteract( void *in, TDEIO::AuthInfo &ai );
- /**
- * Authenticate via SASL
- */
- int loginSASL( TDEIO::AuthInfo &ai );
- /**
- * Authenticate via traditional USER/PASS
- */
- bool loginPASS( TDEIO::AuthInfo &ai );
-
- int m_cmd;
- unsigned short int m_iOldPort;
- struct timeval m_tTimeout;
- TQString m_sOldServer, m_sOldPass, m_sOldUser;
- TQString m_sServer, m_sPass, m_sUser;
- bool m_try_apop, m_try_sasl, opened, supports_apop;
- TQString m_sError;
- char readBuffer[MAX_PACKET_LEN];
- ssize_t readBufferLen;
-};
-
-#endif