1998-09-21 Nathan Bryant * msgbase.c: include dynloader.h * citadelapi.h: removed Sun Sep 20 18:56:37 EDT 1998 Art Cancro * Added a UserFunctionHook category to implement hooks which perform operations on various users or usernames Fri Sep 18 21:14:41 EDT 1998 Art Cancro * citserver.c: removed cmd_extn() and related code 1998-09-18 Nathan Bryant * user_ops.c: include dynloader.h * roomstats.{c,mk}: removed * Configure, Makefile.in: autodependency-related fixes Thu Sep 17 22:55:29 EDT 1998 Art Cancro * Various changes to allow "new messages" to work correctly with Mail Thu Sep 17 22:21:45 EDT 1998 Art Cancro * server.h, dynloader.c, citserver.c, user_ops.c: reduced the number of hook types by inventing an EventType field to the Session hook. * proxy.c: added pre-fetching 1998-09-17 Nathan Bryant * Makefile.in: add SERV_MODULES and PROXY_TARGETS to `cleaner' * dynloader.[ch], serv_{chat,test}.[ch], sysdep.c: cleaned up the dynamic loader interface as follows: - all the symbol table stuff is gone. - modules are loaded once at server startup and never unloaded. - Added a new function CtdlRegisterProtoHook() to handle the stuff that was being done with the symbol tables. - Dynamic_Module_Init() now returns a pointer to a static struct DLModule_Info; this structure itself has been modified to use char* fields instead of fixed char arrays. * roomstats.c: include not (is this file still in use?) * Configure, Makefile.in: added autodependency support Wed Sep 16 22:25:13 EDT 1998 Art Cancro * Implemented separate structs, lists, and functions for each type of server-side hook available. 1998-09-16 Nathan Bryant * ipc_c_tcp.c: Fixed up some #include/prototyping stuff, call memcpy() instead of bcopy() * hooks.h: removed * sysdep.c, user_ops.c: removed reference to hooks.h Wed Sep 16 11:42:42 EDT 1998 Art Cancro * ipc_c_tcp.c: Reversed any changes that have been made to this file, because something was causing abominally slow response time. * proxy.c: added. This will eventually become a caching, pre-fetching multiuser proxy server for the Citadel protocol. 1998-09-15 Nathan Bryant * Makefile.in: remove support.o from serv_chat.so, add -fPIC to compile flags for serv_chat.o * dynloader.c: include "sysdep_decls.h", use RTLD_NOW not RTLD_LAZY * dynloader.h: prototype CtdlRegisterHook() * .cvsignore: added data Mon Sep 14 20:49:08 EDT 1998 Art Cancro * Tried my hand at adding the ability for server extensions to register various types of "hooks" in addition to just adding server commands. This is probably not final. Tue Sep 8 12:11:56 EDT 1998 Brian Costello * Added support for dynamic server modules. Reworked serv_chat.c to be such a module. Tue Sep 1 23:09:50 EDT 1998 Art Cancro * userpurge.c: rewrote using functions from the server core, rather than the now-defunct external API. This'll be ready once the module loading code is done. (I just had to commit _something_ tonight.) Mon Aug 31 22:47:58 EDT 1998 Art Cancro * Yanked the citadelapi.c module. This wasn't working out well. * techdocs/citadelapi.txt - began documenting the new API to be used by modules which will be dynamic linked into the server - most of this API is existing server functions. * Added a ForEachUser() function with callback mechanism, and reworked cmd_list() to use it. Sun Aug 30 21:52:43 EDT 1998 Art Cancro * Moved all of the gdbm databases to a separate "data" directory. 1998-08-26 Nathan Bryant * Makefile.in: realclean removes Makefile, fixed `touch citadel.h' problem 1998-08-25 Nathan Bryant * room_ops.c: include time.h * userlist.c, whobbs.c, serv_chat.c, user_ops.c, sysdep.c, stats.c, citadel_decls.h, commands.c, messages.h, routines.h, routines2.h: remove duplicated declarations Mon Aug 24 23:45:01 EDT 1998 Art Cancro * setup.c: Removed yesno_s() * citadel.h, room_ops.c: added QRmtime field to struct quickroom, modified whenever a room is modified or posted in. * citadelapi.c: Added CtdlForEachRoom() function Mon Aug 24 20:04:04 EDT 1998 Nathan Bryant * Makefile.in: new target `cleaner' does the same as `realclean' without removing sysdep.h * proto.h: is bad. eliminate. I've moved the prototypes into several header files, one per .c file Mon Aug 24 00:45:55 EDT 1998 Art Cancro * Added a CtdlGotoRoom() function to the CitadelAPI. Sun Aug 23 21:47:00 EDT 1998 Art Cancro * sysoputil is finally dead! Removed it from the build. * Added userpurge.c server extension (initial implementation) Tue Aug 18 00:42:33 EDT 1998 Nathan Bryant * Makefile.in: `clean' target no longer rm's sysdep.h; new target `realclean' removes everything clean does, plus sysdep.h, plus target binaries. * Configure: add -Wstrict-prototypes to CFLAGS for gcc systems * *.[ch]: protoized. Added several new header files containing prototypes and other external declarations; many duplicated declarations still should be moved to header files. proto.h must die as well, IMHO. Mon Aug 17 23:52:13 EDT 1998 Art Cancro * Implemented a bunch of user account related functions in the CitadelAPI library. Mon Aug 17 20:01:18 EDT 1998 Art Cancro * Fixed the crash problem. It wasn't AGUP/ASUP, but rather a buffer overrun in getuser() (thanks, Nathan). Implemented overrun checks in getuser(), getroom(), and getfloor() to prevent future problems. Mon Aug 17 00:06:52 EDT 1998 Art Cancro * Updated citmail.c with the latest stuff from the production system. * Implemented AGUP and ASUP commands, but AGUP crashes the server after its first successful use (user-not-found's don't affect it). Thu Aug 6 19:25:01 EDT 1998 Art Cancro * Got the CitadelAPI library to the point where the server can start up an extension, and the extension will connect to the server, do some initialization, call a user-supplied CtdlMain(), and exit. Also hacked together a _temporary_ form of the new EXTN server command. Wed Aug 5 23:02:22 EDT 1998 Art Cancro * Second attempt at getting the server API started. Now it runs outside of the server and builds a connection. Tue Aug 4 18:33:06 EDT 1998 Art Cancro * Modified the appearance of Internet addresses when they arrive on a Citadel system. * Removed the field from the message format writeup in hack.txt. * Fixed-up citmail.c so that it doesn't try to do database lookups. Mon Aug 3 23:01:37 EDT 1998 Art Cancro * Started developing the server-side API. This is in its very initial stages. See serverapi.c and techdoc/api.txt 1998-08-02 Nathan Bryant * Makefile.in: added config_decls.h to dependencies Sun Aug 2 21:09:09 EDT 1998 Nathan Bryant * config_defs.h: renamed to config_decls.h * config.c, sysoputil.c: updated to reflect the above Sun Aug 2 18:52:05 EDT 1998 Nathan Bryant * config_defs.h: new file, contains external declarations from config.c * config.c: moved defs to config_defs.h, use PATH_MAX from for bbs_home_directory * mailinglist.c, support.c: include * sysoputil.c: include , , "config_defs.h", remove duplicated defs, replace gets() call with fgets() * user_ops.c: define _XOPEN_SOURCE_EXTENDED Sat Aug 1 18:32:52 EDT 1998 Nathan Bryant * ipc_c_tcp.c: fixed order of memcpy parameters after gethostbyname Sun Jul 19 17:26:12 EDT 1998 Nathan Bryant * ChangeLog: reordered; the GNU standard is to add new entries to the top. * .cvsignore: added userlist Sun Jul 12 20:58:59 EDT 1998 Art Cancro * Finished migrating everything to the new data store. * Replaced the binary "calllog" with the ASCII "citadel.log" * Began converting broken utilities that depend on the old data store Sat Jul 11 00:20:48 EDT 1998 Nathan Bryant * Makefile.in: removed msgstats Fri Jul 10 1998 Art Cancro * Initial CVS import