Commit Graph

430 Commits

Author SHA1 Message Date
Howard Chu
daec2febfb ITS#4476 revert connection_write processing back into main thread 2006-04-06 04:34:37 +00:00
Howard Chu
90c8a53db4 plug leaks 2006-03-31 11:15:26 +00:00
Howard Chu
a5eef48123 Fix ITS#4395, check for non-read/write epoll events 2006-02-10 18:27:50 +00:00
Howard Chu
bebfc49d71 ITS#4370 always init slap_daemon mutexes 2006-01-25 01:36:18 +00:00
Howard Chu
2b0bccc74c ITS#4357 Solaris occasionally returns ENOSYS when selecting on a descriptor
in the midst of closing. Instead of special casing EBADF, ENOSYS, and
WSAENOTSOCK, just count if any error occurs two or more times in a row,
and log if so. Don't treat any error as fatal unless it occurs many times
in a row (SLAPD_EBADF_LIMIT).
2006-01-20 08:13:54 +00:00
Howard Chu
9b2ee679e8 Fix WAKE_LISTENER 2006-01-15 15:40:53 +00:00
Howard Chu
f16d101033 Log select() failure at DEBUG_ANY, since it triggers a shutdown. 2006-01-13 20:28:31 +00:00
Howard Chu
84429e8bcb ITS#4338 delete extraneous slapd_close() calls. Descriptors that were in
the event set must be removed using slapd_remove() and the whole sequence
must be protected with the slap_daemon.sd_mutex to close them properly.
Otherwise it will wind up closing valid, freshly opened sockets, or closing
dead sockets twice, etc. It's unnecessary to do any close management here
since connection.c already does the correct teardown sequence.
2006-01-13 17:30:03 +00:00
Kurt Zeilenga
acbb5cf689 Happy new year! 2006-01-03 23:11:52 +00:00
Luke Howard
ac64f4806b Fix CLDAP regression 2005-12-24 11:00:28 +00:00
Luke Howard
3ba381a862 Fix compile error when LDAP_CONNECTIONLESS is defined 2005-12-24 07:16:35 +00:00
Howard Chu
80143b5fc6 Fix ITS#3717 - set restriction on all backends
Fix ITS#4217 - gentleHUP is a normal shutdown condition
2005-11-25 23:16:10 +00:00
Howard Chu
ee8a946e8f Fix Win32 typos 2005-11-12 08:18:28 +00:00
Howard Chu
a028353ca1 declare waking volatile. perhaps it should only be used when NO_THREADS
is defined.
2005-11-12 08:11:11 +00:00
Kurt Zeilenga
e470116ab3 fix -USLAP_LIGHTWEIGHT_DISPACTHER sl_busy issue 2005-11-03 18:50:04 +00:00
Howard Chu
f8815bf833 ITS#4099, protect hosts_ctl with tcpd_mutex. From richton@nbcs.rutgers.edu. 2005-11-03 00:47:25 +00:00
Howard Chu
98969cc28e Fix epoll, just handle wake events in the order they arrived. 2005-10-30 00:50:59 +00:00
Howard Chu
e131aa424b ITS#4108 fix another accept/read race condition 2005-10-29 15:16:35 +00:00
Howard Chu
1f0e2f8944 Fix debug msg 2005-10-29 04:24:23 +00:00
Howard Chu
4bb234bac8 ITS#4108 Cleanup accept/close race conditions. 2005-10-29 04:17:56 +00:00
Howard Chu
638b84db6e Cleanup, fix ITS#4120 2005-10-29 02:06:32 +00:00
Howard Chu
656c6011bb Fix epoll, slapd_remove gets called multiple times for the same descriptor.
Ignore subsequent calls.
2005-10-17 17:31:48 +00:00
Kurt Zeilenga
c961673d9e Add descr # to epoll_ctl failed error message 2005-10-16 06:41:55 +00:00
Kurt Zeilenga
9bc19c5232 Revised lightweight dispatcher -- writers moved into worker threads
Presently spawns operations in separate thread to ease clr_read/wake handling.
Seems to perform reasonable well...
2005-10-15 06:54:55 +00:00
Kurt Zeilenga
577bfc477e More cleanup 2005-10-14 22:04:03 +00:00
Kurt Zeilenga
ce96e57298 cleanup 2005-10-14 21:46:44 +00:00
Kurt Zeilenga
40ff060f83 cleanup 2005-10-14 21:37:14 +00:00
Kurt Zeilenga
2dfd312fa1 Move connectionless connection init to startup (may not be in the
optimal place yet) to simply event management.  Needs testing.
Place revent clear calls immediately upon handling of event
(before any work).
Misc. other cleanup
2005-10-14 20:48:01 +00:00
Kurt Zeilenga
e21bba89db cleanup 2005-10-14 18:47:32 +00:00
Hallvard Furuseth
f21a6f7ef3 Add missing ";" in SLAP_SOCK_SET_INIT 2005-10-14 12:53:14 +00:00
Kurt Zeilenga
4d0de8b3c5 cleanup 2005-10-13 04:33:01 +00:00
Kurt Zeilenga
5085d1f8ff cleanup 2005-10-13 02:08:14 +00:00
Kurt Zeilenga
6db7e605ee Align Operation buffers using LBER_ALIGNED_BUFFER 2005-10-12 23:17:28 +00:00
Kurt Zeilenga
2890a5d035 TLS is configured after listener creation 2005-10-12 16:58:22 +00:00
Howard Chu
9aa064434c Fix writefds init on Windows 2005-10-11 02:56:56 +00:00
Howard Chu
4f0c386c68 ITS#4072 prevent ldaps listeners when TLS is not configured 2005-10-09 20:04:49 +00:00
Howard Chu
d973acec0d Silence valgrind complaint 2005-10-06 20:06:53 +00:00
Howard Chu
784554f1bb ITS#3802, #3999 skip wake_sds in epoll event loop 2005-09-04 15:04:09 +00:00
Hallvard Furuseth
00d898e7f3 Silence warnings 2005-09-03 17:03:36 +00:00
Howard Chu
d875ecb315 Remove #undef HAVE_EPOLL accidentally committed in rev 1.316 2005-09-01 23:21:46 +00:00
Luke Howard
17ffdc07b6 Don't decrement descriptor count until we have checked connection is not UDP 2005-08-08 03:44:17 +00:00
Pierangelo Masarati
4e6fd1a44f the swap was intended; please see ITS#3876 2005-07-22 01:00:21 +00:00
Luke Howard
979e64d0f0 The order of uidNumber and gidNumber was swapped in revision 1.331,
which breaks existing ACLs. This patch restores the old behaviour.
2005-07-19 06:45:57 +00:00
Pierangelo Masarati
1100973301 trim unused (wrong) code 2005-07-19 00:30:34 +00:00
Hallvard Furuseth
81ecb0b153 assert expects int. (int)<nonnull ptr/long> can be 0. Use assert(arg!=0/NULL). 2005-07-18 06:22:33 +00:00
Hallvard Furuseth
f43a823c73 Add missing "static" for functions declared static but defined non-static 2005-07-18 05:14:41 +00:00
Howard Chu
08ec8ad068 Fix SLAP_SOCK_IS_MUTE typo 2005-07-12 14:19:57 +00:00
Howard Chu
00dae75f7b ITS#3842 from jtownsend@opendarwin.org - don't free slap_listeners until
after connection_shutdown().
2005-07-07 04:21:53 +00:00
Pierangelo Masarati
5ae22791ab hardcode normalized instead of funky DN form 2005-06-29 12:37:28 +00:00
Howard Chu
58e8817fc1 ITS#3760 don't select on uninit'd writefds 2005-06-09 08:19:05 +00:00
Kurt Zeilenga
43dba4fd45 Wrap w in WAKE_LISTENER 2005-05-05 20:39:58 +00:00
Kurt Zeilenga
b9139ebf07 Increase listen() backlog to 1024, allow compile time override 2005-05-05 19:41:12 +00:00
Howard Chu
e3b66a409d ITS#3677 use LDAP_DEBUG_ANY when logging the shutdown reason 2005-04-23 15:55:26 +00:00
Howard Chu
3ead49d206 ITS#3542 - ignore timevals from deferred tasks 2005-03-17 05:03:28 +00:00
Howard Chu
9bfb4e7213 Revert prev commit, wrong fix 2005-03-17 04:50:19 +00:00
Howard Chu
d1050c5aa2 ITS#3542 if slapd processes too slowly, time diff can go negative 2005-03-17 04:44:21 +00:00
Kurt Zeilenga
f06ca8eb1f cleanup 2005-03-15 03:11:24 +00:00
Luke Howard
fd0b7e75b1 ITS#3439 (NetBSD support for getpeereid()) 2005-02-03 09:36:25 +00:00
Howard Chu
b18bc61831 ITS#3471 don't yield unnecessarily 2005-01-21 00:04:05 +00:00
Howard Chu
b0da3a0e32 Clear write events after they're processed 2005-01-12 00:57:53 +00:00
Kurt Zeilenga
dc0eacd40b Happy New Year! 2005-01-01 20:49:32 +00:00
Howard Chu
0eab783e6a ITS#3422, restore original select() behavior 2004-12-08 03:47:48 +00:00
Howard Chu
5c8fd8bf11 Rename syncrepl_rq to slapd_rq, move to daemon.c 2004-12-03 16:49:23 +00:00
Howard Chu
618cc56265 Merge op->o_sync_mode into op->o_sync 2004-11-25 18:31:31 +00:00
Howard Chu
6170a2bbb4 Fix ITS#3400, move ebadf declaration 2004-11-24 05:27:59 +00:00
Howard Chu
70d3e8f102 Don't bother including <sys/epoll.h> if we're not using epoll. 2004-11-21 02:18:26 +00:00
Howard Chu
c7a8625da7 Fix waking test 2004-11-19 00:13:00 +00:00
Howard Chu
f0372748e8 Fix prev commit 2004-11-18 23:08:57 +00:00
Howard Chu
f825367acf Check for sys/epoll.h 2004-11-18 22:07:37 +00:00
Howard Chu
fb7a5d7a55 shutdown on failure in epoll_ctl when adding a socket... 2004-11-18 19:29:24 +00:00
Howard Chu
bf0d729454 Fix prev commit, didn't mean to have HAVE_EPOLL hardcoded 2004-11-18 19:15:21 +00:00
Howard Chu
495ea2c13c epoll support works 2004-11-18 19:06:14 +00:00
Howard Chu
b4e10e194d Fix epoll compilation 2004-11-18 17:27:43 +00:00
Howard Chu
b7d4e1a5f1 First pass at macro-izing event handling method. Still only supports
select(). If you think this is too ugly, feel free to revert...
2004-11-18 16:41:04 +00:00
Howard Chu
0464155205 Allow a small number of waking events to be outstanding, not just 1
(chose 5 arbitrarily)
2004-11-18 15:40:49 +00:00
Howard Chu
69dc60e5ca Count writers, don't pass w fd_set if there are none
Deleted broken/unused FD_MANUAL_COPY code
2004-11-18 00:19:52 +00:00
Howard Chu
2415f5085d Avoid filling the wake_sds when massive numbers of connections close at once. 2004-11-16 20:26:50 +00:00
Howard Chu
04b078d6eb Fix prev commit. I wonder if we should convert the fdset bitvector into
an array like winsock does. That would speed up response time for small
number of connections with large FD_SETSIZE, but probably equalize out
as the number of active connections goes up. ??
2004-11-15 04:05:32 +00:00
Howard Chu
a59243ceee Slight tweak for select descriptor checking 2004-11-14 21:27:53 +00:00
Howard Chu
95550f21a2 Fix prev commit 2004-10-06 07:26:35 +00:00
Howard Chu
7e87f54716 Revert ITS#3353 patch, it needs to be reworked. 2004-10-06 05:51:38 +00:00
Howard Chu
fda3d6260e ITS#3353 consolidate slapd globals into a single struct 2004-10-01 07:33:16 +00:00
Pierangelo Masarati
761f287943 multiple precision with BIGNUM/gmp/ulong 2004-09-26 22:58:47 +00:00
Kurt Zeilenga
31a6de16b0 ITS#3345: reorder includes to workaround Pth signal redefine problem 2004-09-25 01:47:02 +00:00
Kurt Zeilenga
3869e3b84d Add localSSF slapd.conf(5) directive to set SSF associated
with ldapi:// sessions.
2004-09-10 22:35:24 +00:00
Kurt Zeilenga
d611a4b49a unifdef -UNEW_LOGGING 2004-09-04 04:54:28 +00:00
Pierangelo Masarati
614e5a9de6 make sure sun_path is cleared out before accept() 2004-07-30 09:56:22 +00:00
Pierangelo Masarati
cd9a9c628d frontend stuff moved into a database structure, essentially to allow overlays to be processed before database selection; passes all tests (ITS#3080) 2004-07-26 21:26:34 +00:00
Jong Hyuk Choi
a1308f8dfa syncrepl retry code fix for correct timing 2004-06-21 07:03:49 +00:00
Kurt Zeilenga
6e17b60648 add command line option (-S) to enable SLP registration (ITS#3132)
off by default.  Option assignment is temporary, should be replaced
with "-o slp=<ON|off>".
Based upon patch submitted by Ralf Haferkamp (SuSE).
2004-05-24 23:28:52 +00:00
Kurt Zeilenga
44725e7303 use BER_BVNULL 2004-04-07 04:11:43 +00:00
Pierangelo Masarati
2387d2aff8 apparently accept() doesn't fill the sun_path field of the peer socket; hack it 2004-04-03 18:48:03 +00:00
Howard Chu
c9d033ae30 Fix syncrepl slapd_shutdown detection, would not stop on a gentlehup. 2004-01-15 21:35:05 +00:00
Kurt Zeilenga
3c598e89fb Happy new year 2004-01-01 19:15:16 +00:00
Kurt Zeilenga
9647ccd945 Completely untested built-in EXTERNAL implementation
Needs identity mapping and proxy authorization support
2003-12-18 06:52:39 +00:00
Kurt Zeilenga
4e15a84452 Updated notices 2003-11-27 01:17:14 +00:00
Howard Chu
782d1be0ad Fix prev commit, don't timeout outbound connections 2003-10-25 21:14:07 +00:00
Howard Chu
08676eb49d Add support for outbound connections in main listener.
Restructure syncrepl/persist to use outbound connection manager.
2003-10-24 12:57:24 +00:00
Howard Chu
4c5c632d70 ITS#2769 - NT SIGBREAK handling 2003-10-15 12:16:35 +00:00
Jong Hyuk Choi
35455699e7 rq_mutex placing fix 2003-10-13 14:08:55 +00:00