$Log$
+Revision 603.7 2005/03/05 22:26:26 ajc
+* crypto.c: allow use of chained certificates
+
+Revision 603.6 2005/03/05 05:04:34 ajc
+* minor html changes
+
+Revision 603.5 2005/03/04 04:21:05 ajc
+* When a room is set to the "mailbox" view, "Read new / read all" is
+ replaced by "View message list."
+
+Revision 603.4 2005/02/28 04:01:55 ajc
+* Updated to the latest version of Kevin Roth's richtext editor. Had to
+ modify it a bit (removal of 'px' suffix, and addition of 'cols=80') to
+ allow it to gracefully degrade in Konqueror even when we specify our
+ happy 100% width.
+* Modified the message entry screen a bit. Full height just isn't practical
+ with all those wacky browsers out there, unfortunately. Removed most of
+ the div's.
+
+Revision 603.3 2005/02/23 05:08:20 ajc
+* Better control of HTTP headers which control browser caches. Static
+ objects are getting properly cached now.
+
+Revision 603.2 2005/02/22 05:15:28 ajc
+* When the "begin_burst() / end_burst()" semantics are in use, perform
+ gzip compression when the client indicates support for it.
+
+Revision 603.1 2005/02/21 23:00:04 ajc
+* begin_burst() / end_burst() semantics now apply to all pages which are
+ output using the "include_html_head" option of output_headers() (which
+ is nearly all of them). This should speed up the network considerably,
+ and also pave the way for another attempt at adding zlib compression
+ back in.
+
+Revision 603.0 2005/02/21 22:00:13 ajc
+* THIS IS 6.03
+
+Revision 602.10 2005/02/21 21:57:55 ajc
+* Various debugging type of everythingism to help chat mode to work.
+
+Revision 602.9 2005/02/21 04:47:41 ajc
+* When creating rooms:
+* 1. Selecting a view other than "Bulletin Board" causes the room access
+* type to default to "private mailbox"
+* 2. When the room access type changes to "private mailbox," the floor
+* selector is greyed out because it is irrelevant.
+
+Revision 602.8 2005/02/20 06:48:30 ajc
+* View-o-matic now has "View as: " before it. "Messages" has been changed
+ to "Bulletin Board" and "Summary" has been changed to "Mailbox Summary"
+* The View-o-matic is now styled to be smaller and color-matched to the
+ banner box it lives in.
+* Removed "Summary" from message range selector. It is redundant.
+
+Revision 602.7 2005/02/20 06:27:53 ajc
+* Switched the Reply/Move/Delete buttons back to ordinary links, because
+ the nested forms were causing the bottom part of the outer form to stop
+ working (message range selector went dead). Thanks to triLcat for
+ reporting this.
+
+Revision 602.6 2005/02/19 06:01:14 ajc
+* The previous <div style=\"margin-right:1px\"> has been replaced by a
+ named div in the stylesheet. This allows us to perform a vile, sleazy
+ hack to keep IE6 from exhibiting its horizontal scrollbar bug. There
+ will unfortunately always be a right margin in IE6, but there
+ doesn't appear to be any easy workaround.
+
+Revision 602.5 2005/02/19 05:22:00 ajc
+* Replaced all the "centered 99% tables" with 100% width tables wrapped
+ inside a div with margin-right:1px to remove the horizontal scrollbar
+ in Gecko without creating whitespace. IE6's problem is much more
+ serious and will require dropping a nuclear bomb on Redmond to fix.
+
+Revision 602.4 2005/02/18 05:09:52 ajc
+* Moved the room access control screen into a tab on the edit room menu
+
+Revision 602.3 2005/02/17 04:48:26 ajc
+* After setup is complete, tell them how to log in.
+* Don't allow the creation of accounts with blank passwords.
+* Don't allow users to change to a blank password.
+* Fixed the positioning of a few more screens that accidentally got
+ partially hidden underneath the iconbar.
+* Boldfaced the "Password changed." and other prompts.
+* Removed the unreadable blue-on-blue links in the calendar day
+ view. They're redundant anyway, now: "Add new calendar event" and
+ "month view" are both in the banner bar.
+* "New messages / All messages" are now "Read new messages / Read all
+ messages"
+* "Save message" button is now "Post message" for public room posts,
+ and "Send message" for email.
+* "Message has been posted" is now "Message has been sent" for email.
+* Swapped positions of "Add users" and "Edit users" boxes.
+* vCard editor: "Other Internet email addresses" is now "aliases"
+* Renamed the "Users" button to "Who is online?"
+
+Revision 602.2 2005/02/16 05:40:31 ajc
+* More display fixes
+
+Revision 602.1 2005/02/16 05:22:22 ajc
+* inetconf.c: fixed memory management problem that was causing all
+ the inetconf to get discarded during edit on IBM POWER5
+
+Revision 602.0 2005/02/15 05:23:10 ajc
+* THIS IS 6.02
+
+Revision 601.3 2005/02/15 05:20:44 ajc
+* Fixed an HTTP output error for static data which was causing images
+ to display improperly in Konqueror
+* Changed most of the beginbox_nt boxes to centered tables with 99%
+ width, to avoid the mysterious horizontal scrollbar
+
+Revision 601.2 2005/02/14 04:57:23 ajc
+* Started changing some of the top-level tables from 100% width to 99%
+ width in order to keep the b0rken CSS box-model from displaying a
+ horizontal scroll bar when it shouldn't. Lose, lose, lose.
+
+Revision 601.1 2005/02/13 04:22:31 ajc
+* Network configuration screen: add IMAPS, POP3S, and SMTPS ports
+
+Revision 601.0 2005/02/12 04:23:43 ajc
+* THIS IS 6.01
+
+Revision 528.48 2005/02/11 03:35:57 ajc
+* useredit.c: added an "Delete user" button, because it was unintuitive
+ to tell people "Delete a user by setting their access level to 0"
+
+Revision 528.47 2005/02/09 04:37:32 ajc
+* More GroupDAV fixes and tuning.
+
+Revision 528.46 2005/02/07 22:02:00 ajc
+* groupdav_propfind.c: output all XML on a single line, with no linebreaks,
+ and no whitespace between tags. We have discovered that doing otherwise
+ will break certain clients.
+
+Revision 528.45 2005/02/06 03:59:33 ajc
+* Added some HTTP Date: header output
+
+Revision 528.44 2005/02/05 22:58:46 ajc
+* All GroupDAV HTTP output is now \r\n instead of \n terminated.
+
+Revision 528.43 2005/02/05 08:36:13 ajc
+* Added an everything-buffering thingi so we can do Content-length:
+
+Revision 528.42 2005/02/05 04:16:01 ajc
+* Cleanup of new message range view-o-matic
+* GroupDAV GET operations now only send the Content-type: and Date:
+ headers. All the others are irrelevant.
+
+Revision 528.41 2005/02/04 19:19:23 ajc
+* Message reading range selection is now a drop-down box.
+
+Revision 528.40 2005/02/04 17:22:18 ajc
+* Cleaned up the rcs/cvs Id tags and leading comments at the top of some files
+
+Revision 528.39 2005/02/04 03:43:31 ajc
+* fixed the tasks view in the summary screen
+
+Revision 528.38 2005/02/03 05:13:57 ajc
+* More tuning for GroupDAV compliance.
+
+Revision 528.37 2005/02/03 04:38:40 ajc
+* VTODO components need to be encapsulated inside VCALENDAR components,
+ just like we do with VEVENT components. There's a bunch of software
+ (including the beforesave hook on our own Citadel server) that expects
+ this encapsulation.
+
+Revision 528.36 2005/02/02 23:25:21 ajc
+* Encode GroupDAV uid's using more concise string escaping, because the
+ old way was making KOrganizer choke.
+
+Revision 528.35 2005/02/02 04:13:36 ajc
+* Debugged the GroupDAV service with KOrganizer. It's mostly working now.
+
+Revision 528.34 2005/02/01 23:15:50 ajc
+* Completed GroupDAV PUT. Untested.
+
+Revision 528.33 2005/02/01 19:52:29 ajc
+* Bumped the internal version number to 6.01
+* Set the minimum required Citadel version to 6.40, because we need the
+ automatic fill-in-missing-uid groupware stuff, and the new ENT0 semantics
+ with confirmation.
+
+Revision 528.32 2005/02/01 15:15:40 ajc
+* Better purging of not-logged-in GroupDAV sessions
+
+Revision 528.31 2005/02/01 14:55:12 ajc
+* Reworked the PROPFIND xml output based on an example transaction
+ supplied by Reinhold Kainhofer. Groupware folder enumeration works
+ properly in Kontact now.
+
+Revision 528.30 2005/02/01 03:49:09 ajc
+* Completed "folder list" PROPFIND, now listing all rooms set to a
+ calendar, tasks, or address view, using the GroupDAV properties.
+
+Revision 528.29 2005/02/01 02:28:32 ajc
+* "time(NULL) mod 60" doesn't work for some reason, so it has been removed.
+ When defaulting a new event date/time to now, set the seconds to zero
+ manually.
+
+Revision 528.28 2005/01/31 23:31:26 ajc
+* Initial attempt at GroupDAV PROPFIND for folder enumeration. Hardcoded
+ to only show the Calendar> room. It kinda-sorta works with KOrganizer.
+
+Revision 528.27 2005/01/31 16:24:47 ajc
+* iconbar is now a happy css hovery lightupy div thing
+
+Revision 528.26 2005/01/29 03:59:25 ajc
+* Implemented the GroupDAV DELETE method.
+
+Revision 528.25 2005/01/28 05:25:43 ajc
+* iconbar no longer uses the beginbox/endbox semantics, but instead lives
+ directly inside the iconbar div.
+
+Revision 528.24 2005/01/28 05:13:02 ajc
+* GroupDAV object URL's are now based on the EUID of a message (which is
+ derived from the UID of the groupware object itself) instead of the
+ message number. This was done in order to conform to GroupDAV's
+ requirement that the URL cannot change after an object is updated.
+* The ETag of a GroupDAV object is still the message number, and in fact
+ doing so meets that requirement perfectly.
+
+Revision 528.23 2005/01/26 18:15:34 ajc
+* PROPFIND now outputs fully qualified URL's
+
+Revision 528.22 2005/01/26 18:02:22 ajc
+* Initial implementation of GroupDAV PROPFIND
+
+Revision 528.21 2005/01/26 16:28:23 ajc
+* Output ETags in double quotes to conform with the new GroupDAV draft.
+* Output HTTP Server: header in GroupDAV transactions
+* Server: header now displays both WebCit and Citadel versions
+* Added groupdav_common_headers() to output HTTP headers common to all
+ GroupDAV transactions (Connection: close, Server: WebCit, etc.)
+
+Revision 528.20 2005/01/25 19:51:04 ajc
+* Accept escaped characters in GroupDAV GET URL's
+
+Revision 528.19 2005/01/25 04:17:20 ajc
+* Implemented the Groupdav GET method, more or less in its final form
+ (still need to fix the room/folder naming semantics)
+
+Revision 528.18 2005/01/25 03:12:27 ajc
+* Completed HTTP "Basic" authentication, and a stub function for the
+ main entry point for GroupDAV functions.
+
+Revision 528.17 2005/01/24 03:37:48 ajc
+* Began laying the groundwork for http-authenticated GroupDAV sessions.
+
+Revision 528.16 2005/01/22 22:50:51 ajc
+* removed descriptions in non-main menus
+
+Revision 528.15 2005/01/20 21:24:27 ajc
+* When viewing a calendar room, the "Read all messages" link in the
+ room banner has been replaced by "Day view" and "Month view" links.
+ (I have also imported icons for week and year views, in case we add
+ these later.)
+
+Revision 528.14 2005/01/20 16:13:56 ajc
+* Added in a bunch of stupid JavaScript to allow the instant message
+ window to be dismissed.
+
+Revision 528.13 2005/01/20 04:10:41 ajc
+* Cleaned up a bunch of unused cruft from the old layout
+* Instant messages are now displayed in a div that layers itself
+ over the rest of the site. It would be nice if we could figure out
+ a way to make a clickable "hide" box...
+
+Revision 528.12 2005/01/17 04:38:14 ajc
+* Navbar is now dynamic, in an attempt to make only the relevant controls
+ appear on any given page.
+
+Revision 528.11 2005/01/15 07:19:08 ajc
+* Removed the fixed pixel width from the tree view room list so it doesn't
+ wrap around in an ugly way on aIEeeee.
+
+Revision 528.10 2005/01/15 05:26:27 ajc
+* Message entry window is now somewhat full screen.
+
+Revision 528.9 2005/01/14 21:03:17 ajc
+* A few logging hacks
+
+Revision 528.8 2005/01/14 15:00:51 ajc
+* Placed the navbar into the room banner, at least in its temporary form.
+
+Revision 528.7 2005/01/14 04:53:54 ajc
+*** empty log message ***
+
+Revision 528.6 2005/01/14 04:53:12 ajc
+* Got the three-pane model working not only with web browsers, but also
+ with the disgusting abomination called Internet Explorer.
+
+Revision 528.5 2005/01/13 18:38:08 ajc
+* Insert a newline between </div> and <div id="text">
+
+Revision 528.4 2005/01/11 16:20:18 ajc
+* Switching doctype from XHTML to HTML 4.01 STRICT, because nothing handles
+ XHTML properly.
+
+Revision 528.3 2005/01/11 05:05:08 ajc
+* *** HUGE CHANGES *** *** WARNING: NOT FULLY FUNCTIONAL ***
+* Ripped things apart in a big way. The frameset is gone (except for
+ chat, for which we'll probably keep frames). Iconbar and banner are
+ now done using CSS and <div> tags.
+* Room read/enter/goto controls are currently missing. Stay tuned.
+* I am in the process of rewriting all of the markup as valid XHTML.
+
+Revision 528.2 2004/12/29 22:08:08 ajc
+* roomops.c: provide a way to create room shares with a mapping to an
+ alternate room name on the other end.
+
+Revision 528.1 2004/12/29 17:28:09 ajc
+* roomops.c: when adding/removing nodes in the 'Sharing' tab, don't go
+ all corrupty-whatever when a remote room name mapping is found. Display
+ the mapping and preserve it across share/unshare operations.
+
+Revision 528.0 2004/12/28 03:58:34 ajc
+* THIS IS 5.28
+
+Revision 527.1 2004/12/28 03:58:24 ajc
+* Corrected overly-escaped reply-to addresses in "reply" button
+* Repaired toggling of self-service account creation in admin screen
+* Bumped internal version number to 5.28
+
+Revision 527.0 2004/12/07 04:41:37 ajc
+* THIS IS 5.27
+
+Revision 526.1 2004/12/07 04:41:02 ajc
+* Finally tracked down the WC->vars heap corruption issue (for real this
+ time). We now call clear_local_substs() at the end of each HTTP
+ transaction, whether we need to or not, instead of calling it whenever
+ we're done with something we wanted session variables for.
+* Finally tracked down the years-long "misplaced '(edit)' link" bug, by
+ copying serv_info->serv_pid to WC->ctdl_pid at the time it's loaded,
+ preventing it from getting clobbered by another session.
+* Bumped internal version number to 5.27
+
+Revision 526.0 2004/12/01 21:35:56 ajc
+* THIS IS 5.26
+
+Revision 525.4 2004/12/01 21:35:44 ajc
+* Changed internal version number to 5.26
+
+Revision 525.3 2004/12/01 21:34:17 ajc
+* Numerous memory management bugfixes.
+
+Revision 525.2 2004/12/01 16:48:24 ajc
+* tools.c: don't crash when striplt() is called with a zero-length string
+
+Revision 525.1 2004/11/12 18:02:36 ajc
+* Updated the richtext editor (new version from Kevin Roth's site)
+
+Revision 525.0 2004/11/03 20:21:10 ajc
+* THIS IS 5.25
+
+Revision 524.7 2004/11/03 20:21:02 ajc
+* Changed internal version number to 5.25
+
+Revision 524.6 2004/10/20 02:41:41 ajc
+* New "notes" icon
+* Added the notes room to the icon bar
+* Set up an initial implementation of Notes view. Attractive enough to
+ publish, but read-only. Needs a note editor.
+
+Revision 524.5 2004/10/15 03:10:24 ajc
+* Calendar objects UID now generated by generate_uuid() which creates
+ pseudo-DCE-ish UUID's.
+
+Revision 524.4 2004/10/05 01:59:31 ajc
+* localtime_r() fixes
+
+Revision 524.3 2004/10/03 02:56:35 ajc
+* Added a pthread_attr_destroy() in the appropriate place (thanks fleeb!)
+
+Revision 524.2 2004/10/01 16:23:23 ajc
+* Set up framework for "notes" view, and added a skeleton function for
+ the actual display.
+
+Revision 524.1 2004/09/30 03:44:01 ajc
+* fix line width break problem in chat
+
+Revision 524.0 2004/09/28 16:12:44 ajc
+* THIS IS 5.24
+
+Revision 523.12 2004/09/28 16:12:30 ajc
+* Prepare for 5.24 release
+
+Revision 523.11 2004/09/27 02:17:47 ajc
+* messages.c: fix build problem on non-calendar-enabled installations
+* floors.c: fix a warning message
+
+Revision 523.10 2004/09/25 03:34:21 ajc
+* summary.c: Fixed a calling syntax problem
+
+Revision 523.9 2004/09/25 03:18:43 ajc
+* small stylesheet fix
+
+Revision 523.8 2004/09/24 04:21:41 ajc
+* Fixed display bug for room list mode when we dropped down multiple
+ sublevels at once (such as, from 3 to 1 instead of from 2 to 1)
+
+Revision 523.7 2004/09/24 04:08:25 ajc
+* Put our <SPAN> tags back in to denote floors, rooms with new msgs, and
+ rooms without new msgs
+
Revision 523.6 2004/09/24 04:04:34 ajc
* "folders view" of room list now uses Dave Lindquist's "menuExpandable3"
tree view.