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
6ac78e1a10
Fix autotest
2010-02-08 00:35:58 +01:00
Jan Vidar Krey
be8db21561
Fix bug #109 : Confusing debug message for nat_ip.
2010-02-07 23:29:38 +01:00
Jan Vidar Krey
8065903604
Fix bug #108 : share limits can be avoided.
...
This was due to updates to the share limit not being enforced after a succesful login.
2010-02-07 23:08:04 +01:00
Jan Vidar Krey
2dc95eca47
SunOS support.
2010-01-28 01:35:09 +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
e0003ebbb2
Only define MIN/MAX macros if not defined by the system.
2010-01-28 01:07:05 +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
c3ad006d07
Fix bug #76 : added support for multiple server listen ports.
...
Use server_alt_ports and supply a comma separated list of ports.
2010-01-27 23:55:52 +01:00
Jan Vidar Krey
1faca92167
Added a generic string splitter utility function that is based on callbacks instead of populating a list.
2010-01-27 23:55:05 +01:00
Jan Vidar Krey
ccd1c8f160
kqueue() BSD fixes
2010-01-27 17:50:02 +01:00
Jan Vidar Krey
41418f21e7
Winsock compile fix.
2010-01-27 17:48:16 +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
2d7ffa37fe
Fix problem parsing configuration file if the last line is not empty
2010-01-26 16:16:41 +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
68a26e1160
Added proper POSIX signal handler.
2010-01-22 16:57:30 +01:00
Jan Vidar Krey
4711d26c11
Fix broken net_address_to_string().
2010-01-22 16:09:19 +01:00
Jan Vidar Krey
5e253e8442
Fix compile error.
2010-01-22 16:04:36 +01:00
Jan Vidar Krey
8b7f09c7f4
Fixed two cases of bad connection close.
2010-01-21 23:54:38 +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
b04a20c66e
fixed off by one bug in due to message escape.
2010-01-21 22:20:26 +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
c47ea14047
Code cleanup for starting the listening socket.
2010-01-21 01:54:41 +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
f645811f37
Merge branch 'master' of github.com:janvidar/uhub
2010-01-20 18:42:45 +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
root
efeb36c492
- update uhub.conf example after add !rules
...
- add example rules.txt
- fix compile warning in src/util/timeout.c
- add example config file for rotate log file in RHEL\CentOS
2010-01-20 11:12:43 +03:00
Jan Vidar Krey
7e60919596
sorted the commands shown in help.
2010-01-20 00:24:57 +01:00
Jan Vidar Krey
e7cb4cd277
remove extra space before !broadcast messages
2010-01-20 00:12:39 +01:00
Jan Vidar Krey
e45511827f
Added the +rules command.
...
Also added the +motd command to see the message of the day, which is sent while connecting.
2010-01-19 23:30:26 +01:00
Jan Vidar Krey
80c6ad9d76
Added mute/unmute functionality.
2010-01-19 23:07:55 +01:00
Jan Vidar Krey
f84f3b1fff
Merge branch 'master' of github.com:janvidar/uhub into sans_libevent
2010-01-19 19:35:20 +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
af8421fa47
Crash fix.
2010-01-18 21:57:51 +01:00
Jan Vidar Krey
001fa6739a
Crash fix.
2010-01-18 19:38:07 +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
1f9cfe58c4
No need to allow users not yet logged in to send special hub commands to the hub.
...
Nothing bad will happen, except the hub will try to answer them even though the user is not yet fully logged in. This fix ensures that these messages are simply dropped instead.
2009-12-09 19:40:12 +01:00
Jan Vidar Krey
50f5ce9d32
Fix bug #100 - Null pointer crash if sending a chat message without the message part.
2009-12-09 19:30:08 +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
2e2f93d0a4
Started working on new timeout handling which can be used when we remove libevent.
...
This will probably be used by default on UNIX platforms at some point.
The timeout handling accomplishes O(1) inserts, removes and reschedules
but the accuracy is limited to whole seconds.
2009-12-09 17:12:33 +01:00
Jan Vidar Krey
7c093dc5da
Fix for very long messages that get dropped if they are sent alone (no other message before it) and does not fit inside one TCP packet.
...
(Thanks FleetCommand!)
2009-12-04 08:12:54 +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
2526c8a9ed
Silly compile error.
2009-11-18 17:43:11 +01:00
Jan Vidar Krey
4556623a87
Clarify flags as unsigned.
2009-11-18 17:41:22 +01:00
Jan Vidar Krey
828c19cfc6
Fix a wrong open() if no motd is specified.
2009-11-18 17:41:55 +01:00
Jan Vidar Krey
00995a1946
Fix potential memory leaks and crashes.
2009-11-18 17:41:28 +01:00
Jan Vidar Krey
f4e82ef503
Cleanup the net_event handler.
2009-11-18 17:40:28 +01:00
Jan Vidar Krey
eb7bec585e
Fix problems with write events not being processed due to a read event taking presendence.
...
Conflicts:
src/core/netevent.c
2009-11-18 17:40:23 +01:00
Jan Vidar Krey
066b3f5243
Fix protocol probe. Will detect ADC and TLS handshake - any other request
...
will simply cause the hub to close the connection.
Conflicts:
src/core/netevent.c
src/core/probe.c
2009-11-18 17:38:25 +01:00
Jan Vidar Krey
a51e8830ce
Log dropped messages.
2009-10-30 18:31:27 +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
11e5683a79
Cleanup code somewhat.
2009-10-06 18:33:06 +02:00
Jan Vidar Krey
17416def35
Make sure we flag JOIN/LEAVE messages as really verbose debug output.
2009-10-06 18:28:16 +02:00
Jan Vidar Krey
234f04f495
Removed extra main block.
2009-10-06 18:25:50 +02:00
Jan Vidar Krey
4898454c91
Removed redundant and ununsed operation mode for adcrush.
2009-10-06 18:24:21 +02:00
Jan Vidar Krey
255255ff20
Allow for command line specified host.
2009-10-06 18:16:38 +02:00
Jan Vidar Krey
f50b40fb92
Fix bug #85 - Do not broadcast unknown commands, but allow for commands to be broadcasted if they are double escaped with ++ or !!.
2009-10-06 18:02:37 +02:00
Jan Vidar Krey
40fc09a7ef
Whitespace cleanups.
2009-10-06 17:40:09 +02:00
Jan Vidar Krey
582bb58ff9
Refactor the address parsing bits of adcrush.
2009-10-06 17:25:38 +02:00
Jan Vidar Krey
7472e9ae4a
Removed some old unused macros.
2009-10-06 15:53:24 +02:00
Jan Vidar Krey
f076c67c33
Added a configurable listen() backlog (defaults to: server_listen_backlog=50)
2009-10-06 15:50:42 +02:00
Jan Vidar Krey
7eef032584
Doc update.
2009-10-06 14:39:47 +02:00
Jan Vidar Krey
de793ea9d2
Some compile fixes and memory leak fixes for ADCRush.
2009-10-06 14:36:49 +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
310ddf4e9d
More work on the ADC client lib.
2009-10-06 12:39:31 +02:00
Jan Vidar Krey
8592aa80d4
Compile fix.
2009-10-06 12:24:44 +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
a53c219f05
Fix bug #82 - Crash writing a log larger than 2GB on a 32 bit system as _FILE_OFFSET_BITS was not declared to be 64.
2009-09-14 12:24:18 +02:00
Jan Vidar Krey
96ce64ee07
Fix memory issues in ADC client lib.
2009-09-04 17:18:52 +02:00
Jan Vidar Krey
4fd182c55e
Fix compile warning.
2009-08-31 20:36:25 +02:00
Jan Vidar Krey
993d9ae33b
Fix some issues regarding header extraction.
2009-08-31 19:45:47 +02:00
Jan Vidar Krey
1e380ecf0f
Fix bug #77 - Error in ACL command parsing.
2009-08-31 19:39:09 +02:00
Jan Vidar Krey
aeba7188c0
Added a macro that can keep the line count down.
2009-08-28 18:10:41 +02:00
Jan Vidar Krey
4ca5caa52b
Various fixes, the admin tool at least compiles and runs.
2009-08-28 18:05:58 +02:00