Commit Graph

65 Commits

Author SHA1 Message Date
Jan Vidar Krey 8a6a10d4ec Cleaned up plugin callback hooks.
Started working on command storage by plugin.
2011-02-17 12:06:31 +01:00
Jan Vidar Krey 5ca27a1a6d Added function pointers for plugins to access hub internals. 2011-02-17 11:59:15 +01:00
Jan Vidar Krey 4a03accc34 Fix compile warning about PLUGIN_SUPPORT being redefined. 2011-02-05 17:16:14 +01:00
E_zombie d4accea32c - update GNUmakefile 2010-11-23 16:07:39 +03:00
E_zombie 50e44f5272 - update GNUmakefile for install plugin modules 2010-11-23 15:54:57 +03:00
Jan Vidar Krey 1af7e26c52 Moved flood control stuff to the util package. 2010-08-11 22:46:06 +02:00
Jan Vidar Krey c2b7ecd49c Made sure the logging plugin logs on a format that looks almost the same as we used to have in the past. 2010-08-04 17:03:37 +02:00
Jan Vidar Krey dbf790bb93 Added autotests for credentials handling. 2010-07-29 11:22:04 +02:00
Jan Vidar Krey 55ffe46a38 Added an SQLite authentication backend. 2010-07-29 08:49:24 +02:00
Jan Vidar Krey 56e5557146 Cleaned up the credentials handling, and made it ready for plugins. 2010-07-12 19:05:50 +02:00
Jan Vidar Krey 4b22ccb73c Added a proper config file tokenizer that supports escaping sequences
and comments.

This allows for:

'"foo bar"' can be represented as 'foo\ bar'.

And allows for comments using the hash symbol (#), but not inside
escapes or quotes. "#this is not a comment", \#this\ is\ not\ a comment.

All configuration file parsers should be rewritten using this functionality.
2010-07-09 14:01:03 +02:00
Jan Vidar Krey 849a791f79 Fixed plugin handling when using the utils code from within a plugin. 2010-07-08 14:26:07 +02:00
Jan Vidar Krey aa26052479 Misc plugin work
* Fix crash when unloading plugins.
* Fixed plugin loader and plugin unload handler.
* Added a new example plugin: mod_logging which logs users logging in and out of the hub to stdout.
2010-06-29 15:40:19 +02:00
Jan Vidar Krey 07d4e4470c More work on the plugin API. 2010-06-06 16:19:59 +02:00
Jan Vidar Krey ed53034ad5 Added plugin loader code, merely a wrapper around dlopen() and friends. 2010-05-30 23:33:06 +02:00
Jan Vidar Krey 8815118fde Added flood control support.
This closes bug #79: Flood control, and rate limits
2010-04-05 16:01:07 +02:00
Jan Vidar Krey 198d86a1ee Added some automatic tests for the timeout handling. 2010-02-25 17:57:50 +01:00
Jan Vidar Krey 2ded9f3e09 Make the revision file if it does not exist. 2010-02-25 16:38:05 +01:00
Jan Vidar Krey 59ed268f4d Added test cases for sid allocation.
This revealed a few bugs:
* when sid allocator is full, then uhub will loop indefinitely when allocating one more (unlikely to occur).
* looking up a user object based on a sid that is out of range (off by one) returns invalid memory.
2010-02-18 16:02:13 +01:00
Jan Vidar Krey 1a98bb6810 Added optional include of local makefile. 2010-02-15 18:56:23 +01:00
Jan Vidar Krey 685597c795 Make sure we delete the revision.h files when updating.
Also, only use annotated tags for git revision numbers.
2010-02-11 09:16:30 +01:00
Jan Vidar Krey 782f091637 Bump to 0.3.1-rc1 2010-02-11 09:03:07 +01:00
Jan Vidar Krey bf1b64db53 Write git revision to a header file, then make version.h depend on that file. 2010-02-11 01:03: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 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 92c448b855 Dont use SSL by default. 2010-01-23 01:09:00 +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 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 2f09fcea84 Added select() backend which can be used as a fallback if epoll is not available. 2010-01-20 18:39:55 +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 314707f499 Epoll fixes. 2010-01-18 16:15:38 +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 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 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 4ca5caa52b Various fixes, the admin tool at least compiles and runs. 2009-08-28 18:05:58 +02:00
Jan Vidar Krey 5203ecdadc Split uhub.h 2009-08-28 16:18:18 +02:00
Jan Vidar Krey 11b288a669 Various build fixes. 2009-08-28 16:04:45 +02:00
Jan Vidar Krey 52cbec24b6 Started splitting up ADC rush. Need a test client before we can proceed anyway. 2009-08-28 14:29:19 +02:00
Jan Vidar Krey cd389742e6 Solaris fixes. 2009-08-06 23:15:55 +02:00
Jan Vidar Krey 4afa187f9a Expose SSL/TLS related config variables. 2009-08-06 23:05:53 +02:00
Jan Vidar Krey b3c40f7443 Use -levent not -lev 2009-08-04 04:59:52 +02:00
Jan Vidar Krey d45383fe4d Fix some asserts. 2009-08-04 04:58:55 +02:00
Jan Vidar Krey 604c2d8836 Disable SSL by default. 2009-08-03 23:59:19 +02:00
Jan Vidar Krey 79cf5ee9db Some work on integrating OpenSSL. 2009-08-03 03:55:38 +02:00
Jan Vidar Krey 653cfb285e Started working on abstracting the connection data away from the user struct. 2009-08-02 21:37:55 +02:00
Jan Vidar Krey 053fb30192 Build fix. 2009-08-02 21:07:16 +02:00
Jan Vidar Krey 36a07e3f7e Reorganized sources slightly. 2009-07-25 20:05:27 +02:00
Jan Vidar Krey 3fdbccb028 Fix bug #47 - Enable -ggdb instead of -g for DEBUG builds.
RELEASE builds are built with -O3 instead of -Os.
2009-07-09 17:01:45 +02:00