summaryrefslogtreecommitdiffstats
path: root/kioslave/sftp/kio_sftp.h
diff options
context:
space:
mode:
Diffstat (limited to 'kioslave/sftp/kio_sftp.h')
-rw-r--r--kioslave/sftp/kio_sftp.h149
1 files changed, 0 insertions, 149 deletions
diff --git a/kioslave/sftp/kio_sftp.h b/kioslave/sftp/kio_sftp.h
deleted file mode 100644
index e9120452b..000000000
--- a/kioslave/sftp/kio_sftp.h
+++ /dev/null
@@ -1,149 +0,0 @@
-/***************************************************************************
- sftpProtocol.h - description
- -------------------
- begin : Sat Jun 30 20:08:47 CDT 2001
- copyright : (C) 2001 by Lucas Fisher
-***************************************************************************/
-
-/***************************************************************************
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- ***************************************************************************/
-#ifndef __kio_sftp_h__
-#define __kio_sftp_h__
-
-#include <tqstring.h>
-#include <tqcstring.h>
-#include <tqobject.h>
-
-#include <kurl.h>
-#include <kio/global.h>
-#include <kio/slavebase.h>
-#include <kdebug.h>
-
-#include "process.h"
-#include "sftpfileattr.h"
-#include "ksshprocess.h"
-
-#define KIO_SFTP_DB 7120
-
-
-class sftpProtocol : public TDEIO::SlaveBase
-{
-
-public:
- sftpProtocol(const TQCString &pool_socket, const TQCString &app_socket);
- virtual ~sftpProtocol();
- virtual void setHost(const TQString& h, int port, const TQString& user, const TQString& pass);
- virtual void get(const KURL& url);
- virtual void listDir(const KURL& url) ;
- virtual void mimetype(const KURL& url);
- virtual void stat(const KURL& url);
- virtual void copy(const KURL &src, const KURL &dest, int permissions, bool overwrite);
- virtual void put(const KURL& url, int permissions, bool overwrite, bool resume);
- virtual void closeConnection();
- virtual void slave_status();
- virtual void del(const KURL &url, bool isfile);
- virtual void chmod(const KURL& url, int permissions);
- virtual void symlink(const TQString& target, const KURL& dest, bool overwrite);
- virtual void rename(const KURL& src, const KURL& dest, bool overwrite);
- virtual void mkdir(const KURL&url, int permissions);
- virtual void openConnection();
-
-private: // Private variables
- /** True if ioslave is connected to sftp server. */
- bool mConnected;
-
- /** Host we are connected to. */
- TQString mHost;
-
- /** Port we are connected to. */
- int mPort;
-
- /** Ssh process to which we send the sftp packets. */
- KSshProcess ssh;
-
- /** Username to use when connecting */
- TQString mUsername;
-
- /** User's password */
- TQString mPassword;
-
- /** Message id of the last sftp packet we sent. */
- unsigned int mMsgId;
-
- /** Type of packet we are expecting to receive next. */
- unsigned char mExpected;
-
- /** Version of the sftp protocol we are using. */
- int sftpVersion;
-
- struct Status
- {
- int code;
- TDEIO::filesize_t size;
- TQString text;
- };
-
-private: // private methods
- bool getPacket(TQByteArray& msg);
-
- /* Type is a sftp packet type found in .sftp.h'.
- * Example: SSH2_FXP_READLINK, SSH2_FXP_RENAME, etc.
- *
- * Returns true if the type is supported by the sftp protocol
- * version negotiated by the client and server (sftpVersion).
- */
- bool isSupportedOperation(int type);
- /** Used to have the server canonicalize any given path name to an absolute path.
- This is useful for converting path names containing ".." components or relative
- pathnames without a leading slash into absolute paths.
- Returns the canonicalized url. */
- int sftpRealPath(const KURL& url, KURL& newUrl);
-
- /** Send an sftp packet to stdin of the ssh process. */
- bool putPacket(TQByteArray& p);
- /** Process SSH_FXP_STATUS packets. */
- void processStatus(TQ_UINT8, const TQString& message = TQString::null);
- /** Process SSH_FXP_STATUS packes and return the result. */
- Status doProcessStatus(TQ_UINT8, const TQString& message = TQString::null);
- /** Opens a directory handle for url.path. Returns true if succeeds. */
- int sftpOpenDirectory(const KURL& url, TQByteArray& handle);
- /** Closes a directory or file handle. */
- int sftpClose(const TQByteArray& handle);
- /** Send a sftp command to rename a file or directoy. */
- int sftpRename(const KURL& src, const KURL& dest);
- /** Set a files attributes. */
- int sftpSetStat(const KURL& url, const sftpFileAttr& attr);
- /** Sends a sftp command to remove a file or directory. */
- int sftpRemove(const KURL& url, bool isfile);
- /** Creates a symlink named dest to target. */
- int sftpSymLink(const TQString& target, const KURL& dest);
- /** Get directory listings. */
- int sftpReadDir(const TQByteArray& handle, const KURL& url);
- /** Retrieves the destination of a link. */
- int sftpReadLink(const KURL& url, TQString& target);
- /** Stats a file. */
- int sftpStat(const KURL& url, sftpFileAttr& attr);
- /** No descriptions */
- int sftpOpen(const KURL& url, const TQ_UINT32 pflags, const sftpFileAttr& attr, TQByteArray& handle);
- /** No descriptions */
- int sftpRead(const TQByteArray& handle, TDEIO::filesize_t offset, TQ_UINT32 len, TQByteArray& data);
- /** No descriptions */
- int sftpWrite(const TQByteArray& handle, TDEIO::filesize_t offset, const TQByteArray& data);
-
- /** Performs faster upload when the source is a local file... */
- void sftpCopyPut(const KURL& src, const KURL& dest, int mode, bool overwrite);
- /** Performs faster download when the destination is a local file... */
- void sftpCopyGet(const KURL& dest, const KURL& src, int mode, bool overwrite);
-
- /** */
- Status sftpGet( const KURL& src, TDEIO::filesize_t offset = 0, int fd = -1);
- void sftpPut( const KURL& dest, int permissions, bool resume, bool overwrite, int fd = -1);
-};
-#endif