Commit Graph

53 Commits

Author SHA1 Message Date
Aris Adamantiadis
6af2e3fc10 Fix closesocket() portbug for win32 2010-02-11 22:42:28 +01:00
Aris Adamantiadis
cfdd4296a8 Fix poll not waking up on connect on win32
Under windows, poll does not detect connected socket using
POLLOUT but POLLWRNORM.
"Pending connect requests are indicated in the returned revents member of WSAPOLLFD structure by POLLWRNORM."
http://msdn.microsoft.com/en-us/library/ms741669%28VS.85%29.aspx
However, I did not test that fix. (no windows at hands). I also don't know
if the poll emulation layer works with that too.
2010-01-25 19:48:38 +01:00
Aris Adamantiadis
a2505078da Set socket blocking after connexion 2010-01-08 23:28:55 +01:00
Aris Adamantiadis
a1870a62cf Documentation callbacks.h + standardization 2009-12-18 23:56:59 +01:00
Aris Adamantiadis
3ace7817b4 Async connection + banner fetch is working 2009-12-11 23:26:25 +01:00
Aris Adamantiadis
ab6b510408 More doxygen stuff 2009-12-09 20:27:10 +01:00
Aris Adamantiadis
ab52ca01ad Resolving doxygen errors in internal mode 2009-12-09 19:53:58 +01:00
Aris Adamantiadis
a1e05c62ae struct socket -> struct ssh_socket_struct +typedef 2009-12-06 22:48:56 +01:00
Aris Adamantiadis
4924ac8099 Asynchronous sockets work !
Still need a bit of tuning but it's stable enough
for our current needs
2009-12-01 23:34:55 +01:00
Aris Adamantiadis
96afa4530c More logging 2009-11-30 23:56:21 +01:00
Aris Adamantiadis
92a50f731c Socket connect callback working...
Still need to make sure the connect syscall is correctly
called
2009-11-30 23:44:40 +01:00
Aris Adamantiadis
76d6838223 Some brain surgery to add event-based sockets
chapter 1- SSH Socket Connections.
I would like to be able to
-Have a ssh_poll_ctx object
-Add a ssh socket over it
-launch the socket connection (using socket functions)
-ssh_poll_ctx_dopoll()
-Wait for the timeout or have the "connected" callback called
2009-11-30 22:35:43 +01:00
Aris Adamantiadis
0bfb9d476c Standardize callbacks style and add documentation 2009-11-29 22:51:14 +01:00
Aris Adamantiadis
91bb1b2de6 Squashed commit of the following:
commit 43fad8dfd977637c31fade76ace2905f6528c3bc
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Fri Nov 27 18:39:06 2009 +0100

    adaptation to the new ssh_poll_handle object name

commit 1e5e6ac4605adf10d437d04f0fd4b7e66024853c
Merge: 3fd92a0... 810adad...
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Fri Nov 27 18:33:06 2009 +0100

    Merge branch 'master' into badcode/libssh_async

commit 3fd92a08eb74b1447a9ff4ca4e1d137475c62cc6
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Mon Nov 2 14:25:46 2009 +0100

    Compiles again

commit 8910d7b9692418c9ccea0234f6d49674d238dc16
Merge: e83f1b5... cce34a6...
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Mon Nov 2 12:47:34 2009 +0100

    Merge branch 'master' into libssh_async

    Very big merge !

    Conflicts:
    	include/libssh/callbacks.h
    	include/libssh/priv.h
    	libssh/channels.c
    	libssh/messages.c
    	libssh/packet.c
    	libssh/server.c
    	libssh/session.c
    	libssh/socket.c

commit e83f1b593219e183082b015315f09bfe95a29cfc
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Mon Nov 2 12:07:01 2009 +0100

    rename callback.h

commit dffa7b730e8f39e2198de18ab69a8e57bef95e58
Merge: 5a8b748... de8808c...
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Tue Sep 15 10:50:07 2009 +0200

    Merge branch 'master' of git://git.libssh.org/projects/libssh/libssh into libssh_async

commit 5a8b7484f36599d28f2c0c14a23b76bfc7257638
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Sun Sep 13 12:55:18 2009 +0200

    More updates to callback system

commit 18620c20d5e4e62107093f7fd330e553493253fa
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Sat Sep 12 22:26:52 2009 +0200

    Same thing with channel_rcv_data

commit fc4a56f6726e409a5866272923f1cbebfc821af3
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Sat Sep 12 22:17:45 2009 +0200

    added a few packet handlers for channels

commit 4b6bb4fd00b10cf1321a764126f277ab204bffe3
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Fri Sep 11 23:15:25 2009 +0300

    sample packet handlers + bugfixes

commit 2784d09d6dec0a8f868912d14f90d860233b3f82
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Fri Sep 11 20:30:50 2009 +0300

    Packet callbacks nearly finished

    Need tests and implementation of some packet callbacks

commit cd3ea43f20c9ae2f54576ca98a0ea75c5d4299d3
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Thu Sep 10 12:46:02 2009 +0300

    First step of async packet handling

    The socket to packet handler is nearly done (needs testing)
    I still need to define the interface for callbacks.

commit 487f4d2a900a5fe3b90ceda4460ab7d38d7ad722
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Tue Sep 8 23:24:09 2009 +0300

    Almost complete socket callback system

    Finished the callback function so it bufferizes data when
    callee does not use it.
    Flushes the buffer automaticaly after a ssh_socket_nonblocking_flush

commit 23571f22fac9e40c855dfa99569bba181a39648b
Author: Aris Adamantiadis <aris@0xbadc0de.be>
Date:   Tue Sep 8 22:22:32 2009 +0300

    First draft of a callback system
