Commit Graph

140 Commits

Author SHA1 Message Date
Neale Pickett 68428d8347 Start at channels 2008-03-19 16:19:24 -06:00
Neale Pickett 167105c661 Add AWAY, ERROR, and INFO commands 2008-03-18 22:50:23 -06:00
Neale Pickett 7b80acfbbe Passing all unit tests again 2008-03-18 21:04:22 -06:00
Neale Pickett 8616bb1f80 Attempt to get QUIT command (rewrites of some stuff) 2008-03-18 17:20:44 -06:00
Neale Pickett 667062bf93 Complete transition to epoll, all unit tests passing 2008-03-18 15:27:03 -06:00
Neale Pickett 9f058248ba Tweak for timers with no fd activity
Turns out the timeout value for select() and friends is an upper boundary.
once was being run as many as 12 times in a tight loop before a timer
expired.  I added a fudge factor of 0.001 seconds, and that seems to have
fixed it for most cases.
2008-03-18 10:55:31 -06:00
Neale Pickett eeab6fc319 Got dispatch unit tests working, not happy about how epoll timeouts work though 2008-03-17 17:22:12 -06:00
Neale Pickett d26e8bf0d6 Dispatch unit test (doesn't pass though) 2008-03-16 21:43:21 -06:00
Neale Pickett dd677d5d4e Dispatch tests don't need their own module 2008-03-15 20:01:53 -06:00
Neale Pickett 27d0137167 Dispatch module working 2008-03-15 19:46:06 -06:00
Neale Pickett 3eb2571769 Start at dispatch module, needs debugging 2008-03-14 21:28:22 -06:00
Neale Pickett 0d4b2e3f92 New dispatch module 2008-03-14 12:16:04 -06:00
Neale Pickett dd18d6ad48 Some work on poll() compatibility layer. 2008-03-12 23:24:50 -06:00
Neale Pickett c1d83191fe Fixed epoll_wrappers.c:event_list_of_int to lists with >1 item 2008-03-11 17:48:16 -06:00
Neale Pickett b032eef23a epoll() interface works great 2008-03-10 23:57:07 -06:00
Neale Pickett cd6a35240a Move to an epoll() interface 2008-03-10 17:19:59 -06:00
Neale Pickett d9b83175a2 Experimental work on an OCaml poll() wrapper 2008-03-07 18:19:58 -07:00
Neale Pickett babb102cd4 Simultaneous connections test 2008-03-07 13:52:13 -07:00
Neale Pickett 8cefe61976 PRIVMSG and NOTICE working between users 2008-03-07 12:00:40 -07:00
Neale Pickett c89eeb3160 Properly closing client connections, reworked client connection creation
Now the test script has two subsequent connections in it, for great justice.
2008-03-06 21:30:49 -07:00
Neale Pickett 36ef378852 ISON 2008-03-06 16:51:35 -07:00
Neale Pickett 4d9ed389a2 PING and PONG 2008-03-06 16:11:57 -07:00
Neale Pickett ac369d30c2 Skeleton for all IRC commands, implemented a few, add (chat.Regex of string) 2008-03-06 13:54:16 -07:00
Neale Pickett e417d92995 Merge branch 'master' of git+ssh://neale@fozzie.woozle.org/~neale/src/pgircd 2008-03-06 09:54:00 -07:00
Neale Pickett c9e91ffe0c Fixed Iobuf.rebind bug 2008-03-05 17:51:13 -07:00
Neale Pickett 0e8a998293 New iobuf, but there's a problem with login
Specifically, rebinding the command handler doesn't take effect until after
all input lines have been handled.  This means handle_command_prereg doesn't
get new values when it ought to.
2008-03-04 21:38:19 -07:00
Neale Pickett 1795f5aa37 Made Command.t a tuple 2008-03-03 08:42:30 -07:00
Neale Pickett ba2f2ef892 Fixed easy input parsing bug 2008-03-02 21:34:27 -07:00
Neale Pickett b55baf1e92 Setup working, now there's a bug in command parsing (again). 2008-03-02 21:30:37 -07:00
Neale Pickett 4f6ba7f271 Removed a failing unit test, now it all passes 2008-03-01 21:38:05 -07:00
Neale Pickett 1b517745bb Fixed buf in Client.handle_input
F it, I'll just use regular expressions (Str.split).  They're easier to code,
the code looks cleaner, and it fixes a buf with a case I hadn't considered.
2008-02-29 17:16:00 -07:00
Neale Pickett 1617dbca19 An attempt to get the first regression test passing
I fixed a couple bugs and stubbed in a client state change, so now it's
at least failing closer to where it ought to.
2008-02-28 22:24:52 -07:00
Neale Pickett 4b2a60ec71 More modules, now parsing commands
This is where I realized that there's no point in passing around a
"server" object, since it's entirely reasonable to expect one server
per running instance.
2008-02-28 22:00:24 -07:00
Neale Pickett ef64cd9f8a Move away from OO, IRC command parser + working test 2008-02-27 22:50:27 -07:00
Neale Pickett ea2fe1ed1c Move away from object model. 2008-02-24 21:41:20 -07:00
Neale Pickett 4ff349018d Start at using records instead of objects 2008-02-18 20:47:32 -07:00
Neale Pickett 9f494e9cca Got all the underlying socket stuff worked out, ready to code some IRC now. 2008-02-14 18:53:57 -07:00
Neale Pickett eb07c79700 Test 1 working, but now there are some obuf overrun problems 2008-02-08 18:11:49 -07:00
Neale Pickett 65720b5406 Getting tests working, have some output buffer problems 2008-02-08 17:41:07 -07:00
Neale Pickett eccaa1b4ff Accepting connections and line-buffering input 2008-02-08 15:38:31 -07:00