]> code.citadel.org Git - citadel.git/blob - citadel/ChangeLog
msgbase.c: fixed tempfile naming problem that could cause a new
[citadel.git] / citadel / ChangeLog
1 1998-12-15 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
2         * msgbase.c: remove extra call to alias() which was causing
3           Citadel-to-Citadel mail to fall into the bit bucket.
4         * msgbase.c: fixed tempfile naming problem that could cause a new
5           outgoing netmail message to overwrite another if netproc had not been
6           run in between
7
8 1998-12-14 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
9         * More session table stability nonsense
10
11 Sun Dec 13 17:40:08 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
12         * sysdep.c, citserver.c: (hopefully) fixed a session table concurrency
13           bug which was causing the server to occasionally crash.
14         * removed serv_test.so from the default build
15
16 Fri Dec 11 18:50:00 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
17         * setup.c: default value for maxsessions is now 0 (no limit)
18         * room_ops.c: don't allow users to create a room called "Mail"
19         * serv_expire.c: fixed "number of messages purged" display
20         * commands.c: when using color, default to low-intensity colors
21
22 Tue Dec  8 07:58:16 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
23         * Beta 2
24
25 Sat Dec  5 01:24:03 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
26         * Added a new type of module hook for adding logging functions
27         * Removed whitespace to left and right of '@' in netmail recipients
28         * sysdep.c: read citadel.config _before_ initializing loadable modules
29         * stats.c: fixed segfault resulting from extracting log lines
30         * Ripped most of the "attachments" stuff out of both the client and
31           server.  (Thought of a better way to handle it ... LATER.)
32
33 1998-12-03 Nathan Bryant <bryant@cs.usm.maine.edu>
34         * setup.c: create citadel.config with mode 0600
35         * Makefile.in: don't chmod sendcommand
36         * serv_upgrade.c: don't create citadel.config if it doesn't already
37           exist (paranoia)
38         * setup.c: saner defaults for nodename and fqdn
39
40 Wed Dec  2 20:37:05 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
41         * msgbase.c: modified AddMessageToRoom() and all functions that call it
42           to use a more reliable/accurate method to set quickroom.QRhighest
43         * weekly.in: don't sort/purge filedir where filedir doesn't exist
44
45 1998-12-02 Nathan Bryant <bryant@cs.usm.maine.edu>
46         * weekly is now generated by configure
47
48 Mon Nov 30 19:48:52 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
49         * room_ops.c: added sort_msglist() to move and save operations
50         * sendcommand.c: added (also updated utils.txt, weekly, Makefile.in)
51         * BETA 1
52
53 Sun Nov 29 23:57:39 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
54         * Fixed cmd_regi() to not display a second result code after xfer
55         * Makefile.in: Removed "chmod 4755 citmail netmailer"
56
57 1998-11-23 Nathan Bryant <bryant@cs.usm.maine.edu>
58         * citadel.spec: added
59
60 1998-11-22 Nathan Bryant <bryant@cs.usm.maine.edu>
61         * Makefile.in: split install target into install-exec, install-data,
62           and install-doc subtargets
63
64 Sat Nov 21 16:53:30 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
65         * Added a fourth color mode in the client: "user" which turns color
66           on or off according to a per-user flag stored on the server.  Added
67           server-side support for this too, of course.
68         * import.c: removed
69         * serv_expire.c: finished the code to purge stale visits
70         * sysdep.c: strip trailing nonprintables in client_gets()
71         * routines2.c: fixed <.AS> command; all configs now work properly
72         * Moved num_parms() and all the extract() type functions into tools.c
73           and removed them from all other files.  Linked in tools.[o|ro] there.
74         * netproc.c: handled incoming file transfers to correct room directory
75         * room_ops.c: fixed incorrect naming of files in info and images dirs
76
77 Fri Nov 20 20:29:07 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
78         * setup.c: removed all prompts that can be configured from within the
79           client in order to simplify the setup procedure
80
81 Thu Nov 19 23:28:33 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
82         * Fixed serv_upgrade.c and export5.c (found elsewhere) to use a new
83           export format which treats visits as a separate section
84         * serv_expire.c: began writing functions to purge rooms and visits
85           (neither work yet), and added a way to call defrag_databases()
86
87 Wed Nov 18 23:51:17 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
88         * Reimplemented 'visit' structs stored globally instead of as
89           lists-per-user
90
91 Tue Nov 17 22:37:48 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
92         * Started implementing global room numbers.
93
94 Sun Nov 15 20:32:34 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
95         * room_ops.c: mailbox rooms always appear on the main floor
96         * made QR_MAILBOX rooms non-editable
97         * cmd_setr() delete old room record when room name changes
98           (This causes a big mess that exposes a flaw in the whole design.)
99         * room_ops.c: users can delete messages from their mailboxes
100
101 Thu Nov 12 23:59:13 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
102         * Rewrote cmd_rchg() and also increased the size of the "fakename"
103           buffer.  Overruns are probably what was causing the crashes.
104         * Changed the way cmd_ent3() handles mail messages; the previous code
105           rerouted all private mail to the trash.
106
107 Wed Nov 11 17:57:39 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
108         * citserver.c: slight changes to cmd_rchg() and cmd_hchg() [crashes]
109         * citserver.c, msgbase.c, user_ops.c: hide the owner-prefix of mail
110           rooms in a couple more places: set_wtmpsupp() and make_message()
111         * sysdep.c: added an fflush() to lprintf() for "tail -f"-able logs
112         * serv_expire.c: purge ops are now a command instead of a cleanup
113           function.  This is probably temporary as well.
114         * citadel.c: fixed the way <.WL> parses the returned data from a
115           TIME command.
116
117 1998-11-11 Nathan Bryant <bryant@cs.usm.maine.edu>
118         * serv_upgrade.c: fix uninitialized variable
119
120 Wed Nov 11 00:47:32 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
121         * msgbase.c: fixed a bug that was misrouting incoming network msgs
122         * server.h, database.c: wrapped all GDBM calls in critical sections
123           to avoid making those calls re-entrantly (gdbm fatal: lseek error)
124
125 1998-11-10 Nathan Bryant <bryant@cs.usm.maine.edu>
126         * Makefile.in: link in snprintf.o where needed
127
128 1998-11-09 Nathan Bryant <bryant@cs.usm.maine.edu>
129         * client_chat.c: eliminate calls to sprintf()
130         * commands.h, routines.c, routines2.c: warning fix
131         * commands.c, control.c, cux2ascii.c, file_ops.c, import.c,
132           ipc_c_tcp.c: eliminate sprintf() calls
133
134 Mon Nov  9 19:15:31 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
135         * serv_upgrade.c: added all missing fields to export/import
136         * serv_expire.c: support per-user purge time when purging users
137         * user_ops.c: added per-user purge time to AGUP and ASUP commands
138         * routines.c: added more stuff to <.A>ide <E>dit user
139
140 Sun Nov  8 22:56:53 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
141         * serv_expire.c: created; moved message expiry from serv_test.c,
142           moved user purge from userpurge.c
143         * userpurge.c: deleted
144         * routines2.c: finished <.AS> command
145         * room_ops.c: fixed Aide room access (for some reason, the Aide
146           room had the QR_MAILBOX flag set)
147
148 1998-11-08 Nathan Bryant <bryant@cs.usm.maine.edu>
149         * useradmin.c: really removed (cvs remove)
150         * aidepost.c, citadel.c: convert all sprintf() calls to snprintf()
151         * sysdep.c: fix overrun in lprintf() described by dme/Dead Monkey
152         * citmail.c, citserver.c: convert all sprintf() call to snprintf()
153
154 Sun Nov  8 13:19:36 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
155         * useradmin.c: removed
156         * utils.doc: removed references to useradmin and sysoputil
157
158 Fri Nov  6 20:22:20 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
159         * citadel.h (and related files): removed defunct parameters,
160           c_defent and c_msgbase (erase your test bbs)
161         * Implemented CONF server command for site-global configs
162         * Shuffled yesno() and yesno_d() from routines.c to commands.c
163         * commands.c: implemented boolprompt()
164         * routines2.c: started adding CONF questions to <.AS> command
165         * room_ops.c: began a fix for the mysterious disappearing Aide room
166
167 1998-11-05 Nathan Bryant <bryant@cs.usm.maine.edu>
168         * snprintf.c: warning fix propagated over from gcit
169
170 1998-11-04 Nathan Bryant <bryant@cs.usm.maine.edu>
171         * added RCS Id keyword strings to sources
172         * citmail.c: reverted to version 1.10
173
174 Wed Nov  4 10:53:13 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
175         * messages.c: temporarily set screenwidth to a fixed value of 80
176           during <P>rint operations.
177
178 Mon Nov  2 12:59:03 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
179         * setup.c: looks for 'citadel', 'bbs', or 'guest' in /etc/passwd to
180           try to get a default for bbsuid if it's currently set to 0
181         * citmail.c: changed usersupp.eternal to usersupp.usernum (why didn't
182           it complain about this before?)
183         * serv_upgrade.c: began writing an "export" command to do sidegrades
184
185 Sun Nov  1 18:47:42 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
186         * serv_upgrade.c: cosmetic changes
187         * Implemented message expiry by date (this really needs to be moved
188           out of serv_test.c, but where does it belong?)
189
190 1998-11-01 Nathan Bryant <bryant@cs.usm.maine.edu>
191         * serv_upgrade.c: warning fixes
192         * acconfig.h: remove ANSI_COLOR
193         * Configure, Makefile.tmpl: removed
194
195 Sat Oct 31 20:48:44 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
196         * More stoopid ANSI colour additions here and there.
197         * ANSI colour selection is now in citadel.rc instead of an option in
198           the configure script.  "on" "off" and "auto" are available.
199         * added "build.txt" to the techdoc directory, with LS's build notes
200
201 1998-10-31 Nathan Bryant <bryant@cs.usm.maine.edu>
202         * citadel.c, commands.c, commands.h: set background color to black
203           before clearing screen, so that we can actually see text on
204           black-on-white xterms.
205
206 1998-10-29 Nathan Bryant <bryant@cs.usm.maine.edu>
207         * rooms.c: fix color of Mail>
208         * citadel.c: send ANSI detect sequence after attach_to_server() so the
209           terminal doesn't send the answerback sequence to the shell if we
210           can't connect.
211
212 Wed Oct 28 20:20:14 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us
213         * citadel.c: Added a splash of colour to the Wholist
214
215 1998-10-28 Nathan Bryant <bryant@cs.usm.maine.edu>
216         * configure.in: added comments
217         * mkinstalldirs: new file to be used for `make install'
218         * aclocal.m4, missing: new files, also swiped from automake
219         * citadel.c: don't mung the terminal if we can't find citadel.rc
220         * Makefile.in: added `install' target, `clean' removes
221           *.mo, rebuild configure when configure.in changes.
222         * configure.in: check for install and autoconf
223         * configure.in, Makefile.in: only pass -fPIC to gcc
224         * policy.c: warning fix for OSF/1 (use memset() instead of bzero())
225
226 Tue Oct 27 22:25:42 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
227         * Unified the "unpacked database" format for both upgrades and
228           sidegrades (also see export5.c elsewhere)
229         * citserver.c: clear out cmdbuf before reading a command; some server
230           commands were accidentally extracting parameters from previous cmds
231         * rooms.c: removed the warning about the ineffectiveness of kicking
232           users out of public rooms, because the new server can do lockouts
233
234 1998-10-27 Nathan Bryant <bryant@cs.usm.maine.edu>
235         * sysdep.c (client_gets), ipc_c_tcp.c (serv_gets): improved handling
236           of long lines. 
237         * Makefile.in: partial support for VPATH builds, autodependency fix
238
239 Tue Oct 27 00:08:16 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
240         * minor documentation changes
241
242 Sun Oct 25 14:57:40 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
243         * messages.c: fixed an oversight that was allowing attachments even
244           when disabled in citadel.rc
245
246 1998-10-25 Nathan Bryant <bryant@cs.usm.maine.edu>
247         * routines2.c: warning fix
248
249 Sat Oct 24 22:07:56 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
250         * Client: added message expiration policy questions to room edit
251         * Client: added <.A>ide <S>ystem configuration command
252
253 1998-10-24 Nathan Bryant <bryant@cs.usm.maine.edu>
254         * Makefile.in: Auto dependency generation (may require GNU make, but
255           does at least function without this feature on OSF/1 make);
256           Makefile is regenerated when Makefile.in changes (ditto);
257           `realclean' is now known as `distclean';
258           portability fixes for older Unix make utilities
259         * citadel.c, citadel.h, commands.c: make client suspendable
260
261 Fri Oct 23 19:34:38 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
262         * setup.c: default node name is now obtained from uname()
263         * config.c: added put_config()
264         * policy.c: added, moved GetExpirePolicy() from room_ops.c
265         * policy.c: implemented cmd_gpex() and cmd_spex()
266
267 Wed Oct 21 22:24:48 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
268         * Mail rooms now hide their owner-prefix from the client.
269         * proxy.c: added configurability and primitive message expiry
270
271 1998-10-20 Nathan Bryant <bryant@cs.usm.maine.edu>
272         * Makefile.tmpl: fix to build client with old Configure script
273         * configure.in: autologin defaults to enabled if crypt() is available
274         * room_ops.c: fix improper null-termination bug I introduced
275
276 Mon Oct 19 20:52:55 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
277         * Client ability to force display of prompts in Mail rooms, even when
278           the user has prompting turned off (citadel.rc option)
279
280 1998-10-16 Nathan Bryant <bryant@cs.usm.maine.edu>
281         * sysdep.c (cprintf): generate a newline on truncated buffer
282         * room_ops.c: exploitable overrun fixes
283
284 Thu Oct 15 19:27:32 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
285         * msgbase.c: reimplemented cmd_move()
286           room_ops.c: wrote AddMessageToRoom() which is used for both entering
287           and moving messages.
288         * setup.c: system-default message expire policy of "number of
289           messages, 150" is now a default configuration instead of a temp hack
290         * proxy.c: cache dir create now dies on any error except EEXIST
291
292 Wed Oct 14 22:41:16 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
293         * Misc code cleanup
294
295 1998-10-13 Nathan Bryant <bryant@cs.usm.maine.edu>
296         * configure.in: don't check for -lcrypt unless autologin is enabled
297         * file_ops.c: fix another overrun
298
299 Mon Oct 12 15:27:21 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
300         * Killed the "rooms" subdirectory (it isn't used anymore)
301         * dynloader.c: Made dynamically added server commands case-insensitive
302         * import.c is now serv_upgrade.c, a module
303         * Removed most of the "level 9" trace messages no longer needed
304
305 1998-10-12 Nathan Bryant <bryant@cs.usm.maine.edu>
306         * Makefile.in: simplified to use pattern rules; files compiled with
307           -D_REENTRANT go to *.ro to allow the same files to be used with both
308           client and server
309         * tools.c, tools.h: new files; misc routines used by both client and
310           server go here. contains safestrncpy() at the moment.
311         * rooms.c: fix several exploitable buffer overruns
312         * sysdep.c: fix infinite loop when long lines are received from the
313           client; fix exploitable buffer overrun in cprintf()
314         * ipc_c_tcp.c: fix infinite loop on long line from server
315         * serv_upgrade.sh: remove uncnsrd-dependent absolute path
316         * .cvsignore: add *.ro
317
318 Sun Oct 11 23:17:48 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
319         * Built some more of the message expiry infrastructure
320
321 1998-10-11 Nathan Bryant <bryant@cs.usm.maine.edu>
322         * citserver.c: fix two more overruns, one of which was preventing
323           the "From Host" from showing up in the <W>ho listing.
324
325 Sun Oct 11 02:51:55 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
326         * Moved "struct visit" and its associated defs from citadel.h to
327           server.h where they belong
328         * Set up data structures for room policies (expiry, etc.)
329
330 1998-10-10 Nathan Bryant <bryant@cs.usm.maine.edu>
331         * citserver.c: fix overrun which caused segv's on servers with long
332           hostnames.
333
334 Fri Oct  9 18:34:06 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
335         * user_ops.c: added PurgeStaleRelationships() to do processing at
336           session logout time to remove visits for rooms which no longer exist
337         * user_ops.c: implemented NewMailCount()
338
339 1998-10-09 Nathan Bryant <bryant@cs.usm.maine.edu>
340         * serv_chat.c: fix buffer overrun that was resulting in segv's
341         * serv_chat.c: fix another overrun that could cause sessions to hang,
342           and cleaned up some other strncpy()-related stuff. DON'T FORGET TO
343           NULL-TERMINATE DESTINATION BUFFERS AFTER STRNCPY CALLS.
344
345 Fri Oct  9 13:22:37 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
346         * Implemented "lazy mode" traversal - pressing the space bar will do
347           <N>ext messsage, <G>oto next room, or read <N>ew as appropriate.
348         * room_ops.c: modify CtdlRoomAccess() to allow access to mailbox rooms
349           only to their owners.
350
351 Thu Oct  8 17:13:27 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
352         * messages.c, citadel.rc: added the ability to display message numbers
353           in the header when reading messages.  I think this is butt ugly, but
354           some of the DaveCode afficionados seem to like it...
355
356 Thu Oct  8 15:34:45 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
357         * room_ops.c: Added is_noneditable() function to replace all of the
358           duplicated code present in all functions which edit room parameters.
359
360 1998-10-08 Nathan Bryant <bryant@cs.usm.maine.edu>
361         * lots of warning fixes; builds with -std1 on dec unix
362         * aidepost.c, citadel.h, citmail.c, file_ops.c, msgbase.c, netmailer.c,
363           netproc.c, rcit.c, server.h, stats.c, userlist.c: use time_t where
364           needed
365         * control.c, room_ops.c, serv_chat.c, sysdep.c: use memset() instead of
366           bzero()
367         * dynloader.c, dynloader.h, messages.c, server.h, sysdep.c,
368           sysdep_decls.h: function pointer/prototyping fixes
369         * rooms.c: use mkfifo(3) instead of system("mkfifo")
370
371 1998-10-07 Nathan Bryant <bryant@cs.usm.maine.edu>
372         * snprintf.c, snprintf.h: new files
373         * Makefile.in, configure.in, dynloader.c, sysdep.c: support for the
374           above; citserver now builds and runs on Digital Unix 4.0d with the
375           GNU-style configure script. there is a bug with the hostname display
376           in the wholist.
377         * netproc.c: sillyness fix
378         * room_ops.h: prototype delete_room()
379         * client_chat.c, commands.c, serv_chat.c, sysdep.c:
380           use HAVE_SYS_SELECT_H macro
381
382 Mon Oct  5 17:01:32 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
383         * Began fixing the stuff I broke
384
385 Sun Oct  4 23:35:18 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
386         * Did the big migration to the new data structures.  Lots of stuff is
387           now broken.  Basic moving from room to room works, but Mail is
388           broken, and some of the administrative commands are unimplemented.
389
390 1998-10-02 Nathan Bryant <bryant@cs.usm.maine.edu>
391         * configure.in: autologin now defaults to disabled
392
393 Fri Oct  2 00:04:31 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
394         * Finally removed all three usersupp.foo[MAXROOMS] elements, and
395           migrated all the code that used them to use "struct visit" instead.
396
397 Thu Oct  1 23:02:20 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
398         * Rewrote [l][get|put]room() functions to use room names rather than
399           room index numbers.  Temporarily prepended a "n" to these four
400           function names until they are put to use.
401
402 Thu Oct  1 16:27:13 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
403         * Removed a few more references to usersupp.lastseen[]
404
405 1998-10-01 Nathan Bryant <bryant@cs.usm.maine.edu>
406         * .cvsignore: add so_locations (generated by osf1 ld with shared libs)
407         * Makefile.in: restructured variables for greater consistency, use
408           @echo to print out notices during the make process, add so_locations
409           to `cleaner'
410         * configure.in, Makefile.in: configure checks for -rdynamic
411         * ipc_c_tcp.c: fix DEC compiler warning wrt unsigned char
412         * stats.c: add semicolon to placate DREC compiler
413         * user_ops.c: define _POSIX_C_SOURCE, include <limits.h>
414         * configure.in: pass -pthread to DEC compiler, don't check for
415           libpthread[s] on DEC Unix
416
417 1998-09-30 Nathan Bryant <bryant@cs.usm.maine.edu>
418         * Makefile.in: new variable PTHREAD_DEFS for portability
419         * aidepost.c, citadel.c, citmail.c, mailinglist.c, msgform.c,
420           netmailer.c, netpoll.c, netproc.c, rcit.c, readlog.c, setup.c,
421           stats.c, userlist.c, whobbs.c: return type of main() is int
422         * citadel.c, commands.c, messages.c: use time_t properly
423         * citserver.c: include <limits.h>
424         * config.guess, config.sub, install-sh: new files
425         * configure.in: don't use gcc on Digital Unix
426
427 Tue Sep 29 23:17:34 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
428         * room_ops.c: modified usergoto() to look at the new data structures
429           for counting new messages and such.
430
431 1998-09-29 Nathan Bryant <bryant@cs.usm.maine.edu>
432         * user_ops.c: fix compiler warning and potential memory leak,
433           include sysdep.h
434         * configure.in, Makefile.in: only build the server if we find pthreads
435         * Makefile.in: realclean removes config.{cache,log,status}
436
437 Tue Sep 29 13:20:14 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
438         * Removed code from some of the utilities which was still attempting
439           to access the old non-gdbm data store.
440         * housekeeping.c: rewrote check_ref_counts() to do a ForEachRoom()
441           traversal instead of a MAXROOMS loop.
442         * sysdep.c: set up a dummy CitContext record to be used during server
443           startup, during which time there is no real context.
444
445 Mon Sep 28 23:51:51 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
446         * Implemented the function ForEachRoom() to handle all-rooms traversal
447           (this will work with both the old and new paradigms, because both
448           use a GDBM database with one room per record).  Migrated all room
449           list commands to use it.
450
451 Mon Sep 28 22:05:35 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
452         * Implemented the function CtdlRoomAccess() to handle *all* of the
453           user-access-to-rooms functionality.  Migrated all room list commands
454           to use it.  Still need to migrate gotos.
455
456 1998-09-28 Nathan Bryant <bryant@cs.usm.maine.edu>
457         * configure.in, acconfig.h: new files; partially functional GNU
458           autoconf configure script. Run autoheader; autoconf; ./configure
459           --prefix=`pwd` to test.
460         * Makefile.tmpl: new file; this is what Makefile.in used to be. Used by
461           Configure.
462         * Makefile.in: modified to work with autoconf-style configure script
463         * Configure: modified to use Makefile.tmpl and generate autoconf-style
464           macros. Removed procfs detection. Pass -O2 to gcc, -O to other
465           compilers. Removed mknod/mkfifo detection; code should use mkfifo(3).
466         * citmail.c, msgform.c, netproc.c, routines.c, support.c, userlist.c,
467           whobbs.c: use HAVE_STRERROR macro rather than NO_STRERROR
468         * commands.c: use HAVE_TERMIOS_H macro rather than POSIX_TERMIO
469         * netproc.c: remove procfs stuff. simply attempt to kill the target
470           process with signal zero instead; this checks whether the process
471           exists.
472         * setup.c, useradmin.c: use HAVE_CURSES_H macro
473
474 Sun Sep 27 23:41:29 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
475         * BOTH the old and new generation systems are being written to at
476           this point.  Code that reads stuff is still using the old system.
477
478 Sun Sep 27 16:10:49 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
479         * Changed all "generation" variables from char to long, in preparation
480           for removing MAXROOMS.  Generations for new rooms are now timestamps.
481         * Defined "struct visit" to hold user/room relationships.
482         * Removed some #define's from citadel.h that are no longer used.
483
484 Wed Sep 23 13:41:49 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
485         * More changes to support attachments.  They mostly work, but only
486           in fixed-format messages.
487
488 Mon Sep 21 21:19:17 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
489         * msgbase.c: began laying the groundwork to support attachments.
490           Purchased Rogaine(tm) in preparation for expected hair loss.
491
492 1998-09-21 Nathan Bryant <bryant@cs.usm.maine.edu>
493         * msgbase.c: include dynloader.h
494         * citadelapi.h: removed
495         * dynloader.h: prototype CtdlRegisterUserHook()
496
497 Sun Sep 20 18:56:37 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
498         * Added a UserFunctionHook category to implement hooks which perform
499           operations on various users or usernames
500
501 Fri Sep 18 21:14:41 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
502         * citserver.c: removed cmd_extn() and related code
503
504 1998-09-18 Nathan Bryant <bryant@cs.usm.maine.edu>
505         * user_ops.c: include dynloader.h
506         * roomstats.{c,mk}: removed
507         * Configure, Makefile.in: autodependency-related fixes
508
509 Thu Sep 17 22:55:29 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
510         * Various changes to allow "new messages" to work correctly with Mail
511
512 Thu Sep 17 22:21:45 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
513         * server.h, dynloader.c, citserver.c, user_ops.c: reduced the number
514           of hook types by inventing an EventType field to the Session hook.
515         * proxy.c: added pre-fetching
516
517 1998-09-17 Nathan Bryant <bryant@cs.usm.maine.edu>
518         * Makefile.in: add SERV_MODULES and PROXY_TARGETS to `cleaner'
519         * dynloader.[ch], serv_{chat,test}.[ch], sysdep.c: cleaned
520           up the dynamic loader interface as follows:
521           - all the symbol table stuff is gone.
522           - modules are loaded once at server startup and never unloaded.
523           - Added a new function CtdlRegisterProtoHook() to handle the stuff
524             that was being done with the symbol tables.
525           - Dynamic_Module_Init() now returns a pointer to a static struct
526             DLModule_Info; this structure itself has been modified to use char*
527             fields instead of fixed char arrays.
528         * roomstats.c: include <stdarg.h> not <stdargs.h> (is this file still
529           in use?)
530         * Configure, Makefile.in: added autodependency support
531
532 Wed Sep 16 22:25:13 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
533         * Implemented separate structs, lists, and functions for each type
534           of server-side hook available.
535
536 1998-09-16 Nathan Bryant <bryant@cs.usm.maine.edu>
537         * ipc_c_tcp.c: Fixed up some #include/prototyping stuff, call memcpy()
538           instead of bcopy()
539         * hooks.h: removed
540         * sysdep.c, user_ops.c: removed reference to hooks.h
541
542 Wed Sep 16 11:42:42 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
543         * ipc_c_tcp.c: Reversed any changes that have been made to this file,
544           because something was causing abominally slow response time.
545         * proxy.c: added.  This will eventually become a caching, pre-fetching
546           multiuser proxy server for the Citadel protocol.
547
548 1998-09-15 Nathan Bryant <bryant@cs.usm.maine.edu>
549         * Makefile.in: remove support.o from serv_chat.so, add -fPIC to compile
550           flags for serv_chat.o
551         * dynloader.c: include "sysdep_decls.h", use RTLD_NOW not RTLD_LAZY
552         * dynloader.h: prototype CtdlRegisterHook()
553         * .cvsignore: added data
554
555 Mon Sep 14 20:49:08 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
556         * Tried my hand at adding the ability for server extensions to
557           register various types of "hooks" in addition to just adding
558           server commands.  This is probably not final.
559
560 Tue Sep  8 12:11:56 EDT 1998 Brian Costello <btx@calyx.net>
561         * Added support for dynamic server modules.  Reworked serv_chat.c
562           to be such a module.
563
564 Tue Sep  1 23:09:50 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
565         * userpurge.c: rewrote using functions from the server core, rather
566           than the now-defunct external API.  This'll be ready once the module
567           loading code is done.  (I just had to commit _something_ tonight.)
568
569 Mon Aug 31 22:47:58 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
570         * Yanked the citadelapi.c module.  This wasn't working out well.
571         * techdocs/citadelapi.txt - began documenting the new API to be used
572           by modules which will be dynamic linked into the server - most of
573           this API is existing server functions.
574         * Added a ForEachUser() function with callback mechanism, and reworked
575           cmd_list() to use it.
576
577 Sun Aug 30 21:52:43 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
578         * Moved all of the gdbm databases to a separate "data" directory.
579
580 1998-08-26 Nathan Bryant <bryant@cs.usm.maine.edu>
581         * Makefile.in: realclean removes Makefile, fixed `touch citadel.h'
582           problem
583
584 1998-08-25 Nathan Bryant <bryant@cs.usm.maine.edu>
585         * room_ops.c: include time.h
586         * userlist.c, whobbs.c, serv_chat.c, user_ops.c, sysdep.c, stats.c,
587           citadel_decls.h, commands.c, messages.h, routines.h, routines2.h:
588           remove duplicated declarations
589
590 Mon Aug 24 23:45:01 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
591         * setup.c: Removed yesno_s()
592         * citadel.h, room_ops.c: added QRmtime field to struct quickroom,
593           modified whenever a room is modified or posted in.
594         * citadelapi.c: Added CtdlForEachRoom() function
595
596 Mon Aug 24 20:04:04 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
597         * Makefile.in: new target `cleaner' does the same as `realclean' 
598           without removing sysdep.h
599         * proto.h: is bad. eliminate. I've moved the prototypes into several
600           header files, one per .c file
601
602 Mon Aug 24 00:45:55 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
603         * Added a CtdlGotoRoom() function to the CitadelAPI.
604  
605 Sun Aug 23 21:47:00 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
606         * sysoputil is finally dead!  Removed it from the build.
607         * Added userpurge.c server extension (initial implementation)
608
609 Tue Aug 18 00:42:33 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
610         * Makefile.in: `clean' target no longer rm's sysdep.h; new target
611           `realclean' removes everything clean does, plus sysdep.h, plus
612           target binaries.
613         * Configure: add -Wstrict-prototypes to CFLAGS for gcc systems
614         * *.[ch]: protoized. Added several new header files containing
615           prototypes and other external declarations; many duplicated
616           declarations still should be moved to header files. proto.h must die
617           as well, IMHO.
618
619 Mon Aug 17 23:52:13 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
620         * Implemented a bunch of user account related functions in the
621           CitadelAPI library.
622
623 Mon Aug 17 20:01:18 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
624         * Fixed the crash problem.  It wasn't AGUP/ASUP, but rather a buffer
625           overrun in getuser() (thanks, Nathan).  Implemented overrun checks
626           in getuser(), getroom(), and getfloor() to prevent future problems.
627
628 Mon Aug 17 00:06:52 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
629         * Updated citmail.c with the latest stuff from the production system.
630         * Implemented AGUP and ASUP commands, but AGUP crashes the server
631           after its first successful use (user-not-found's don't affect it).
632
633 Thu Aug  6 19:25:01 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
634         * Got the CitadelAPI library to the point where the server can start
635           up an extension, and the extension will connect to the server, do
636           some initialization, call a user-supplied CtdlMain(), and exit.  Also
637           hacked together a _temporary_ form of the new EXTN server command.
638  
639 Wed Aug  5 23:02:22 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
640         * Second attempt at getting the server API started.  Now it runs
641           outside of the server and builds a connection.
642
643 Tue Aug  4 18:33:06 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
644         * Modified the appearance of Internet addresses when they arrive on
645           a Citadel system.
646         * Removed the <E> field from the message format writeup in hack.txt.
647         * Fixed-up citmail.c so that it doesn't try to do database lookups.
648
649 Mon Aug  3 23:01:37 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
650         * Started developing the server-side API.  This is in its very
651           initial stages.  See serverapi.c and techdoc/api.txt
652
653 1998-08-02  Nathan Bryant  <bryant@cs.usm.maine.edu>
654         * Makefile.in: added config_decls.h to dependencies
655
656 Sun Aug  2 21:09:09 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
657         * config_defs.h: renamed to config_decls.h
658         * config.c, sysoputil.c: updated to reflect the above
659
660 Sun Aug  2 18:52:05 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
661         * config_defs.h: new file, contains external declarations from config.c
662         * config.c: moved defs to config_defs.h, use PATH_MAX from <limits.h>
663           for bbs_home_directory
664         * mailinglist.c, support.c: include <string.h>
665         * sysoputil.c: include <string.h>, <limits.h>, "config_defs.h", remove
666           duplicated defs, replace gets() call with fgets()
667         * user_ops.c: define _XOPEN_SOURCE_EXTENDED
668
669 Sat Aug  1 18:32:52 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
670         * ipc_c_tcp.c: fixed order of memcpy parameters after gethostbyname
671
672 Sun Jul 19 17:26:12 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
673         * ChangeLog: reordered; the GNU standard is to add new entries to the
674           top.
675         * .cvsignore: added userlist
676
677 Sun Jul 12 20:58:59 EDT 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
678         * Finished migrating everything to the new data store.
679         * Replaced the binary "calllog" with the ASCII "citadel.log"
680         * Began converting broken utilities that depend on the old data store
681
682 Sat Jul 11 00:20:48 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
683         * Makefile.in: removed msgstats
684
685 Fri Jul 10 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
686         * Initial CVS import