Commit graph

36 commits

Author SHA1 Message Date
Valery V Yatsko 5b4e901644 branch merge 2008-08-17 09:33:47 +04:00
Valery V Yatsko bbe588880f run autoreconf 2008-08-17 09:27:15 +04:00
Jilles Tjoelker 25bf728581 fix a crash in the rb_bh_gc code
from libratbox svn r25871 (androsyn)
2008-08-12 22:37:29 +02:00
Valery V Yatsko ce1c921c95 sync with libratbox upstream - r25870 2008-08-11 23:20:24 +04:00
Jilles Tjoelker e5334f35e6 Rerun autoconf. 2008-08-02 02:09:23 +02:00
Jilles Tjoelker d90702c9aa Fix shell syntax. 2008-08-02 02:09:16 +02:00
William Pitcock 5f4f06c87a Rerun autoconf. 2008-08-01 17:03:18 -05:00
William Pitcock 0bb036c05f Add *sunos* conditional to solaris section for opensolaris, and add -D_XPG4_2 -D__EXTENSIONS__ to CFLAGS on these platforms. 2008-08-01 17:02:58 -05:00
William Pitcock 041d07b3d0 Automated merge with ssh://hg.atheme.org//hg/charybdis 2008-08-01 17:00:41 -05:00
William Pitcock 72cedbce85 rb_setup_fd_ports(): use correct prototype. 2008-08-01 17:00:00 -05:00
Valery Yatsko a9fb3ed0f9 libratbox sync - r25796 2008-07-30 02:41:27 +04:00
Valery V Yatsko c2ac22cc46 sync libratbox - r25599 + charybdis packaging patch 2008-06-25 09:28:30 +04:00
Jilles Tjoelker b69b8b0870 Rerun autoconf. 2008-06-21 00:27:16 +02:00
Jilles Tjoelker e961093c63 Change == in test(1) to =.
libratbox r25570 (jilles)
2008-06-21 00:27:00 +02:00
William Pitcock c617c321a2 Set SONAME to libratbox.so.3. (Again, packaging. Yeah. We know.) 2008-06-10 22:06:54 -05:00
William Pitcock af240db72b Add libratbox.pc.in for out-of-tree libratbox build (think: packaging). 2008-06-10 22:02:10 -05:00
William Pitcock f17c2ef84c Make sure x509_cred and dh_params objects are allocated. 2008-06-10 21:24:49 -05:00
William Pitcock fc8711d128 GNUTLS backend. Untested. 2008-06-10 20:33:15 -05:00
William Pitcock 709c19516d Run autoreconf. 2008-06-10 13:45:43 -05:00
William Pitcock e5f755a470 libratbox: Add checks for GnuTLS support. 2008-06-10 13:45:15 -05:00
Jilles Tjoelker ac48b7c300 libratbox: Remove static inline symbols from export-syms.txt. 2008-05-17 13:26:42 +02:00
Jilles Tjoelker 6770b968bc Fix a mistake in kqueue 'overflow' handling.
If there is no space in the output buffer to report an
error adding to the kqueue, kevent(2) will abort and
return the error in errno (I was correct that it does
not tell you where it failed). So do not abort the loop
if kevent(2) fails and do not log (expected) EBADF.
2008-05-14 19:56:41 +02:00
Jilles Tjoelker aec4c3cb6b Save connect errno so that we get a correct connect failure reason
libratbox r25358 (androsyn)
2008-05-13 20:21:12 +02:00
Jilles Tjoelker 2142f6910e Fix a possible crash with SSL connections closing early.
libratbox r25356 (jilles)
2008-05-12 19:54:24 +02:00
Jilles Tjoelker 3c95b6e72f Fix kqueue sometimes dropping updates.
(ircd wouldn't read or write anymore to certain clients)
This happens because kqueue.c will often try to add
already closed file descriptors to the kqueue. The kernel
tries to report bad file descriptors in the eventlist; if
the eventlist has no space, processing of the changelist
is silently halted.
The fix:
1. allocate two kqlst things, one for what kqlst currently does
and one as output buffer
this ensures the kevent(2) call in rb_select_kqueue() never
drops updates
2. replace the kevent(2) call in kq_update_events() by a loop
that processes the updates one at a time
that doesn't happen much, and it's the only way to be sure
without also getting events out of the queue we cannot process
at that time
libratbox r25354 (jilles)
2008-05-12 18:54:20 +02:00
Jilles Tjoelker 365d91a86f patricia: remove ugly abuse of K&R style function declaration
It left the argument types unspecified in a function
pointer, then called it using different numbers of
arguments.
libratbox r25229
2008-04-13 18:20:18 +02:00
Jilles Tjoelker 39930c6602 Remove linebuf's per-line flushing flag, as it's per-head state.
In rare cases, this sharing caused the ircd to skip
part of outgoing traffic, e.g. appearing as "not enough
parameters" errors on the other side.
The purpose of this flag can be fulfilled by the writeofs
in the bufhead.
libratbox r25227
2008-04-13 00:44:21 +02:00
Jilles Tjoelker ba1721d144 read/write return type should be ssize_t, not int or size_t.
The writev emulation used size_t, which is unsigned,
preventing negative values to be seen.
libratbox r25225
2008-04-12 16:43:12 +02:00
Jilles Tjoelker 7b224e33b5 kqueue: also use EV_ONESHOT for read events
This makes the kernel's state agree with our handler pointer.
SSL may need to suspend selecting for reading to write
something, e.g. with renegotiation.
libratbox r25223
2008-04-11 11:08:37 +02:00
Valery Yatsko 73d6283cfc Importing r25217, r25219 and r25221 from ratbox3 2008-04-10 20:37:42 +04:00
Valery Yatsko 715ffadfd9 Importing changes from ircd-ratbox revision r25203, this fixes libratbox/src/openssl.c a bit 2008-04-06 18:28:56 +04:00
Jilles Tjoelker 9d9a4f6015 Fix SET_SS_LEN so that it also works correctly outside libratbox.
Use RB_SOCKADDR_HAS_SA_LEN instead of SOCKADDR_IN_HAS_LEN
which is only defined inside libratbox.
This fixes creating own sockaddr structs in other programs
using SET_SS_LEN, then passing them to libratbox, on
4.4BSD based systems.
2008-04-05 21:08:48 +02:00
Valery Yatsko 398b6a7372 ok, trying to work on blockheap's stuff 2008-04-02 04:28:05 +04:00
William Pitcock a8f0b117ba Make this link without OpenSSL. This patch should go upstream. 2008-04-01 14:57:52 -05:00
William Pitcock b676ea3bd5 Run autoreconf. 2008-04-01 11:53:46 -05:00
William Pitcock db13786793 Pull in libratbox from ircd-ratbox-3.0.0beta1 and integrate into the build system. 2008-04-01 11:52:26 -05:00