$Log$
+ Revision 607.14 2003/06/29 04:13:32 ajc
+ * Renamed:
+ S_QUICKROOM to S_ROOMS
+ S_USERSUPP to S_USERS
+ CDB_QUICKROOM to CDB_ROOMS
+ CDB_USERSUPP to CDB_USERS
+
+ Revision 607.13 2003/06/29 04:07:11 ajc
+ * Globally renamed "struct quickroom" and "struct usersupp" to
+ "struct room" and "struct user".
+
+ Revision 607.12 2003/06/29 04:06:41 ajc
+ *** empty log message ***
+
+ Revision 607.11 2003/06/29 03:58:41 ajc
+ * Renamed fields in 'struct config' which are no longer relevant (but kept
+ them in place to avoid corrupting everyone's data files). Removed them
+ entirely from serv_vandelay.c.
+
+ Revision 607.10 2003/06/28 05:12:56 ajc
+ * Bump internal version number to 6.08
+ * Use (-1) instead of BBSUID as the uid of user records which exist only
+ in Citadel and not in the system password database. serv_upgrade also
+ changes this setting for ALL such users, the first time the server is run
+ after upgrading to 6.08
+
+ Revision 607.9 2003/06/27 22:19:31 error
+ * routines2.c: Quick and dirty fix for Mail> becoming new after entering a
+ mail message
+
+ Revision 607.8 2003/06/26 01:50:14 ajc
+ * Compiler warning fix for building setup without newt
+
+ Revision 607.7 2003/06/25 15:40:57 ajc
+ * setup now uses "newt" instead of "curses" to draw its pretty screens.
+ Changes were made to setup.c as well as all the autoconf stuff.
+
+ Revision 607.6 2003/06/25 02:40:05 ajc
+ * Per-user and global flags calling for validation need to be set in the
+ vCard upload thingie, not in the wrapper function that emulates the
+ deprecated REGI server command. Moved it to the correct place.
+
+ Revision 607.5 2003/06/22 20:49:31 error
+ * citadel.c: display idle times in wholist up to 999 days
+
+ Revision 607.4 2003/06/19 04:12:30 ajc
+ * domain.c: use qsort() to sort MX records by preference. Why have a
+ custom function when the operating system provides one for free?
+ * serv_smtp.c: accept mail from "<>" (empty sender). RFC1123 5.2.9 demands it.
+
+ Revision 607.3 2003/06/19 03:55:22 ajc
+ * Fixed a subtle but ugly bug in the SMTP sender that was causing it to
+ ignore all successful connections except the last one. Now when it gets
+ a connection it uses it.
+
+ Revision 607.2 2003/06/17 22:05:11 ajc
+ * New format for wholist.
+
+ Revision 607.1 2003/06/16 04:39:45 ajc
+ * support.c: removed an unused variable
+ * citadel.c: sort wholist by idle time (most recently active users first)
+
+ Revision 607.0 2003/06/10 04:15:39 ajc
+ * THIS IS 6.07
+
+ Revision 606.10 2003/06/04 21:46:13 error
+ * citadel.c: Added a missing #ifdef __CYGWIN__
+
+ Revision 606.9 2003/06/04 21:39:27 error
+ * Numerous fixups needed for Windows port:
+ * cmd_mesg() rewritten to use the stat() syscall to find files
+ * really_do_keepalive() does not try to send if we are not connected
+ * Misc. fixups; added Windows readme file
+
+ Revision 606.8 2003/06/04 21:30:39 error
+ * messages.c: When file attachment has no name, use message subject as name
+
+ Revision 606.7 2003/06/02 23:11:00 error
+ * Checkin installer script citadel.nsi for NSIS Windows installer
+
+ Revision 606.6 2003/06/02 03:01:22 ajc
+ * citserver.c: added another trace message to is_public_client(). Uncensored
+ has crashed twice in this function, for no apparent reason.
+ * internet_addressing.c: don't attempt to look up the specified Internet
+ address in a Citadel directory, if the supplied address has no hostname
+ portion. (Fixes a crash in the calendar service when alias() attempts to
+ look up potentially nonexistent attendees during event validation)
+
+ Revision 606.5 2003/05/28 03:08:38 ajc
+ * msgbase.c: validate_recipients() now rejects Internet addresses in
+ domains belonging to the local system or an attached Citadel network,
+ when it fails to translate to a Citadel address.
+
+ Revision 606.4 2003/05/26 05:36:25 ajc
+ * citadel.h: changed internal version number to 6.07
+ * file_ops.c: #include <ctype.h>
+ * migratenet.c: #include <ctype.h>
+
+ Revision 606.3 2003/05/26 05:30:18 ajc
+ * serv_calendar.c: fixed a bug in the "ICAL freebusy" subcommand which
+ caused it to always fetch the logged in user's freebusy times instead
+ of the user specified.
+
+ Revision 606.2 2003/05/22 13:34:30 ajc
+ * database_sleepycat.c: added a couple of diagnostic messages to help
+ troubleshoot problems with db-4.1.25 on Red Hat Linux 9
+ * room_ops.c: call mkdir() instead of system() to create a directory
+
+ Revision 606.1 2003/05/20 01:28:50 error
+ * citadel.c: don't truncate roomname when user is idle, in long who list;
+ display idle time in short who list
+
+ Revision 606.0 2003/05/16 15:17:11 ajc
+ * THIS IS 6.06
+
+ Revision 605.50 2003/05/16 14:59:08 ajc
+ * Removed the old rec_log() facility because the utilities which read its
+ data are crufty, disused, and produce incorrect output.
+ * Updated the documentation for the forthcoming 6.06 release.
+ * public_clients: removed hostnames which crept in from development servers
+
+ Revision 605.49 2003/05/16 04:07:37 nbryant
+ make configure.ac automagically do the right thing on redhat 9
+ remove crappy tolower() hack that was breaking the build on redhat 9
+ (because the kerberized openssl includes ctype.h)
+
+ before anyone yells at me, i did a little cvs archaeology on the tolower
+ thing, and it appears to have been in the Citadel source base since,
+ roughly, the Epoch. I doubt that the hack is needed any longer, and using
+ the OS's tolower() will handle extended charsets.
+
+ Anyone who is stupid enough to be using an OS with such a horribly broken
+ tolower() can just scratch their head and figure things out for
+ themselves. Citadel needs higher barriers to entry, there are too many
+ weirdos on the IGnet lately. :-)
+
+ Revision 605.48 2003/05/13 03:22:04 ajc
+ * Implemented the IMAP STARTTLS command as specified in RFC 2595.
+
+ Revision 605.47 2003/05/06 03:38:59 ajc
+ * IMAP folder create and rename commands -- don't allow backslashes in
+ folder names.
+
+ Revision 605.46 2003/05/03 16:50:52 ajc
+ * Change folder delimiter in room names from / to \
+
+ Revision 605.45 2003/05/02 04:02:47 ajc
+ * setup.c: allow specification of the Citadel system account by either
+ username or uid
+ * setup.c: tell init to re-read /etc/inittab by sending a SIGHUP to pid 1
+ instead of hunting around for the correct init or telinit command
+ * docs/citadel.html: documented the above change, and also rewrote some
+ other stuff to be less BBS-specific
+
+ Revision 605.44 2003/04/30 16:16:13 ajc
+ * Minor fix to ESMTP greeting (missing '-' screwed up pipelining)
+
+ Revision 605.43 2003/04/30 15:46:27 ajc
+ * Added the ENHANCEDSTATUSCODES extention to ESMTP.
+
+ Revision 605.42 2003/04/29 04:41:22 ajc
+ * Fix an off-by-one error in the mime parser
+
+ Revision 605.41 2003/04/29 04:13:58 ajc
+ * mime parser: look for the "name=" subfield tacked onto either
+ Content-type or Content-disposition, wherever it finds it.
+
+ Revision 605.40 2003/04/28 16:56:51 ajc
+ * Added a site-configurable setting to suppress the automatic correction of
+ forged From: lines from authenticated SMTP users, for those who prefer
+ strict RFC compliance instead of common sense.
+
+ Revision 605.39 2003/04/26 21:55:15 ajc
+ * Anytime a socket connect() fails, CLOSE THE SOCKET before erroring out.
+ Not doing so causes a file descriptor leak.
+
+ Revision 605.38 2003/04/26 04:22:51 ajc
+ * Removal of individual "remote" lines from message delivery instruction sets
+ was corrupting the end of the set, rendering the "bounceto" line unusable
+ and preventing bounces from being delivered. Fixed this by explicitly
+ adding a trailing newline when remove_token() strips it.
+
+ Revision 605.37 2003/04/25 18:28:47 ajc
+ * When rejecting spam, use SMTP error code 550, not 552
+
+ Revision 605.36 2003/04/23 03:18:44 ajc
+ * Allow IMAP STORE of more than one flag at a time (Mail.app from MacOS
+ does this).
+
+ Revision 605.35 2003/04/15 02:44:02 ajc
+ * Do not allow incoming network polls while an outbound network processing
+ session is in progress.
+ * tools.c: removed collapsed_strcmp() as it is no longer used anywhere
+
+ Revision 605.34 2003/04/08 04:03:37 ajc
+ * Implemented the ".SILENT" protocol option in IMAP STORE. Certain apps seem
+ to want to use it.
+ * Optimized the IMAP operations which scan for expunged and added messages.
+ These loops no longer make multiple traversals through the message list.
+
+ Revision 605.33 2003/04/07 05:02:23 ajc
+ * Reworked all the "list rooms" operations so that they only require one
+ pass through the database.
+ * Repaired the "create floor" operation which was broken by the switch
+ to the new IPC libray
+
+ Revision 605.32 2003/04/02 13:33:28 ajc
+ * Fixed output of "-0500" vs. "+0500" type of timezone stamps in RFC822.
+ (I think they were reversed.)
+
+ Revision 605.31 2003/04/01 05:01:08 ajc
+ * sysdep.c: optimized MyContext() a bit, and inlined it. A little profiling
+ revealed that this function was getting used super heavily.
+ * tools.c: removed the older, slower string tokenizer functions that
+ weren't getting used anymore.
+
+ Revision 605.30 2003/03/31 04:55:58 ajc
+ * Repaired the formatting of text/plain messages with blank lines.
+
+ Revision 605.29 2003/03/30 06:16:52 ajc
+ * Optimized CtdlReadMessageBody() and also gave it an option to store
+ messages with CRLF newlines instead of LF. This option is used when
+ reading SMTP in order to keep Pine from barfing on LF-terminated newlines
+ while decoding quoted-printable. Once again, Mark Crispin is an idiot.
+
+ Revision 605.28 2003/03/26 05:17:12 ajc
+ * Downloading of attachments was completely broken by the change to the new
+ protocol library. Located and fixed bugs.
+ * html.c: increased the conversion buffer size
+
+ Revision 605.27 2003/03/24 03:42:14 ajc
+ * Add the ability to quit out while validating users. Also added a help
+ option listing available access levels. This closes Bugzilla #37.
+
+ Revision 605.26 2003/03/22 05:38:23 ajc
+ * During startup, display the version string from the Berkeley DB library.
+ * When deleting a mailbox, don't reveal the namespace prefix to the user.
+
+ Revision 605.25 2003/03/20 08:37:04 error
+ * connection_died(): Don't crash before printing message, crash afterward.
+ (Bugzilla id 111)
+
+ Revision 605.24 2003/03/19 11:48:06 error
+ * entmsg(): Don't corrupt the msg_arr[] when replying to a message in a room
+
+ Revision 605.23 2003/03/19 04:04:56 ajc
+ * Dropped support for GDBM and for versions of Berkeley DB prior to 4.1
+
+ Revision 605.22 2003/03/18 05:15:05 ajc
+ * Applied a patch sent in by Clint Adams <schizo@debian.org> to handle
+ building on Debian's unstable with Berkeley DB 4.1, compiled with
+ the --with-db-uniquename when errno is a macro (as in glibc 2.3.1).
+
+ Revision 605.21 2003/03/17 11:56:35 error
+ * Fix <G>oto in alternate_semantics - it actually marks messages read now.
+
+ Revision 605.20 2003/03/17 04:03:14 ajc
+ * Supply a NULL argument as the second argument to accept() instead of an
+ empty buffer whose contents we never even look at.
+
+ Revision 605.19 2003/03/16 05:07:12 ajc
+ * Fixed the bug that caused freebusy publishes to crash.
+
+ Revision 605.18 2003/03/15 23:05:08 ajc
+ * Rewrite of calendar-to-freebusy conversion functions. This one creates
+ freebusy in the correct format, instead of what I mistakenly assumed it
+ was supposed to look like. :(
+
+ Revision 605.17 2003/03/15 22:31:06 ajc
+ * When scanning a user's Calendar> room for calendar events, search for
+ MIME parts of type text/calendar instead of assuming that the event will
+ always appear as part "1"
+
+ Revision 605.16 2003/03/14 05:08:25 ajc
+ * Clone calendar subcomponents before encapsulating in case they already
+ happen to have a parent.
+
+ Revision 605.15 2003/03/13 05:48:33 ajc
+ * Move towards storing calendar objects as fully encapsulated VCALENDAR
+ components instead of just VEVENT subcomponents.
+
+ Revision 605.14 2003/03/12 03:33:54 ajc
+ * More changes to the handling of RFC822 headers with regard to
+ splitting up the headers and body. (Blank lines and such.)
+
+ Revision 605.13 2003/03/11 06:23:50 ajc
+ * More accurate handling of IMAP FETCH xx BODYSTRUCTURE command. This should
+ make Pine happier with multipart messages.
+
+ Revision 605.12 2003/03/10 05:38:21 ajc
+ * Tweaks to msgbase.c and imap_fetch.c to fix slightly incorrect byte counts
+ reported in the numerous variations of IMAP FETCH. This silences a number of
+ error messages reported by Pine.
+
+ Revision 605.11 2003/03/10 03:40:08 ajc
+ * Fixed bug that caused segv when <R>eplying to certain messages
+
+ Revision 605.10 2003/03/07 17:39:45 ajc
+ * Remove the "modules" directory
+
+ Revision 605.9 2003/03/06 04:58:11 ajc
+ * When entering a message into Citadel with authenticated SMTP, stamp the
+ room name as MAILROOM (Mail>) so it doesn't end up with an ugly moniker
+ like "0000058008.Sent Items"
+
+ Revision 605.8 2003/03/05 04:55:32 ajc
+ * serv_smtp.c: when authenticated, do not log out when a RSET command is
+ issued. This breaks clients which carelessly issue RSET before each
+ message, such as Pine.
+ * serv_smtp.c: when authenticated, ignore envelope FROM:<xxx> sender name
+ and replace with address of user who authenticated. Also fixes Pine.
+ * serv_smtp.c: when authenticated, not only do we continue our glorious
+ RFC-violating condition of replacing the From: header with the user who
+ is logged in, but we also stamp it with their preferred Internet address
+ for outbound mail (which is kept in CC->cs_inet_email).
+
+ Revision 605.7 2003/03/03 04:09:21 ajc
+ * When creating a user, hide the "My Citadel Config>" room of the user being
+ created, not the user currently logged in.
+
+ Revision 605.6 2003/03/01 18:18:03 ajc
+ * commands.c: alternate_semantics might have been getting set where it
+ should not. Fixed.
+
+ Revision 605.5 2003/03/01 17:25:33 ajc
+ * citadel.rc default for alternate_semantics = no
+
+ Revision 605.4 2003/02/23 05:34:45 ajc
+ * When the <N>ew command is used to read new messages, the next "lazy"
+ command (space bar) now always does <G>oto, regardless of the last one.
+
+ Revision 605.3 2003/02/21 04:24:51 ajc
+ * Completed the "ICAL freebusy" subcommand, which fetches free/busy times
+ for any requested user (output in stripped-down VCALENDAR format)
+
+ Revision 605.2 2003/02/20 04:51:17 ajc
+ * Began framing up a command to view other users' free/busy times
+
+ Revision 605.1 2003/02/19 22:38:43 ajc
+ * Changed socklen_t to int (to allow compile on Macintosh)
+
Revision 605.0 2003/02/19 03:46:01 ajc
* THIS IS 6.05
purge and the next to delete them. Works better in transactionland.
Revision 573.91 2001/02/14 08:11:27 error
- * citadel.rc: added $Id$ (it's about time!)
+ * citadel.rc: added RCS ID (it's about time!)
Revision 573.90 2001/02/14 04:23:54 ajc
* Fixed POP3 server responses ending in \n instead of \r\n as they should be.