Art Cancro [Wed, 18 Feb 2004 14:46:05 +0000 (14:46 +0000)]
* 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.
Art Cancro [Tue, 17 Feb 2004 16:56:51 +0000 (16:56 +0000)]
* 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.
Michael Hampton [Mon, 16 Feb 2004 15:06:45 +0000 (15:06 +0000)]
* 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.
Art Cancro [Sun, 15 Feb 2004 06:06:50 +0000 (06:06 +0000)]
* More work on IMAP TLS. Still not working correctly. :( Added in
support for server-side certificates. Now instead of failing it hangs.
VS: ----------------------------------------------------------------------
Art Cancro [Wed, 11 Feb 2004 03:50:49 +0000 (03:50 +0000)]
* 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.
Art Cancro [Mon, 9 Feb 2004 03:37:57 +0000 (03:37 +0000)]
* Changed the thread pool management algorithm. Detecting idle time between
socket accepts was not working reliably on all systems, so we now follow
the same algorithm as the Citadel server (spawn more threads when number
of sessions < number of threads, but keep constrained to pre-defined
minimum and maximum thread count)
Art Cancro [Sat, 7 Feb 2004 04:59:21 +0000 (04:59 +0000)]
* 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.
Art Cancro [Fri, 6 Feb 2004 04:40:50 +0000 (04:40 +0000)]
* 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.
Art Cancro [Sun, 1 Feb 2004 06:19:22 +0000 (06:19 +0000)]
* 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"
Art Cancro [Sat, 31 Jan 2004 05:46:05 +0000 (05:46 +0000)]
* citadel-openldap.schema: added. (OpenLDAP schema for Citadel)
* citadel-slapd.conf: added. (Sample OpenLDAP configuration)
* serv_ldap.c: after binding to the LDAP server, create the node for the
base DN if it isn't there. When creating a node for the user, also
create a node for the user's OU if it isn't there.
Art Cancro [Sat, 24 Jan 2004 05:47:50 +0000 (05:47 +0000)]
* 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.
Art Cancro [Sat, 17 Jan 2004 22:57:54 +0000 (22:57 +0000)]
* 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.
Art Cancro [Sat, 17 Jan 2004 03:26:17 +0000 (03:26 +0000)]
* 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.
Art Cancro [Wed, 24 Dec 2003 05:02:49 +0000 (05:02 +0000)]
* Allow a separate default message expire policy for mailbox rooms. The
floor default setting is now ignored for mailboxes. Updated client and
documentation to match.
Art Cancro [Tue, 23 Dec 2003 03:53:49 +0000 (03:53 +0000)]
* Expanded the size of all string fields in "struct CtdlIPCMessage" to
the standard SIZ length, in order to accomodate "weird" messages
without crashing. Also converted many strcpy()'s to safestrncpy()'s
while populating this data structure, to avoid overruns.
Nathan Bryant [Tue, 9 Dec 2003 06:39:20 +0000 (06:39 +0000)]
did a minimal amount of ANSIfication without changing anything that would
affect the compiler output in any way. I was just trying to get enough warnings
enabled to be able to tell if there are any nested functions lurking about...
If we get rid of nested functions we can get some big security gains under
Fedora.
Art Cancro [Tue, 9 Dec 2003 04:50:16 +0000 (04:50 +0000)]
* Painstakingly combed through IMAP headers and responses for two hours in
an attempt to figure out why the horrendous pile of crap called Microsoft
Outlook counts the correct number of messages but wasn't displaying any
of them. Eventually determined that it was ONE EXTRA SPACE after the
closing paren of the ENVELOPE output that caused Outlook to totally ignore
all the messages. This only reinforces my belief that anything designed
in the state of Washington is utter and complete CRAP.
* Corrected the above glitch. Outbreak works properly now.
Art Cancro [Sun, 23 Nov 2003 04:39:30 +0000 (04:39 +0000)]
* Implemented SEND_LISTING mode in the session proxy
* Put together a simple 'enter message' loop (doesn't work properly yet)
* Threw in a temporary menu
Art Cancro [Sat, 22 Nov 2003 03:30:14 +0000 (03:30 +0000)]
* Commented out the call to the 'high speed download' function and
uncommented the call to the original 'chatty' download function. Some
users were reporting lockups.
Art Cancro [Fri, 21 Nov 2003 18:22:19 +0000 (18:22 +0000)]
* Replaced the two-second sleep (and associated race condition) for the
session proxy to start, with a loop that attempts connection ten times
a second for ten seconds, resulting in faster, more reliable startup.
Art Cancro [Tue, 18 Nov 2003 04:58:34 +0000 (04:58 +0000)]
* Added ctdlelements.php ... this is to be used for functions which fetch
Citadel protocol data and convert it to insertable HTML.
* Implemented a first cut of a "read message" function.