diff options
author | Aris Adamantiadis <aris@0xbadc0de.be> | 2005-08-26 00:25:01 +0000 |
---|---|---|
committer | Aris Adamantiadis <aris@0xbadc0de.be> | 2005-08-26 00:25:01 +0000 |
commit | e2bdc2f66c85d4d1a38b2511cb98da105cafcc24 (patch) | |
tree | c32b3d25c0e927d3bc7e9ecb943ce2549f1261df /libssh/sftp.c | |
parent | 35221f967ef5e9801c2496a7f10ced1408f9cd20 (diff) | |
download | libssh-e2bdc2f66c85d4d1a38b2511cb98da105cafcc24.tar.gz libssh-e2bdc2f66c85d4d1a38b2511cb98da105cafcc24.tar.xz libssh-e2bdc2f66c85d4d1a38b2511cb98da105cafcc24.zip |
sftp server implementation :)
at this time, basic support of opendir, readdir, lstat, etc.
just enough to "sftp" in and type ls.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@16 7dcaeef0-15fb-0310-b436-a5af3365683c
Diffstat (limited to 'libssh/sftp.c')
-rw-r--r-- | libssh/sftp.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/libssh/sftp.c b/libssh/sftp.c index a78a4b08..0d08b3c0 100644 --- a/libssh/sftp.c +++ b/libssh/sftp.c @@ -39,11 +39,8 @@ MA 02111-1307, USA. */ /* functions */ -static void sftp_packet_free(SFTP_PACKET *packet); void sftp_enqueue(SFTP_SESSION *session, SFTP_MESSAGE *msg); static void sftp_message_free(SFTP_MESSAGE *msg); -SFTP_PACKET *sftp_packet_read(SFTP_SESSION *sftp); -int sftp_packet_write(SFTP_SESSION *sftp,u8 type, BUFFER *payload); SFTP_SESSION *sftp_new(SSH_SESSION *session){ SFTP_SESSION *sftp=malloc(sizeof(SFTP_SESSION)); @@ -97,6 +94,10 @@ int sftp_server_init(SFTP_SESSION *sftp){ } buffer_free(reply); ssh_say(2,"server version sent\n"); + if(version > LIBSFTP_VERSION) + sftp->version=LIBSFTP_VERSION; + else + sftp->version=version; return 0; } #endif @@ -204,7 +205,7 @@ int sftp_read_and_dispatch(SFTP_SESSION *session){ return 0; } -static void sftp_packet_free(SFTP_PACKET *packet){ +void sftp_packet_free(SFTP_PACKET *packet){ if(packet->payload) buffer_free(packet->payload); free(packet); |