2009-11-27 20:42:43 +01:00
Aris Adamantiadis
f84ebc2e27 Moved lots of declaration out of priv.h 2009-09-23 23:51:04 +02:00
Aris Adamantiadis
9a8d4cd0fd get rid of SSH_SESSION 2009-09-23 21:55:54 +02:00
Andreas Schneider
7c575a2418 Fix typedef collisons on Solaris. 2009-08-25 13:54:46 +02:00
Andreas Schneider
766bae9d76 Fix build with MSVC. 2009-07-30 10:45:58 +02:00
Andreas Schneider
28b5d0f875 Switch completly to stdint types. 2009-07-25 23:19:41 +02:00
Aris Adamantiadis
91d0660cc3 Changed all occurences of BUFFER * to ssh_buffer 2009-07-24 21:56:11 +02:00
Andreas Schneider
87995db8fe Make use of poll() and add a poll-emulation for win32.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@772 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-06-04 07:23:55 +00:00
Andreas Schneider
2e0b2e2e91 Fix the vim modeline and place it at the end of the file.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@763 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-05-12 17:49:23 +00:00
Andreas Schneider
74a06555f6 Add a return value to ssh_socket_init().
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@494 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-16 14:15:41 +00:00
Andreas Schneider
7f06a999e3 Reformat the remaining socket functions.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@471 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-14 14:30:12 +00:00
Andreas Schneider
cd5588aa75 Add more error checks to ssh_socket_blocking_flush().
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@470 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-14 14:27:58 +00:00
Andreas Schneider
f6e3f1d985 Add more error checks to ssh_socket_nonblocking_flush().
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@469 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-14 14:24:41 +00:00
Andreas Schneider
7eeb47ffad Reformat ssh_socket_poll().
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@468 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-14 14:19:35 +00:00
Andreas Schneider
d36a208849 Add more error checks to ssh_socket_wait_for_data().
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@467 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-14 14:12:50 +00:00
Andreas Schneider
fc1cba4407 Add error checks to ssh_socket_write().
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@466 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-14 14:05:16 +00:00
Andreas Schneider
f2788c9866 Reformat ssh_socket_completewrite() and use const for buffer.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@465 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-14 14:02:37 +00:00
Andreas Schneider
e29ef25cdd Reformat socket functions.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@464 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-14 13:59:18 +00:00
Andreas Schneider
639e924ef5 Reformat some socket functions.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@463 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-14 13:50:55 +00:00
Andreas Schneider
688ac9382f Don't shadow a global variable declaration in unistd.h.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@400 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-05 10:29:48 +00:00
Andreas Schneider
b5eb33bb69 Improve ssh_socket_free().
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@381 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-03 12:50:17 +00:00
Andreas Schneider
1b627b3867 More memory error checks for ssh_socket_new().
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@329 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-01 20:24:09 +00:00
Andreas Schneider
b06c167775 Fix memory error checking in socket functions.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@328 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-04-01 20:18:31 +00:00
Andreas Schneider
3441e77ddc Normalize the license in all files and add vim tab instructions.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@305 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-03-29 20:19:18 +00:00
Andreas Schneider
75d5bb457f Fix typos.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@301 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-03-28 22:34:51 +00:00
Andreas Schneider
78273fe5c5 Fix build.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@259 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-03-11 10:22:14 +00:00
Andreas Schneider
39a8009e78 Remove ssh_say.
Aris, how should we print an error?


git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@257 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-03-11 09:53:56 +00:00
Andreas Schneider
facc434ce4 Add missing include file.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@242 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-03-08 12:06:04 +00:00
Andreas Schneider
1fd6a2e9e0 Fix build warnings in socket code.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@220 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-02-02 16:56:31 +00:00
Andreas Schneider
70aa33c041 Start with ssh agent implementation.
This is work in progress.


git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@200 7dcaeef0-15fb-0310-b436-a5af3365683c
2009-02-02 14:41:44 +00:00
Aris Adamantiadis
3b25cbf134 fixed a bug where channel_poll could wait forever for a packet already in socket buffer.
Inc'ed libtool numbers


git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@184 7dcaeef0-15fb-0310-b436-a5af3365683c
2008-10-29 00:25:31 +00:00
Aris Adamantiadis
4a3554b2fa poll(2) support for channel_poll. Not yet for channel_select.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@183 7dcaeef0-15fb-0310-b436-a5af3365683c
2008-10-28 23:52:02 +00:00
Aris Adamantiadis
0d1e22f5f8 Resolved the unitialized data_except member variable in socket.c, thanks
Norbert


git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@177 7dcaeef0-15fb-0310-b436-a5af3365683c
2008-06-21 12:15:27 +00:00
Aris Adamantiadis
ff515b5528 gcrypt + SSH1 bug resolved
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@174 7dcaeef0-15fb-0310-b436-a5af3365683c
2008-06-17 01:06:53 +00:00
Aris Adamantiadis
8ce42c279e displaced the data_to_* into socket
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@171 7dcaeef0-15fb-0310-b436-a5af3365683c
2008-06-16 23:55:12 +00:00
Aris Adamantiadis
77603dbc5a Big changes :
refactoring of the socket class. Now the buffering happens in the socket class.
enhanced the logging system. Cleaned up some debugging messages.
Verified the working with ssh-1.
If this cleanup introduced bugs (it did but corrected the found ones) at least, they will be easier to find

also added the (c) and fixed dates for updated files


git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@169 7dcaeef0-15fb-0310-b436-a5af3365683c
2008-06-16 23:02:49 +00:00
Aris Adamantiadis
7278a9df95 fix #ifdef win32 bug
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@160 7dcaeef0-15fb-0310-b436-a5af3365683c
2008-05-22 13:01:22 +00:00