Commit Graph

26 Commits

Author SHA1 Message Date
William Pitcock de0572442e Replace int fd; in local client object with an fde object. 2007-12-28 15:06:33 -06:00
William Pitcock 5cd74a3b6c linebuf_flush(): use fde_t's. 2007-12-22 16:28:05 -06:00
William Pitcock d877759f5b Make fde raw I/O functions act on the FDE object, not the FD directly. 2007-12-22 16:15:09 -06:00
William Pitcock 868590746d - add IOReadFunc and IOWriteFunc types.
- add fde::read_impl, fde::write_impl.
  (defaults to read(2) and write(2) with raw FDs at the moment;
   this will be revised to act on the fde later.)
2007-12-22 16:05:51 -06:00
William Pitcock 201f4ef72f We need to do that in another spot. Yuck. 2007-12-20 16:59:52 -06:00
William Pitcock d60ba3dabf Handle EBADF condition. yuck! 2007-12-20 16:56:07 -06:00
William Pitcock 66df8c7271 Fix a lot of bad assumptions in the epoll code (this needs major testing). 2007-12-20 16:37:57 -06:00
nenolod efb1d08613 [svn] - fix dereference problems with not widely used polling engines 2007-07-07 01:08:23 -07:00
nenolod f8b45e91a3 [svn] - fix a bug here 2007-05-08 17:32:08 -07:00
nenolod 5522d08c14 [svn] - enforce proper conditions for EPOLL_CTL_DEL.
- remove possibly problematic "performance" check
2007-04-03 03:49:11 -07:00
nenolod 1b4cfad88d [svn] - river's ports.c from old charybdis trunk 2007-04-03 02:57:53 -07:00
nenolod 5e12fb1089 [svn] - remove broken ports stuff and devpoll stuff. 2007-04-03 02:50:56 -07:00
nenolod 3611dcf761 [svn] - apparently setting KE_LENGTH to 128 is fine. 2007-04-03 02:34:38 -07:00
nenolod 631ef23987 [svn] - remove the rest of the MAX_CLIENTS stuff. change kqueue implementation accordingly. (needs testing) 2007-04-03 02:31:11 -07:00
nenolod 6fcb8629ae [svn] - remove ALL braindead 2.8 I/O artifacts: MASTER_MAX, HARD_FDLIMIT, HARD_FDLIMIT_, MAXCONNECTIONS, MAX_CLIENTS, etc.
they are ALL gone. all of this stuff is now determined at runtime via getrlimit(2).
- due to this, devpoll is broken. i'm not motivated to fix it at the moment.
2007-04-03 02:21:31 -07:00
nenolod a6a30f6f7b [svn] - avoid some potential NULL dereferencing 2007-03-05 10:42:24 -08:00
nenolod c18de29d18 [svn] - fix a typo 2007-03-05 10:41:14 -08:00
nenolod ce439f5186 [svn] - rework poll a bit for the MAXCONNECTIONS changes. 2007-03-05 10:40:39 -08:00
jilles 51b5f3356a [svn] Our way of using kqueue may cause it to report fds we
don't know about anymore, cope.
2007-03-05 09:52:28 -08:00
jilles df98bc52c8 [svn] Don't reference freed memory (fde_t) in comm_close(). 2007-03-05 09:41:40 -08:00
nenolod 61e3b8f276 [svn] - fix for 100% cpu use 2007-03-05 09:35:17 -08:00
nenolod d0e1e8ee78 [svn] - rework comm_checktimeouts() to use the hashtable in an efficient manner. 2007-03-05 09:31:35 -08:00
nenolod e70f8e928e [svn] - use a hashtable for fdlist storage. first step to making the amount of allowed clients dynamic and removing MAXCONNECTIONS. 2007-03-05 09:23:07 -08:00
nenolod c8ff7ca97f [svn] - fix off-by-one memory overflow error. 2007-02-09 14:18:23 -08:00
jilles 01cebbd88e [svn] Move find_umode_slot() from libcharybdis/tools.c to src/s_user.c. 2007-02-03 17:59:38 -08:00
nenolod 212380e3f4 [svn] - the new plan:
+ branches/release-2.1 -> 2.2 base
  + 3.0 -> branches/cxxconversion
  + backport some immediate 3.0 functionality for 2.2
  + other stuff
2007-01-24 22:40:21 -08:00