$Log$
+ Revision 591.95 2002/08/21 21:58:00 ajc
+ * Completed self-service list subscription via web.
+ (Still need to implement unsubscribe.)
+
+ Revision 591.94 2002/08/16 21:04:56 ajc
+ * Add LPRM command
+
+ Revision 591.93 2002/08/14 20:21:52 ajc
+ * Extend GETR/SETR to allow twiddling of bits in the QRflags2 bucket
+ * New flag and config options to allow/disallow self-service list subscription
+ and unsubscription to a room
+
+ Revision 591.92 2002/08/14 02:36:05 ajc
+ * WebCit list subscription integration
+
+ Revision 591.91 2002/08/13 18:48:46 ajc
+ * Generate and send subscription confirmation requests.
+ (Still need to finalize the URL format)
+
+ Revision 591.90 2002/08/13 17:19:11 ajc
+ * Added email capability to quickie_message()
+
+ Revision 591.89 2002/08/13 04:02:06 ajc
+ * <R>eplace string is now case sensitive
+
+ Revision 591.88 2002/08/13 03:46:31 ajc
+ * More work on the self-service subscribe/unsubscribe infrastructure
+
+ Revision 591.87 2002/08/12 03:00:20 ajc
+ * Fixed bug in <R>eplacestring which caused it to lock up in certain conditions
+
+ Revision 591.86 2002/08/12 00:09:05 ajc
+ * Compress VISIT records using zlib if available. This reduces the object
+ size from over 4k to about 70 bytes. Experimental.
+ * Automatically uncompress database records found to be compressed (duh)
+
+ Revision 591.85 2002/08/08 22:01:35 ajc
+ * autoconf to look for zlib (for an upcoming experiment)
+
+ Revision 591.84 2002/08/08 03:25:56 ajc
+ * Bugfix for above
+ * Started writing some infrastructure for sub/unsub
+
+ Revision 591.83 2002/08/08 02:49:12 ajc
+ * serv_network.c: retain unknown commands in netconfigs and write them back
+ * techdoc/netconfigs.txt: specify commands for subscribe/unsubscribe pending
+ * serv_listsub.c: added (currently a stub)
+
+ Revision 591.82 2002/08/06 03:12:14 ajc
+ * Fixed and clarified "new mail has arrived" messages.
+
+ Revision 591.81 2002/08/06 03:02:29 ajc
+ * ;AE command -- Make it clearer which floor the user is editing
+
+ Revision 591.80 2002/08/06 02:58:01 ajc
+ * Cleaned up the output of digest mode. It's usable now, but the self-service
+ subscribe/unsubscribe functions are not there yet.
+
+ Revision 591.79 2002/08/05 14:38:11 ajc
+ * rooms.c: corrected a typo reported by Campagnolo (Mike Poulin)
+
+ Revision 591.78 2002/08/03 19:48:40 ajc
+ * NULLify 'roomrec' before attempting partial match in <G>oto
+ (fixes heap corruption when this command is executed)
+
+ Revision 591.77 2002/08/03 04:13:46 ajc
+ * citadel_ipc.c: Attempted to clean up memory allocation
+
+ Revision 591.76 2002/08/01 05:41:53 ajc
+ * Completion of (most of) digest mode. Still needs some polish.
+
+ Revision 591.75 2002/07/31 04:01:57 ajc
+ * Began implementing "digest mode" for listserving. (Not complete)
+
+ Revision 591.74 2002/07/28 20:33:13 ajc
+ * Augmented the "headers only" functionality of the message reading API (as
+ well as the options of the server commands which expose it) to allow
+ headers+body, headers only, or body only.
+ * Adjusted message output of IMAP command FETCH BODY[1] when message is in
+ legacy Citadel format. This fixes a bug exposed by SquirrelMail.
+
+ Revision 591.73 2002/07/23 04:00:06 ajc
+ * Completed the MSGP and MSG4 commands to set the client's preferred MIME
+ content types, and fetch messages with MIME content types.
+
+ Revision 591.72 2002/07/21 22:29:46 ajc
+ * Added in some infrastructure to switch the client's message reading from
+ conventional MSG0 to a MIME-download type thing, like WebCit does.
+
+ Revision 591.71 2002/07/21 15:45:07 error
+ * Remove duplicate call for server time in who_is_online(); IPC does this now
+
+ Revision 591.70 2002/07/21 15:43:57 error
+ * citadel_ipc.c: Fix for segfault on empty messages
+
+ Revision 591.69 2002/07/20 04:05:10 ajc
+ * Updated hack.txt with some fresh new information
+
+ Revision 591.68 2002/07/19 02:28:11 ajc
+ * citadel_ipc.c: changed various buffer lengths from 256 to SIZ in order to
+ accomodate long lines which often spew out (usually from spam unfortunately)
+
+ Revision 591.67 2002/07/18 21:29:37 nbryant
+ added a note about GNU make to the configure script output
+
+ Revision 591.66 2002/07/18 20:21:18 ajc
+ * Eliminated the 512-message limit in the client for reading messages.
+
+ Revision 591.65 2002/07/13 04:12:40 ajc
+ * Don't lie about format types in MSG0 anymore. We no longer need to.
+
+ Revision 591.64 2002/07/13 03:24:32 ajc
+ * CtdlOutputMsg() caches the most recently fetched message in memory. This
+ eliminates the need to do multiple database fetches when we go back for
+ additional MIME parts, etc.
+
+ Revision 591.63 2002/07/11 03:40:51 ajc
+ * When outputting a multipart MIME message, supply the client with "pref="
+ and "suff=" lines in addition to the "part=" lines.
+
+ Revision 591.62 2002/07/02 16:27:06 error
+ * prototypes in citadel_ipc.h updated
+
+ Revision 591.61 2002/06/29 23:26:55 error
+ * fixed some memory leaks
+
+ Revision 591.60 2002/06/29 18:36:31 error
+ * tools.c: Massively faster versions of extract_token() and remove_token().
+ These functions can now handle multi-kilobyte sized strings with hundreds
+ of tokens (or more?).
+
+ Revision 591.59 2002/06/29 15:55:07 error
+ * Convert whobbs, serv_info, misc. functions to new IPC code
+
+ Revision 591.58 2002/06/27 03:10:04 error
+ * rooms.c: converted most functions to new IPC code
+
+ Revision 591.57 2002/06/25 15:38:52 error
+ * fixed bug in dotgoto() causing free() to segfault
+
+ Revision 591.56 2002/06/25 15:13:27 error
+ * gotonext() now uses new IPC code to retrieve room listing
+
+ Revision 591.55 2002/06/25 14:21:35 error
+ * remove a debugging trap I accidentally left in the code
+
+ Revision 591.54 2002/06/24 20:17:43 error
+ * Fixed code for client segfault at login
+
+ Revision 591.53 2002/06/24 20:11:00 error
+ * Buffer overflow fixes and minor cleanup in IPC code
+
+ Revision 591.52 2002/06/24 16:07:42 error
+ * Message reading and other functions which use the fmout() screen
+ formatter now use the new IPC code.
+
+ Revision 591.51 2002/06/22 20:09:16 error
+ * Use a new IPC API (in citadel_ipc.c). Partially converted citadel.c to
+ use the new API.
+
+ Revision 591.50 2002/06/21 12:32:48 ajc
+ * Minor documentation update
+
+ Revision 591.49 2002/06/19 21:52:13 ajc
+ * Support a transient room create as well
+
+ Revision 591.48 2002/06/19 21:42:57 ajc
+ * Added support for "transient goto" which allows entry into a private and/or
+ zapped room without putting the room [back] on your known rooms list. This
+ is useful for the new administrative functions in WebCit (updating a user's
+ vCard without the Aide suddenly having that user's config room on their
+ list).
+
+ Revision 591.47 2002/06/18 16:34:06 error
+ * room_ops.c: Fix for old room record not being deleted when renaming
+ baseroom or aideroom
+
+ Revision 591.46 2002/06/16 21:01:11 ajc
+ * Allow Aides to create rooms in other users' namespaces (if global access
+ controls allow)
+
+ Revision 591.45 2002/06/15 20:48:50 ajc
+ * Fixed small bug in the e<X>pert mode toggle
+
+ Revision 591.44 2002/06/15 20:14:55 ajc
+ * Fixed a memory allocation bug in the vCard parser
+
+ Revision 591.43 2002/06/15 17:53:59 error
+ * citserver.c: MESG command can now send a different system message based
+ on the developer and client ID of the connected client
+
+ Revision 591.42 2002/06/15 04:52:26 ajc
+ * SpamAssassin connector is now configurable in <.A>ide <S>ysconfig <I>nternet.
+ * Allow more than one SA server (it'll try 'em all)
+ * Don't run SA for logged in users
+
+ Revision 591.41 2002/06/14 20:42:56 ajc
+ * Discovered that spamd works even without the Content-length: command, so I
+ was able to redo the spam checker to work without a temp file.
+
+ Revision 591.40 2002/06/14 20:37:03 ajc
+ * Disabled the spam strings checker I wrote a few days ago.
+ * When receiving SMTP, check to see if spamd (the SpamAssassin daemon) is
+ running on the local machine. If yes, run the message through it and
+ reject if spam.
+
+ Revision 591.39 2002/06/12 03:42:21 ajc
+ * "Suppress message prompts" has been changed to "Prompt after each message"
+ and of course the effect has been reversed.
+ * "Be unlisted in userlog" has been moved to the end of the list of
+ configuration prompts, so it doesn't interrupt the flow of thought regarding
+ the prompting questions.
+
+ Revision 591.38 2002/06/10 22:25:25 ajc
+ * Configuration for spam filter
+
+ Revision 591.37 2002/06/09 23:59:38 ajc
+ * Started working on the spam filter
+
+ Revision 591.36 2002/06/07 22:10:51 ajc
+ * Added a new message function hook type EVT_SMTPSCAN which permits modules to
+ register hooks that can scan incoming SMTP messages and elect to reject them
+ (due to virus or spam content, for example).
+
+ Revision 591.35 2002/06/07 03:22:13 ajc
+ * Added a module "serv_mrtg" which allows activity reporting to MRTG
+ (http://www.mrtg.org) -- this will replace our stats program.
+
+ Revision 591.34 2002/06/02 16:42:17 error
+ * Support for Ctrl-W to erase a word when editing or at a prompt
+
+ Revision 591.33 2002/05/31 18:34:04 nbryant
+ better curses compatibility, and a couple makefile/configure tweaks
+
+ Revision 591.32 2002/05/28 13:59:02 ajc
+ * Removed the 'netsetup' and 'dnetsetup' utilities (obsolete)
+
+ Revision 591.31 2002/05/24 19:58:13 ajc
+ * Fixed the "idle timeout during paginator prompt" bug by reintroducting the
+ concept of a "half keepalive" and sending them during paginator prompts.
+
+ Revision 591.30 2002/05/23 03:33:21 ajc
+ * Added a GTSN (GeT list of SeeN messages) command
+
+ Revision 591.29 2002/05/20 14:29:59 ajc
+ * commands.c: fixed bug in the scan for idle_threshold= which didn't include
+ the = sign and ended up always setting this value to 0
+
+ Revision 591.28 2002/05/17 03:57:30 ajc
+ * When doing fixed_output() of converted HTML, output the whole block of
+ data at once instead of one character at a time
+
+ Revision 591.27 2002/05/16 04:44:58 ajc
+ * Reduce the number of socket writes when doing fixed_output() to avoid
+ getting killed by overhead. (Thanks to IO for the insight)
+
+ Revision 591.26 2002/05/14 15:25:34 error
+ * room_ops.c: clarified aide message when room aide is removed
+
+ Revision 591.25 2002/05/14 15:18:43 error
+ * rooms.c: Print name of room aide if any when doing <i>nfo
+
+ Revision 591.24 2002/05/14 01:33:18 error
+ * Fixed some incredibly silly typos
+
+ Revision 591.23 2002/05/14 01:27:18 error
+ * Minor cosmetic changes, extraneous double spaces etc.
+
+ Revision 591.22 2002/05/14 01:15:54 error
+ * Idle threshold on the who list is now customizable in the citadel.rc
+
+ Revision 591.21 2002/05/14 01:09:57 error
+ * citadel.c: spacebar won't read New if there are no new messages
+
+ Revision 591.20 2002/05/12 23:00:11 ajc
+ * Removed an unused variable
+
+ Revision 591.19 2002/05/12 22:57:04 ajc
+ * Removed the unfinished moderation system.
+ * CtdlForEachMessage() - only fetch metadata when hunting for messages with
+ a specified Content-type. Serious performance boost.
+
+ Revision 591.18 2002/05/05 17:33:09 error
+ * screen.c: fix lack of beeps in curses mode
+
+ Revision 591.17 2002/05/04 02:58:16 ajc
+ * Documented a small protocol change for the STEL command
+
+ Revision 591.16 2002/04/30 03:13:59 ajc
+ * When sending a page that results in the receiver's Sent/Received Pages>
+ room to be created, don't automatically grant the sender access to that room.
+ * Added a parameter to create_room() to implement the above
+
+ Revision 591.15 2002/04/23 13:38:08 ajc
+ * Minor docs update
+
+ Revision 591.14 2002/04/21 21:28:06 ajc
+ * Create the My Citadel Config> room along with the user account
+
+ Revision 591.13 2002/04/20 03:00:01 ajc
+ * One more fix for the RENAME command wrt namespaces.
+
+ Revision 591.12 2002/04/18 18:44:36 nbryant
+ don't use libtool -avoid-version for libcitserver - this might help for
+ OpenBSD
+
+ Revision 591.11 2002/04/17 04:35:06 ajc
+ * Finished the IMAP RENAME command. (I ended up using nested functions
+ because it made the task much, much easier. We can fix it later or convert
+ it to C++ if we find this becomes a problem.)
+
+ Revision 591.10 2002/04/15 13:25:47 ajc
+ * Add error responses to imap_rename() and set up subfolder framework
+
+ Revision 591.9 2002/04/14 22:42:49 ajc
+ * Began implementing RENAME command in IMAP.
+
+ Revision 591.8 2002/04/14 22:27:05 ajc
+ * Added access control checking to CtdlRenameRoom()
+
+ Revision 591.7 2002/04/14 22:11:22 ajc
+ * New back end function CtdlRenameRoom() which is used to rename a room and/or
+ move it to a different floor.
+ * cmd_setr() now uses CtdlRenameRoom() to do part of its work
+
+ Revision 591.6 2002/04/10 03:58:40 ajc
+ * Began work on IMAP RENAME
+
+ Revision 591.5 2002/04/09 14:26:43 ajc
+ * Allow INBOX to have subfolders. There's no longer any reason not to.
+
+ Revision 591.4 2002/04/05 22:31:59 error
+ * Send time-of-day with pages sent via IMAP
+
+ Revision 591.3 2002/04/05 14:34:02 ajc
+ * Minor tweak to nested folder algorithm to handle nesting in mail root
+
+ Revision 591.2 2002/04/05 04:25:56 ajc
+ * Support nested folders in IMAP. We might want to change the delimiter.
+
+ Revision 591.1 2002/04/04 23:25:30 ajc
+ * Experimental hacking to handle subfolderization in IMAP. Seems to work ok
+ but it makes Mozilla mail hang. Will investigate more later...
+
Revision 591.0 2002/04/01 05:13:20 ajc
* Tagged everything for 5.91 release
* Makefile.in: removed msgstats
Fri Jul 10 1998 Art Cancro <ajc@uncensored.citadel.org>
- * Initial CVS import
+ * Initial CVS import