Commit Graph

74 Commits

Author SHA1 Message Date
Jan Vidar Krey
6992043f9d Fix bug #113: crash when using epoll backend. 2010-02-10 22:06:49 +01:00
Jan Vidar Krey
896bbfcb5d Compile multiple network backends into the binary and choose which one to use at runtime.
This makes it possible to share more code between the backends and also work around
bugs of certain backends on some (versions of) operating systems.
2010-02-10 22:00:13 +01:00
Jan Vidar Krey
7637d9ba68 Added experimental Haiku OS support.
It compiles and it runs with some minor glitches.
2010-01-28 01:35:08 +01:00
Jan Vidar Krey
4e9488dd4d gcc 2.95 compile fixes. 2010-01-28 01:11:11 +01:00
Jan Vidar Krey
8e7e8c68f5 gcc v2.95 compile fixes. 2010-01-28 01:06:41 +01:00
Jan Vidar Krey
1599f63134 Make sure the autotests work. 2010-01-28 00:07:42 +01:00
Jan Vidar Krey
ccd1c8f160 kqueue() BSD fixes 2010-01-27 17:50:02 +01:00
Jan Vidar Krey
7a8a737cad More kqueue work in progress. 2010-01-27 01:04:32 +01:00
Jan Vidar Krey
ac48ad01fb Work in progress on the kqueue backend. 2010-01-27 00:43:10 +01:00
Jan Vidar Krey
d7a1a52c1a Started working kqueue() backend for OSX and BSD. 2010-01-26 23:30:32 +01:00
Jan Vidar Krey
f54e8dbbba Moved the timeout code to where it belongs, along with the network backend code. 2010-01-26 22:55:08 +01:00
Jan Vidar Krey
928225fb7b On Mac OS X getrlimit() returns 2^(sizeof(size_t) * 8) instead of the actual number of available socket descriptors. 2010-01-26 08:40:10 +01:00
Jan Vidar Krey
e3cf41cb97 BSD/OSX compile fix. 2010-01-25 14:23:22 +01:00
Jan Vidar Krey
bfc7c184a7 Fix release build compile warnings. 2010-01-23 14:59:51 +01:00
Jan Vidar Krey
304ecda16a Enable the statistics timer again, so that !stats provide up to date network statistics. 2010-01-23 00:43:38 +01:00
Jan Vidar Krey
c670d13369 Make sure we shutdown SSL connections when an error occurs. 2010-01-23 00:20:48 +01:00
Jan Vidar Krey
b2e7a2848f Optimize epoll to never modify the epoll mask unless it actually changed. 2010-01-23 00:03:45 +01:00
Jan Vidar Krey
84bd2591d6 SSL fixes, seems to work with stunnel4 as a client but not linuxdcpp using SSL directly. 2010-01-22 23:43:23 +01:00
Jan Vidar Krey
4aa65733d0 Poll as long as possible until next timeout the earliest. 2010-01-22 23:18:59 +01:00
Jan Vidar Krey
230ca28b46 Some unfinished SSL work. 2010-01-22 18:52:38 +01:00
Jan Vidar Krey
4711d26c11 Fix broken net_address_to_string(). 2010-01-22 16:09:19 +01:00
Jan Vidar Krey
b29da11f3b Make sure we call the timeout code. 2010-01-21 23:52:04 +01:00
Jan Vidar Krey
78ad9b8572 Fixed bad logic inside the timer scheduling. 2010-01-21 23:13:52 +01:00
Jan Vidar Krey
21a5981905 Make sure start_listening_socket does everything, this will lead the way to multiple listen ports. 2010-01-21 17:31:55 +01:00
Jan Vidar Krey
9f5aaf0148 Added a safe connection cleanup procedure for when a connection goes
down while it may be attempted to be used.
2010-01-21 01:12:57 +01:00
Jan Vidar Krey
2f09fcea84 Added select() backend which can be used as a fallback if epoll is not available. 2010-01-20 18:39:55 +01:00
Jan Vidar Krey
f84073f7cc Various fixes for epoll handling without libevent.
This should take care of most compile issues as well as busy loops caused by unhandled recv() calls returning 0 and general cleanups.
2010-01-19 17:52:58 +01:00
Jan Vidar Krey
7dfa3162cb Epoll fixes. 2010-01-18 19:34:18 +01:00
Jan Vidar Krey
314707f499 Epoll fixes. 2010-01-18 16:15:38 +01:00
Jan Vidar Krey
1c58a85de1 More work on epoll. 2010-01-17 23:00:28 +01:00
Jan Vidar Krey
6a4b9c58f4 Work on removing libevent completely as a mandatory dependency. 2010-01-07 20:55:13 +01:00
Jan Vidar Krey
f35b2c35cb Fix some compile errors. 2009-12-14 16:17:59 +01:00
Jan Vidar Krey
b3aa5332c8 Work on epoll backend, and removing dependency on libevent. 2009-12-10 23:12:04 +01:00
Jan Vidar Krey
4a4de0f2ac Make sure we have libevent enabled for now, and add macro protection around the areas of the code that still depend on libevent. 2009-12-09 17:27:46 +01:00
Jan Vidar Krey
8bcdbdc061 Removed assert. 2009-11-21 11:52:25 +01:00
Jan Vidar Krey
53536f191d Crash fix. 2009-11-21 11:47:26 +01:00
Jan Vidar Krey
e994f23ea0 Crash fix part 2 2009-11-18 18:35:31 +01:00
Jan Vidar Krey
f489e77602 Crash fix? 2009-11-18 18:27:31 +01:00
Jan Vidar Krey
00995a1946 Fix potential memory leaks and crashes. 2009-11-18 17:41:28 +01:00
Jan Vidar Krey
e6cc47070c A few minor TLS fixes 2009-10-09 21:38:14 +02:00
Jan Vidar Krey
0c5d98c671 TLS compile and crash fixes. 2009-10-09 21:11:11 +02:00
Jan Vidar Krey
0f30ebf045 Some stability fixes. Removed log messages. 2009-10-09 20:35:04 +02:00
Jan Vidar Krey
4919c8f2f9 Fix compile error. 2009-10-09 00:11:09 +02:00
Jan Vidar Krey
2910c571b0 Fix protocol probe. Will detect ADC and TLS handshake - any other request
will simply cause the hub to close the connection.
Fix problems with write events not being processed due to a read event taking presendence.
Fix bug #86: Windows does not have "getrlimit()".
2009-10-08 23:16:15 +02:00
Jan Vidar Krey
7eef032584 Doc update. 2009-10-06 14:39:47 +02:00
Jan Vidar Krey
20ef6f8e53 Fix to net_con_close() which allows us to either delete the connection immediately if that is safe, or delete it later. 2009-10-06 14:36:05 +02:00
Jan Vidar Krey
69f6d811bf Added lots of asserts, and split out the ip address from the connection object.
Still a lot of work remains and a massive network connection cleanup is needed.
2009-09-29 00:30:52 +02:00
Jan Vidar Krey
96ce64ee07 Fix memory issues in ADC client lib. 2009-09-04 17:18:52 +02:00
Jan Vidar Krey
4ca5caa52b Various fixes, the admin tool at least compiles and runs. 2009-08-28 18:05:58 +02:00
Jan Vidar Krey
29d6d59d36 Misc connection changes. 2009-08-27 14:15:18 +02:00