$Log$
+ Revision 614.79 2004/03/15 16:47:04 error
+ * msgbase.c: cmd_move(): Fix the security logic for non-aides trying to
+ move or copy messages. The logic should do the following:
+ * Allow move/copy for Aides
+ * Allow regular users to:
+ * Move a message between two personal rooms
+ * Copy a message from a Personal room to a room the user is subscribed to
+ * Copy a message from a room the user is subscribed to, to a personal room
+ * Prohibit other moves/copies
+
+ Revision 614.78 2004/03/15 16:39:27 error
+ * Multiple files: Set permissions on existing Citadel directories to prevent
+ access to the database by local unix users to prevent direct database reads.
+
+ Revision 614.77 2004/03/15 16:36:50 error
+ * Multiple files: Convert most remaining client code to use new Citadel IPC
+ functions. A few bits remain and will be converted when the chat system
+ is rewritten.
+
+ Revision 614.76 2004/03/14 06:35:46 ajc
+ * Cache IMAP "BODY" fetches in an already-converted format. This speeds
+ up clients like Mozilla and Thunderbird that request big messages in
+ chunks -- we don't have to load and convert the message every time
+ another chunk is requested.
+ * Fixed a potential memory leak in fetch
+
+ Revision 614.75 2004/03/13 23:26:10 ajc
+ * imap_fetch.c: don't fetch the message from disk at all for UID and FLAGS
+ fetch items. (It's rare, but sometimes IMAP optimizations are actually
+ possible, despite Mark DIE DIE DIE Crispin's brain-dead design!)
+
+ Revision 614.74 2004/03/13 22:52:05 ajc
+ * Documented the GNET and SNET commands :)
+
+ Revision 614.73 2004/03/12 19:35:13 error
+ * routines2.c: Fix two typos
+
+ Revision 614.72 2004/03/12 19:32:09 error
+ * routines2.c: Convert multiple functions to use new IPC code (almost done!)
+
+ Revision 614.71 2004/03/12 19:30:06 error
+ * citadel.c: main(): Fix error response for RCHG, HCHG and UCHG commands.
+
+ Revision 614.70 2004/03/12 19:28:04 error
+ * Implement GNET/SNET commands in IPC code; provide a CtdlIPC_delete();
+ emit warnings when client code uses CtdlIPC_getline() or CtdlIPC_putline()
+ (These are reserved and should not be used by client code.)
+
+ Revision 614.69 2004/03/10 04:50:04 ajc
+ * serv_expire.c: auto-purge any Citadel account that is associated with
+ a Unix account that no longer exists.
+
+ Revision 614.68 2004/03/09 20:46:33 error
+ * Add a Linux Software Map file
+
+ Revision 614.67 2004/03/08 05:26:49 ajc
+ * When the last argument of an IMAP APPEND command is a binary literal
+ (i.e. all the time), the client will still be sending a CRLF after the
+ literal. Added an extra client_read() after the message input to absorb
+ that extra CRLF, to keep client and server from getting out of sync.
+
+ Revision 614.66 2004/03/06 05:09:04 ajc
+ * serv_smtp.c: don't offer the STARTTLS extension if TLS is already
+ active. Done for to-the-letter compliance with RFC2487.
+
+ Revision 614.65 2004/03/06 02:03:39 ajc
+ * serv_smtp.c: do not offer the PIPELINING extension when TLS is
+ running. Doing so causes sessions to hang unexpectedly.
+
+ Revision 614.64 2004/03/05 23:21:25 ajc
+ * Added some more debugging to serv_smtp.c to try to figure out the
+ problem with Postfix TLS hanging during send
+
+ Revision 614.63 2004/03/05 03:36:03 ajc
+ * Remove the automatic population of A and N fields we recently added
+ when found to be NULL. It was confusing the output functions into
+ thinking that Internet messages were local.
+
+ Revision 614.62 2004/03/03 05:43:29 ajc
+ * Generate better output when a user is kicked out of chat
+
+ Revision 614.61 2004/03/01 22:36:14 ajc
+ * Implement the NAMESPACE extension of IMAP (RFC 2342)
+
+ Revision 614.60 2004/03/01 17:47:28 error
+ * Fix missing arg in m<Y> next rewrite.
+
+ Revision 614.59 2004/03/01 17:33:30 error
+ * Rewrite m<Y> next function; now uses CtdlIPC code.
+
+ Revision 614.58 2004/03/01 04:08:34 ajc
+ * Revoke access to room when /kicked
+
+ Revision 614.57 2004/02/29 23:26:48 ajc
+ * Added /kick command to chat. /ban coming soon.
+
+ Revision 614.56 2004/02/28 16:37:41 ajc
+ * setup.c: removed an unused temp file name variable
+
+ Revision 614.55 2004/02/27 17:23:21 error
+ * Use syslog-compatible logging levels in lprintf(); the loglevel chosen
+ is passed directly to syslog(). The available levels are docuemnted in
+ sysdep_decls.h.
+
+ Revision 614.54 2004/02/27 04:29:00 ajc
+ * Fixed a bug in PLAIN authentication
+
+ Revision 614.53 2004/02/26 22:03:24 error
+ * ;Goto floor now goes to first KNOWN room, or first room only if no known
+ rooms on the floor
+
+ Revision 614.52 2004/02/26 20:30:36 error
+ * Populate IPC into a few more places to avoid a nasty crash at MORE prompt
+
+ Revision 614.51 2004/02/26 20:17:29 error
+ * Client stability and enhancements:
+ * CtdlServInfo structure moved inside CtdlIPC; eliminates unnecessary
+ global and makes IPC more self-contained
+ * Removed redundant serv_ from variable names in CtdlServInfo struct
+ * Send SIGHUP to process group when connection_died(). Kills self and
+ children (e.g. external editor).
+
+ Revision 614.50 2004/02/25 01:35:34 error
+ Missing parameter to a printf() function. No idea where it went, but I
+ put it back.
+
+ Revision 614.49 2004/02/24 05:09:06 ajc
+ * Better validation of incoming network messages.
+
+ Revision 614.48 2004/02/23 16:10:47 nbryant
+ --disable-pie by default.
+
+ Revision 614.47 2004/02/22 04:55:15 ajc
+ * CSR code more or less in its final form for now.
+
+ Revision 614.46 2004/02/22 04:42:05 ajc
+ * Initial version of function to automatically generate a Certificate
+ Signing Request if one is not present
+
+ Revision 614.45 2004/02/20 19:29:05 error
+ * Fix bug 112: .Goto allowed partial room match on forgotten rooms
+
+ Revision 614.44 2004/02/20 02:55:18 ajc
+ * Fixed one of the prompts (bugzilla #118)
+
+ Revision 614.43 2004/02/19 04:12:56 ajc
+ * Instead of doing the silly "Kolab reserved folder names" thing, instead
+ implemented the Cyrus-compatible style of forcing all personal mailbox
+ folders to be subfolders of INBOX. But only for IMAP.
+
+ Revision 614.42 2004/02/18 14:46:05 ajc
+ * smtp: EHLO response now includes both "AUTH " and "AUTH=" output, due to
+ the requirement to interoperate with brain-dead Microsoft shitware that
+ doesn't follow the RFC.
+
+ Revision 614.41 2004/02/17 16:56:51 ajc
+ * During SSL initialization, create the "keys" directory if it does not
+ exist ... generate a private key if that does not exist ... more code
+ coming soon to generate CSR and self-signed cert. Hard-coded pathnames
+ have been moved to sysconfig.h.
+
+ Revision 614.40 2004/02/17 04:47:22 ajc
+ * Support PLAIN auth method in SMTP
+
+ Revision 614.39 2004/02/17 03:53:11 ajc
+ * New ICAL subcommand "sgi" to enable or disable automatic server
+ generated invitations. (WebCit wants sgi's but Kontaqt doesn't.)
+
+ Revision 614.38 2004/02/16 21:54:22 ajc
+ * Support POP3 over TLS
+
+ Revision 614.37 2004/02/16 21:45:43 ajc
+ * Implement RFC 2487 - SMTP Service Extension for Secure SMTP over TLS
+
+ Revision 614.36 2004/02/16 21:02:28 ajc
+ * IMAP and Citadel protocols now use the same code path for TLS negotiation
+
+ Revision 614.35 2004/02/16 20:55:47 ajc
+ * Genericized the Citadel API for TLS-enabling protocols
+
+ Revision 614.34 2004/02/16 18:16:39 error
+ * Remove some unnecessary and possibly hazardous debugging code leftover
+ from debugging IMAP STARTTLS
+
+ Revision 614.33 2004/02/16 18:14:00 error
+ * Fixed IMAP STARTTLS; trouble was in client_read_ssl the whole time.
+ It should now be possible to implement SSL/TLS for any protocol.
+
+ Revision 614.32 2004/02/16 18:13:10 error
+ * Log session IDs in syslog as well as stderr
+
+ Revision 614.31 2004/02/16 15:06:44 error
+ * Add specific error codes for every command on the wire protocol, so that
+ clients can more easily determine what went wrong. Partially updated
+ session.txt (will finish it later). This lets clients more easily
+ determine what, if anything, went wrong with a particular command.
+
+ Revision 614.30 2004/02/15 06:06:49 ajc
+ * More work on IMAP TLS. Still not working correctly. :( Added in
+ support for server-side certificates. Now instead of failing it hangs.
+
+ Revision 614.29 2004/02/14 04:41:55 ajc
+ * STARTTLS attempt #2. Still disabled because it's broken.
+
+ Revision 614.28 2004/02/13 20:51:13 error
+ * Reset screen attributes before fork() so that external programs do the
+ right thing
+
+ Revision 614.27 2004/02/12 04:16:38 ajc
+ * Support for PLAIN logins in IMAP (need to test!)
+
+ Revision 614.26 2004/02/11 03:50:49 ajc
+ * The groupware folders "Calendar", "Contacts", "Notes", and "Tasks" are
+ now presented as subfolders of INBOX when using IMAP. This is for the
+ purpose of Kolab compatibility.
+
+ Revision 614.25 2004/02/09 22:40:57 error
+ * oops...also close the client on EOF/error on tty OUTPUT
+
+ Revision 614.24 2004/02/09 22:26:17 error
+ * Exit the citadel client when EOF reached on input - should prevent
+ a process from hanging around when a telnet connection dies unexpectedly
+
+ Revision 614.23 2004/02/08 05:29:34 ajc
+ * Corrected various small syntax conversion problems that were keeping
+ some vCards out of the LDAP directory.
+
+ Revision 614.22 2004/02/07 05:28:10 ajc
+ * Automatically purge files from ./network/spoolout which were intended
+ for nodes which no longer exist
+
+ Revision 614.21 2004/02/07 04:59:21 ajc
+ * Cache the IGnet config in memory, avoiding a db fetch for every single
+ operation which references it. Invalidate the cache when a new config
+ is uploaded.
+ * When doing network spool for a room, automatically remove shares for
+ Citadel nodes which no longer exist.
+
+ Revision 614.20 2004/02/07 04:22:12 ajc
+ * serv_network.c: fixed a problem with an uninitialized data structure
+
+ Revision 614.19 2004/02/06 04:40:50 ajc
+ * Suppress posting of messages to Aide> when the loopzapper catches dupes.
+ * New command NSYN to sync the entire contents of a room to a specified
+ network node. This will be used to bring new nodes in sync with existing
+ nodes.
+
+ Revision 614.18 2004/02/06 03:58:10 ajc
+ * Added some comments to the sample citadel-slapd.conf
+
+ Revision 614.17 2004/02/06 03:52:46 ajc
+ * Changed the domain name and password in the sample slapd.conf
+
+ Revision 614.16 2004/02/05 05:20:20 ajc
+ * Delete a user's LDAP entry when deleting the vCard. NOT TESTED.
+
+ Revision 614.15 2004/02/05 03:54:14 ajc
+ * Completed the per-user initialization of LDAP entries.
+
+ Revision 614.14 2004/02/04 18:27:25 error
+ * Don't delete temp file when composing message until after server writes
+ it successfully (or an error occurs in the client itself).
+
+ Revision 614.13 2004/02/04 04:07:56 ajc
+ * More work on LDAP connector
+
+ Revision 614.12 2004/02/01 06:19:22 ajc
+ * policy.c: fix bug in GetExpirePolicy() that was causing the default
+ mailbox purge policy to be misinterpreted if it was set to "use
+ system default"
+ * serv_vcard.c: always set the Global Address Book room's expire policy
+ to "never expire" and its default view to "address book"
+
+ Revision 614.11 2004/01/31 05:44:29 ajc
+ *** empty log message ***
+
+ Revision 614.10 2004/01/27 19:56:29 ajc
+ * serv_smtp.c: HELO and EHLO responses now reply with the detected
+ IP address and reverse DNS lookup of the connecting host
+
+ Revision 614.9 2004/01/24 05:47:50 ajc
+ * Got Citadel talking to LDAP. Still requires manual creation of schema
+ and container entries, which I don't like; we'll have to fix that. It
+ also does not yet populate all fields.
+
+ Revision 614.8 2004/01/19 21:01:15 error
+ * Clear out the autom4te.cache when bootstrapping to avoid autoheader problems
+
+ Revision 614.7 2004/01/19 04:44:11 ajc
+ * Further work on creating LDAP entries.
+
+ Revision 614.6 2004/01/18 21:04:40 ajc
+ * Reworked vCard etc. functions for addition of new vCard data to LDAP
+
+ Revision 614.5 2004/01/17 22:57:54 ajc
+ * Added "Base DN" "Bind DN" and "Bind DN password" config options
+ * serv_ldap.c: added. (New module implementing the LDAP Connector)
+ * Upon startup, connect to LDAP directory and bind to it. Unbind at exit.
+
+ Revision 614.4 2004/01/17 04:23:28 ajc
+ * Sysconfig commands for specifying where the LDAP server lives
+
+ Revision 614.3 2004/01/17 03:26:17 ajc
+ * Changed a diagnostic in msgbase.c to a higher logging level so it doesn't
+ make as much noise.
+ * Setup now adds "-x3 -llocal4" to the default inittab line.
+
+ Revision 614.2 2004/01/17 03:17:34 ajc
+ * New server command-line option "-l" to send log output to the host
+ computer's syslog facility instead of to a trace file.
+
Revision 614.1 2004/01/02 22:13:59 ajc
* Link to OpenLDAP client library (-lldap) and set HAVE_LDAP if present.