Commit 65eb1d55 authored by ck's avatar ck
Browse files

Replace SSH library.

parent e43287fb
TEMPLATE = subdirs
CONFIG += ordered
SUBDIRS += botan \
net7ssh
SUBDIRS += botan
Andrew Useckas <andrew@netsieben.com>
Keef Aragon <keef@netsieben.com>
\ No newline at end of file
1.3.2
Random Number Generator is now thread safe. Thanks to Jack Llloyd of Radnombit.
Timeouts in waitFor() and sendCmd() now work as they are supposed to.
Fixed include issues.
Fixed handling of NULL packet.
1.3.1
Channel ID managment rewriten and ID clashes that caused multiple issues are now fixed.
Fixed cleanup procedures after timed out login.
Fixed cleanup procedures after remote end goes away.
Fixed variable types for MSVS compatbility.
Fixed thred sleep issues under Windows.
Fixed couple of small memory leaks.
1.3.0
Changes made to support new stable Botan 1.8.x crypto library.
Added macros for backward compatibility with Botan 1.6.x.
All strings returned by read() method are now NULL terminated.
All error message strings are now NULL terminated.
Fixed multiple race conditions related to late mutex locking.
Fixed multiple race conditions related to premature mutex unlocking.
Fixed segfault when using cryptographic algorithms with block size > 64bit.
Added aes192-cbc algorithm support.
Fixed cleanup of connections after authentication failure.
Fixed SFTP crash after changing to non existent remote directory.
Updated examples.
Updated api docs.
1.2.7
Converted to cmake from auto* tools.
Moved thread functions into macros to avoid conflicts when linking to POSIX libraries in Windows.
Fixed a race condition in ne7ssh.cpp.
Fixed multiple memory leaks.
1.2.6
Fixed includes to compile with GCC 4.3.0.
Fixed the cleanup of timed out connections.
Fixed a race condition within ne7ssh.cpp.
Fixes for mingw32 compiler.
1.2.5
Fixed a typo preventing use of 3des-cbc (thanks to Henry Fann for the patch).
Fixed includes preventing compile in older versions of Linux.
Fixed memory relocation issue in ne7ssh destructor.
1.2.4
Added support for SSH2_MSG_USERAUTH_BANNER.
Fixed infinate loop in select_thread().
Other bug fixes.
1.2.3
Fixed error logging issue seen during authentication.
Added more detailed authentication error messages.
Adjusted the error reporting interface for easier porting.
Addressed debugging issues in the Windows port.
Included new code examples reflecting the changes to the error reporting interface.
1.2.2
Fixed premature communication thread termination.
Adjustments for MINGW compiler.
Other bugfixes.
1.2.1
Fixed buffer overflow in SFTP put() and get().
Mutex put in it's own class.
Code formatting fixed.
Other bugfixes.
1.2.0
Implemented Secure FTP client functionality.
Fixed mutex locking issues.
Fixed race conditions when running with multiple threads.
Added support for RSA host keys.
Added diffie-hellman-group14-sha1 key exchange algorithm support.
Added timeout variable to connect methods.
Other bugfixes.
1.1.6
Added support for Botan 1.5. Thanks to Jack Lloyd for the patch.
WIN32 related bugfixes.
Improved PEM file checking.
Other minor bugfixes.
1.1.5
Fixed DSA key generation.
Implemented single command execution.
Added Support for reading binary data.
Fixed getReceivedSize() method.
Error handling rewritten.
Fixed a few memory leaks.
Other bugfixes.
1.1
RSA and DSA public key authentication support added.
RSA and DSA key generation methods added.
All errors are handled through throwError() function.
Syslog functions removed.
Implemented getReceivedSize() method to support reading past /0 character in received stream.
Botan types changed to full types to avoid compatibility issues with WIN32.
WIN32 specific thread functions added.
Premature mutex unlocking in connection routines fixed.
Fixed prevLen variable initialization in waitFor method.
In Net7Sock class write() method, write() replaced with send().
In Net7Sock class read() method, read() replaced with recv().
Type definitions adjusted for WIN32 compatibility.
WIN32 socket functions implemented.
1.03
Initial stand alone release.
cmake_minimum_required(VERSION 2.0)
project(net7ssh CXX)
INCLUDE(CheckIncludeFileCXX)
check_include_file_cxx("botan/botan.h" HAVE_BOTAN)
if (NOT ${HAVE_BOTAN})
MESSAGE(FATAL_ERROR "Could not find Botan library.")
endif()
set(CMAKE_INSTALL_PREFIX "/usr")
add_subdirectory ( src )
include_directories ( src )
if ( UNIX )
SET(UNIX_STYLE_FLAGS 1)
SET(WIN32_STYLE_FLAGS 0)
EXECUTE_PROCESS(
COMMAND uname -a
OUTPUT_VARIABLE OS_ARCH
)
IF ( OS_ARCH MATCHES ".*SunOS.*" )
MESSAGE ("Making Changes for SunOS!")
SET(CMAKE_C_COMPILER "cc")
SET(CMAKE_CXX_COMPILER "CC")
SET(CMAKE_LINKER "cc")
SET(CMAKE_AR "/usr/ccs/bin/ar")
SET(CMAKE_CXX_FLAGS "-I/usr/local/include")
SET(CMAKE_SHARED_LINKER_FLAGS "-L/usr/local/lib")
SET(CMAKE_MODULE_LINKER_FLAGS "-L/usr/local/lib")
ENDIF ( OS_ARCH MATCHES ".*SunOS.*" )
ENDIF ( UNIX )
set(net7ssh_LIB_SRCS
src/crypt.cpp
src/crypt.h
src/ne7ssh.cpp
src/ne7ssh.h
src/ne7ssh_channel.cpp
src/ne7ssh_channel.h
src/ne7ssh_connection.cpp
src/ne7ssh_connection.h
src/ne7ssh_kex.cpp
src/ne7ssh_kex.h
src/ne7ssh_session.cpp
src/ne7ssh_session.h
src/ne7ssh_string.cpp
src/ne7ssh_string.h
src/ne7ssh_transport.cpp
src/ne7ssh_transport.h
src/ne7ssh_types.h
src/ne7ssh_keys.cpp
src/ne7ssh_keys.h
src/ne7ssh_error.cpp
src/ne7ssh_error.h
src/ne7ssh_sftp.cpp
src/ne7ssh_sftp.h
src/ne7ssh_sftp_packet.cpp
src/ne7ssh_sftp_packet.h
src/ne7ssh_mutex.cpp
src/ne7ssh_mutex.h)
add_library(ne7ssh STATIC ${net7ssh_LIB_SRCS})
add_library(net7ssh SHARED ${net7ssh_LIB_SRCS})
target_link_libraries(net7ssh botan)
set_target_properties(net7ssh PROPERTIES VERSION 0.3.1 SOVERSION 0)
########### install files ###############
install(TARGETS net7ssh LIBRARY DESTINATION lib)
install(FILES src/ne7ssh.h src/ne7ssh_types.h src/ne7ssh_error.h src/ne7ssh_mutex.h DESTINATION include)
install(FILES LICENSE.QPL AUTHORS INSTALL COPYING CHANGELOG DESTINATION share/doc/ne7ssh)
install(DIRECTORY doc DESTINATION share/doc/ne7ssh)
install(DIRECTORY doc/html DESTINATION share/doc/ne7ssh)
install(DIRECTORY examples DESTINATION share/doc/ne7ssh)
THE Q PUBLIC LICENSE
version 1.0
Copyright (C) 1999-2000 Troll Tech AS, Norway.
Everyone is permitted to copy and
distribute this license document.
The intent of this license is to establish freedom to share and change the
software regulated by this license under the open source model.
This license applies to any software containing a notice placed by the
copyright holder saying that it may be distributed under the terms of
the Q Public License version 1.0. Such software is herein referred to as
the Software. This license covers modification and distribution of the
Software, use of third-party application programs based on the Software,
and development of free software which uses the Software.
Granted Rights
1. You are granted the non-exclusive rights set forth in this license
provided you agree to and comply with any and all conditions in this
license. Whole or partial distribution of the Software, or software
items that link with the Software, in any form signifies acceptance of
this license.
2. You may copy and distribute the Software in unmodified form provided
that the entire package, including - but not restricted to - copyright,
trademark notices and disclaimers, as released by the initial developer
of the Software, is distributed.
3. You may make modifications to the Software and distribute your
modifications, in a form that is separate from the Software, such as
patches. The following restrictions apply to modifications:
a. Modifications must not alter or remove any copyright notices in
the Software.
b. When modifications to the Software are released under this
license, a non-exclusive royalty-free right is granted to the
initial developer of the Software to distribute your modification
in future versions of the Software provided such versions remain
available under these terms in addition to any other license(s) of
the initial developer.
4. You may distribute machine-executable forms of the Software or
machine-executable forms of modified versions of the Software, provided
that you meet these restrictions:
a. You must include this license document in the distribution.
b. You must ensure that all recipients of the machine-executable forms
are also able to receive the complete machine-readable source code
to the distributed Software, including all modifications, without
any charge beyond the costs of data transfer, and place prominent
notices in the distribution explaining this.
c. You must ensure that all modifications included in the
machine-executable forms are available under the terms of this
license.
5. You may use the original or modified versions of the Software to
compile, link and run application programs legally developed by you
or by others.
6. You may develop application programs, reusable components and other
software items that link with the original or modified versions of the
Software. These items, when distributed, are subject to the following
requirements:
a. You must ensure that all recipients of machine-executable forms of
these items are also able to receive and use the complete
machine-readable source code to the items without any charge
beyond the costs of data transfer.
b. You must explicitly license all recipients of your items to use
and re-distribute original and modified versions of the items in
both machine-executable and source code forms. The recipients must
be able to do so without any charges whatsoever, and they must be
able to re-distribute to anyone they choose.
c. If the items are not available to the general public, and the
initial developer of the Software requests a copy of the items,
then you must supply one.
Limitations of Liability
In no event shall the initial developers or copyright holders be liable
for any damages whatsoever, including - but not restricted to - lost
revenue or profits or other direct, indirect, special, incidental or
consequential damages, even if they have been advised of the possibility
of such damages, except to the extent invariable law, if any, provides
otherwise.
No Warranty
The Software and this license document are provided AS IS with NO WARRANTY
OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE.
Choice of Law
This license is governed by the Laws of Norway. Disputes shall be settled
by Oslo City Court.
Basic Installation Instructions
===============================
These are generic installation instructions.
NetSieben SSH Library requires Botan crypto library 1.4.9 or higher.
It can be found here:
http://botan.randombit.net
NetSieben SSH Library requires Cmake. Cmake software can be found here:
http://www.cmake.org
The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
`cmake .' to configure the package for your system.
2. Type `make all' to compile the package.
3. Type `make install' to install the programs and any data files and
documentation.
4. You can remove the program binaries and object files from the
source code directory by typing `make clean'.
THE Q PUBLIC LICENSE
version 1.0
Copyright (C) 1999-2000 Troll Tech AS, Norway.
Everyone is permitted to copy and
distribute this license document.
The intent of this license is to establish freedom to share and change the
software regulated by this license under the open source model.
This license applies to any software containing a notice placed by the
copyright holder saying that it may be distributed under the terms of
the Q Public License version 1.0. Such software is herein referred to as
the Software. This license covers modification and distribution of the
Software, use of third-party application programs based on the Software,
and development of free software which uses the Software.
Granted Rights
1. You are granted the non-exclusive rights set forth in this license
provided you agree to and comply with any and all conditions in this
license. Whole or partial distribution of the Software, or software
items that link with the Software, in any form signifies acceptance of
this license.
2. You may copy and distribute the Software in unmodified form provided
that the entire package, including - but not restricted to - copyright,
trademark notices and disclaimers, as released by the initial developer
of the Software, is distributed.
3. You may make modifications to the Software and distribute your
modifications, in a form that is separate from the Software, such as
patches. The following restrictions apply to modifications:
a. Modifications must not alter or remove any copyright notices in
the Software.
b. When modifications to the Software are released under this
license, a non-exclusive royalty-free right is granted to the
initial developer of the Software to distribute your modification
in future versions of the Software provided such versions remain
available under these terms in addition to any other license(s) of
the initial developer.
4. You may distribute machine-executable forms of the Software or
machine-executable forms of modified versions of the Software, provided
that you meet these restrictions:
a. You must include this license document in the distribution.
b. You must ensure that all recipients of the machine-executable forms
are also able to receive the complete machine-readable source code
to the distributed Software, including all modifications, without
any charge beyond the costs of data transfer, and place prominent
notices in the distribution explaining this.
c. You must ensure that all modifications included in the
machine-executable forms are available under the terms of this
license.
5. You may use the original or modified versions of the Software to
compile, link and run application programs legally developed by you
or by others.
6. You may develop application programs, reusable components and other
software items that link with the original or modified versions of the
Software. These items, when distributed, are subject to the following
requirements:
a. You must ensure that all recipients of machine-executable forms of
these items are also able to receive and use the complete
machine-readable source code to the items without any charge
beyond the costs of data transfer.
b. You must explicitly license all recipients of your items to use
and re-distribute original and modified versions of the items in
both machine-executable and source code forms. The recipients must
be able to do so without any charges whatsoever, and they must be
able to re-distribute to anyone they choose.
c. If the items are not available to the general public, and the
initial developer of the Software requests a copy of the items,
then you must supply one.
Limitations of Liability
In no event shall the initial developers or copyright holders be liable
for any damages whatsoever, including - but not restricted to - lost
revenue or profits or other direct, indirect, special, incidental or
consequential damages, even if they have been advised of the possibility
of such damages, except to the extent invariable law, if any, provides
otherwise.
No Warranty
The Software and this license document are provided AS IS with NO WARRANTY
OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE.
Choice of Law
This license is governed by the Laws of Norway. Disputes shall be settled
by Oslo City Court.
This diff is collapsed.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>ne7ssh.kdevelop: Class List</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="dirs.html"><span>Directories</span></a></li>
</ul>
</div>
<div class="tabs">
<ul>
<li class="current"><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
<li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
</ul>
</div>
</div>
<div class="contents">
<h1>Class List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table>
<tr><td class="indexkey"><a class="el" href="structconnStruct.html">connStruct</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="structNe7sshError_1_1Error.html">Ne7sshError::Error</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="structNe7SftpSubsystem_1_1fileAttrs.html">Ne7SftpSubsystem::fileAttrs</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classne7ssh.html">ne7ssh</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classne7ssh__channel.html">ne7ssh_channel</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classne7ssh__connection.html">ne7ssh_connection</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classne7ssh__crypt.html">ne7ssh_crypt</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classne7ssh__kex.html">ne7ssh_kex</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classne7ssh__keys.html">ne7ssh_keys</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classne7ssh__session.html">ne7ssh_session</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classne7ssh__string.html">ne7ssh_string</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classne7ssh__transport.html">ne7ssh_transport</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classNe7sshError.html">Ne7sshError</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classNe7sshSftp.html">Ne7sshSftp</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classNe7sshSftpPacket.html">Ne7sshSftpPacket</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="structNe7sshSftp_1_1sftpFile.html">Ne7sshSftp::sftpFile</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="structNe7sshSftp_1_1sftpFileAttrs.html">Ne7sshSftp::sftpFileAttrs</a></td><td class="indexvalue"></td></tr>
</table>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue May 5 14:10:41 2009 for ne7ssh.kdevelop by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>ne7ssh.kdevelop: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="dirs.html"><span>Directories</span></a></li>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
<li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
</ul>
</div>
</div>
<div class="contents">
<h1>Ne7SftpSubsystem Member List</h1>This is the complete list of members for <a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a>, including all inherited members.<p><table>
<tr bgcolor="#f0f0f0"><td><b>APPEND</b> enum value (defined in <a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a>)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#0bc632d1abdac46baedaad6f76636cba">cd</a>(const char *remoteDir)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#15cea19efa1b2ce91c0ed8c6710dee2b">chmod</a>(const char *remoteFile, const char *mode)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#b6ed2ff52f213c28d5186fe5e65e810b">chown</a>(const char *remoteFile, uint32_t uid, uint32_t gid=0)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#dca975297ba792499e46d1cb34bb39cb">closeFile</a>(uint32 fileID)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#9f850d3738bac612c5d97548c0924a87">errorNotInited</a>()</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td><code> [private]</code></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#a5078f3f824833954019ed851d24f04d">get</a>(const char *remoteFile, FILE *localFile)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#169ca7f6d634a762662914ffe715d139">getFileAttrs</a>(fileAttrs &amp;attrs, const char *filename, bool followSymLinks=true)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><b>inited</b> (defined in <a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a>)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td><code> [private]</code></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#9dc82cfe8ab7134a23ed1d9a8d812385">isDir</a>(const char *remoteFile)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#32d54e5da7a8b963f5d1c07b47b7a6d1">isFile</a>(const char *remoteFile)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#2e33455d3c7962e7ce4cf44ca5563005">ls</a>(const char *remoteDir, bool longNames=false)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#182111ca7e0873bfcac9f7970cba7d5d">mkdir</a>(const char *remoteDir)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#197400dfc6fa7ab90a7150800eb0ad2e">mv</a>(const char *oldFile, const char *newFile)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#86e3b1992107ac21d83345ed48c74e2f">Ne7SftpSubsystem</a>()</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#7949346f2c705b7d33a1201f71ea0353">Ne7SftpSubsystem</a>(class Ne7sshSftp *_sftp)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#e2de3ddfdace4f37680ffb9969bba017">openDir</a>(const char *dirname)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#7e2df0ba14cf164591912191bd0f756e">openFile</a>(const char *filename, uint8 mode)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><b>OVERWRITE</b> enum value (defined in <a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a>)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#44cde20b6c96d02ebe1314cc343327d2">put</a>(FILE *localFile, const char *remoteFile)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><b>READ</b> enum value (defined in <a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a>)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#110c09fc4eeadc93359ea3f3ced96f74">readFile</a>(uint32 fileID, uint64 offset=0)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#2cfe3fb14e7e21c84bf27828c424ec8c">rm</a>(const char *remoteFile)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#22339987ced8ffc3851b3d511b036db0">rmdir</a>(const char *remoteDir)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#4d7d02621a9a81b36a152c9c7abfffae">setTimeout</a>(uint32 _timeout)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><b>sftp</b> (defined in <a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a>)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td><code> [private]</code></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#b140ea998359cbcb4ab902a0f1ac0f7d">writeFile</a>(uint32 fileID, const uint8 *data, uint32 len, uint64 offset=0)</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#76285cf453a5b363a9cf79d071c44ada">writeMode</a> enum name</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
<tr class="memlist"><td><a class="el" href="classNe7SftpSubsystem.html#3b9899662d8b56efce4323b3d5253f08">~Ne7SftpSubsystem</a>()</td><td><a class="el" href="classNe7SftpSubsystem.html">Ne7SftpSubsystem</a></td><td></td></tr>
</table></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue May 5 14:10:42 2009 for ne7ssh.kdevelop by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>
<area shape="rect" href="$classNe7sshSftp.html" title="Ne7sshSftp" alt="" coords="547,149,643,176">
<area shape="rect" href="$classne7ssh__channel.html" title="ne7ssh_channel" alt="" coords="293,95,416,121">
<area shape="rect" href="$classne7ssh__string.html" title="ne7ssh_string" alt="" coords="12,21,121,48">
<area shape="rect" href="$classne7ssh__session.html" title="ne7ssh_session" alt="" coords="5,211,128,237">
<area shape="rect" href="$classne7ssh__crypt.html" title="ne7ssh_crypt" alt="" coords="301,216,408,243">
<area shape="rect" href="$classne7ssh__transport.html" title="ne7ssh_transport" alt="" coords="288,277,421,304">
<area shape="rect" href="$structNe7sshSftp_1_1sftpFile.html" title="Ne7sshSftp::sftpFile" alt="" coords="281,328,428,355">
<area shape="rect" href="$structNe7sshSftp_1_1sftpFileAttrs.html" title="Ne7sshSftp::sftpFileAttrs" alt="" coords="265,379,444,405">
a3599377bc7d09bac1983e35132d609e
\ No newline at end of file
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>ne7ssh.kdevelop: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="dirs.html"><span>Directories</span></a></li>