citadel.git
16 years ago* Created IsEmptyStr define to be used rather then using some weird strlen constructs
Wilfried Göesgens [Thu, 12 Jul 2007 21:49:12 +0000 (21:49 +0000)]
* Created IsEmptyStr define to be used rather then using some weird strlen constructs
* moved strlens out of loops everywhere possible anyhow.
* evaded about half of our strlen()'s; more to come.

16 years ago* Added new view type VIEW_JOURNAL - not yet used by
Art Cancro [Thu, 12 Jul 2007 18:26:54 +0000 (18:26 +0000)]
* Added new view type VIEW_JOURNAL - not yet used by
  native clients, but Outlook (via the Bynari connector) needs it.
* Implemented GETMETADATA so the Connector can learn folder types
  without the aid of hidden synchronization messages

16 years agoRe-using the 'buf' variable in embed_room_banner() for
Art Cancro [Thu, 12 Jul 2007 03:02:22 +0000 (03:02 +0000)]
Re-using the 'buf' variable in embed_room_banner() for
room name sanitization clobbered a bunch of variables that
we still needed, resulting (for example) in prompts such as
'0 new of 0 messages'.  Fixed.

16 years agoSome modifications in the display of each message to optimize the
Thierry Pasqualier [Wed, 11 Jul 2007 18:35:47 +0000 (18:35 +0000)]
Some modifications in the display of each message to optimize the
place.
- Buttons are now at the top to the right
- the date is on the first line
- author and room are on the following line

16 years agoEdit message : i agree with fleeb, i put the button on right top
Thierry Pasqualier [Tue, 10 Jul 2007 12:24:23 +0000 (12:24 +0000)]
Edit message : i agree with fleeb, i put the button on right top

16 years agoAligned user list on the left of iconbar with a small indent
Thierry Pasqualier [Mon, 9 Jul 2007 17:20:07 +0000 (17:20 +0000)]
Aligned user list on the left of iconbar with a small indent

16 years agoiconbar CSS : light yellow background for active users
Thierry Pasqualier [Mon, 9 Jul 2007 12:16:03 +0000 (12:16 +0000)]
iconbar CSS : light yellow background for active users

16 years agoI wasn't woken this morning, I confused span and class ;-)
Thierry Pasqualier [Mon, 9 Jul 2007 11:59:30 +0000 (11:59 +0000)]
I wasn't woken this morning, I confused span and class ;-)

16 years agoiconbar : mark active/inactive user with CSS
Thierry Pasqualier [Mon, 9 Jul 2007 06:54:50 +0000 (06:54 +0000)]
iconbar : mark active/inactive user with CSS

16 years agoInclude sys/stat.h when available (FreeBSD)
Michael Hampton [Sun, 8 Jul 2007 15:54:04 +0000 (15:54 +0000)]
Include sys/stat.h when available (FreeBSD)

16 years ago- Simplified the user list for summary
Thierry Pasqualier [Sun, 8 Jul 2007 08:16:15 +0000 (08:16 +0000)]
- Simplified the user list for summary
- Added CSS for Who's online and Summary screens

16 years agoEvidently, when an HTML checkbox is disabled, its value
Art Cancro [Sun, 8 Jul 2007 04:15:38 +0000 (04:15 +0000)]
Evidently, when an HTML checkbox is disabled, its value
is never sent to the server, even if the value was explicitly set.
Reworked the c_auth_mode setting due to this, because it was getting
unset.

16 years agoQuick respin of WebCit (now 7.12) due to missing config.sub
Art Cancro [Sun, 8 Jul 2007 03:14:01 +0000 (03:14 +0000)]
Quick respin of WebCit (now 7.12) due to missing config.sub
(I messed up the buildpackages script while removing .svn directories)

16 years ago- Deleted the (too wide) remote host in summary screen
Thierry Pasqualier [Sat, 7 Jul 2007 21:07:25 +0000 (21:07 +0000)]
- Deleted the (too wide) remote host in summary screen
- I keep it in Who is online screen
- A scrolbar appear now if the user list is too long on iconbar

16 years agoWhen existing init scripts are detected during setup,
Art Cancro [Sat, 7 Jul 2007 15:10:49 +0000 (15:10 +0000)]
When existing init scripts are detected during setup,
ask the user if he wants to leave them as-is.

16 years agoRemoved an unused variable
Art Cancro [Sat, 7 Jul 2007 15:01:16 +0000 (15:01 +0000)]
Removed an unused variable

16 years agouserlist: removed (not logged in) message on iconbar
Thierry Pasqualier [Sat, 7 Jul 2007 14:10:24 +0000 (14:10 +0000)]
userlist: removed (not logged in) message on iconbar

16 years ago* check whether we shoud shut down. we do this by checking whether the password is...
Wilfried Göesgens [Sat, 7 Jul 2007 12:44:47 +0000 (12:44 +0000)]
* check whether we shoud shut down. we do this by checking whether the password is an empty string.

16 years ago* we don't need to chown chkpwd anymore.
Wilfried Göesgens [Sat, 7 Jul 2007 08:57:14 +0000 (08:57 +0000)]
* we don't need to chown chkpwd anymore.

16 years ago* for some reason config.path doesn't get createt, so we better don't delete it.
Wilfried Göesgens [Sat, 7 Jul 2007 08:33:33 +0000 (08:33 +0000)]
* for some reason config.path doesn't get createt, so we better don't delete it.

16 years agoSupport the idea of a 'master user' logging in
Art Cancro [Sat, 7 Jul 2007 04:25:14 +0000 (04:25 +0000)]
Support the idea of a 'master user' logging in
as another user.  This will be used to support Asterisk voicemail.  It
is currently disabled because the master username/password is hardcoded
and we don't want anyone using that.

16 years agoSupport AUTH=PLAIN in the IMAP server.
Art Cancro [Sat, 7 Jul 2007 03:38:53 +0000 (03:38 +0000)]
Support AUTH=PLAIN in the IMAP server.

16 years agooops, update to 7.11 in configure.ac
Art Cancro [Fri, 6 Jul 2007 19:40:29 +0000 (19:40 +0000)]
oops, update to 7.11 in configure.ac
* Updated buildpackages to use .tar.gz file format, and also
to clean out files like .svn/ etc.

16 years ago* Move to GPL v3
Art Cancro [Fri, 6 Jul 2007 19:09:53 +0000 (19:09 +0000)]
* Move to GPL v3
* Update version number to 7.11

16 years ago* strlen(); strcpy -> single strlen + memmove
Wilfried Göesgens [Thu, 5 Jul 2007 22:56:04 +0000 (22:56 +0000)]
* strlen(); strcpy -> single strlen + memmove

16 years ago* send linewraps, so we get our dots at least.
Wilfried Göesgens [Thu, 5 Jul 2007 21:52:13 +0000 (21:52 +0000)]
* send linewraps, so we get our dots at least.
* sindcommand sends a linewrap now too, else we will block on finishing.

16 years agoRemove the intermediate buffer in serv_puts()
Art Cancro [Thu, 5 Jul 2007 20:59:27 +0000 (20:59 +0000)]
Remove the intermediate buffer in serv_puts()

16 years ago* the memmove off by one, and some more optimization.
Wilfried Göesgens [Thu, 5 Jul 2007 20:05:37 +0000 (20:05 +0000)]
* the memmove off by one, and some more optimization.

16 years ago*All* <FORM> blocks now contain a nonce field, and the use of
Art Cancro [Thu, 5 Jul 2007 19:53:58 +0000 (19:53 +0000)]
*All* <FORM> blocks now contain a nonce field, and the use of
a nonce is now enforced whenever method=POST is used.  This prevents
an attacker from simply removing the nonce entirely.

16 years agoNearly all <FORM> blocks now contain a hidden input
Art Cancro [Thu, 5 Jul 2007 19:36:32 +0000 (19:36 +0000)]
Nearly all <FORM> blocks now contain a hidden input
tag containing a session nonce.  If the nonce does not match, the request
is cancelled.

16 years agoSanitize text of preferences strings
Art Cancro [Thu, 5 Jul 2007 15:44:29 +0000 (15:44 +0000)]
Sanitize text of preferences strings

16 years agoSanitize output of room name in room banner
Art Cancro [Thu, 5 Jul 2007 15:32:50 +0000 (15:32 +0000)]
Sanitize output of room name in room banner

16 years ago* don't use strlen and strcpy over here too in a wrong way.
Wilfried Göesgens [Wed, 4 Jul 2007 21:58:19 +0000 (21:58 +0000)]
* don't use strlen and strcpy over here too in a wrong way.

16 years ago* don't use strlen and strcpy over here too in a wrong way.
Wilfried Göesgens [Wed, 4 Jul 2007 21:57:41 +0000 (21:57 +0000)]
* don't use strlen and strcpy over here too in a wrong way.

16 years ago* don't use strlen; use memmove instead of strcpy.
Wilfried Göesgens [Wed, 4 Jul 2007 21:56:29 +0000 (21:56 +0000)]
* don't use strlen; use memmove instead of strcpy.

16 years ago* have default ip, so valgrind shuts up.
Wilfried Göesgens [Wed, 4 Jul 2007 21:50:38 +0000 (21:50 +0000)]
* have default ip, so valgrind shuts up.

16 years agoFixed a bug in the conversion of 'mailto:' links to WebCit
Art Cancro [Wed, 4 Jul 2007 03:46:43 +0000 (03:46 +0000)]
Fixed a bug in the conversion of 'mailto:' links to WebCit
mail links.

16 years agoRemove <script> blocks from HTML messages when displaying.
Art Cancro [Tue, 3 Jul 2007 22:00:35 +0000 (22:00 +0000)]
Remove <script> blocks from HTML messages when displaying.

16 years agoWhen converting <A> tags, don't omit the change to
Art Cancro [Tue, 3 Jul 2007 19:44:28 +0000 (19:44 +0000)]
When converting <A> tags, don't omit the change to
bracket nesting count.  Fixes rendering problems.

16 years agoIn the main readloop(), fixed a </div> that appeared
Art Cancro [Tue, 3 Jul 2007 15:10:38 +0000 (15:10 +0000)]
In the main readloop(), fixed a </div> that appeared
*after* the call to wDumpContent(), which was causing blank screens on IE6

16 years agoSanitize HTML output from the 'showuser' command
Art Cancro [Sun, 1 Jul 2007 04:20:36 +0000 (04:20 +0000)]
Sanitize HTML output from the 'showuser' command

16 years agoWhen reading in SMTP recipients, use safestrncpy() instead
Art Cancro [Fri, 29 Jun 2007 05:01:56 +0000 (05:01 +0000)]
When reading in SMTP recipients, use safestrncpy() instead
of strcpy() to load the address conversion buffer.

16 years agoEliminate the 'Internet mail recommends
Art Cancro [Thu, 28 Jun 2007 04:01:12 +0000 (04:01 +0000)]
Eliminate the 'Internet mail recommends
a subject' message; the presence of the 'Subject:' prompt
ought to be enough to communicate that.  Also, do not prompt
if the subject is already set (which will be the case if the
user has selected a 'Reply' command).

16 years agoBe a little smarter about return-path generation.
Art Cancro [Wed, 27 Jun 2007 05:32:56 +0000 (05:32 +0000)]
Be a little smarter about return-path generation.

16 years agoRemoved the VRFY and EXPN commands from our SMTP server
Art Cancro [Wed, 27 Jun 2007 05:06:31 +0000 (05:06 +0000)]
Removed the VRFY and EXPN commands from our SMTP server
implementation because nobody uses these commands anymore
except for spammers.

16 years ago* print some info to the client while putting stuff into the db
Wilfried Göesgens [Tue, 26 Jun 2007 20:55:08 +0000 (20:55 +0000)]
* print some info to the client while putting stuff into the db
* use select() to read more from the citserver.

16 years ago* if a message subject is required, ask the user for it before opening the editor.
Wilfried Göesgens [Mon, 25 Jun 2007 21:53:00 +0000 (21:53 +0000)]
* if a message subject is required, ask the user for it before opening the editor.

16 years ago* evaluate the subject required flag. not tested, the user doesn't get to know the...
Wilfried Göesgens [Sun, 24 Jun 2007 22:25:00 +0000 (22:25 +0000)]
* evaluate the subject required flag. not tested, the user doesn't get to know the consequences yet.

16 years ago* configure the room subject required flag in the text client
Wilfried Göesgens [Sun, 24 Jun 2007 21:21:29 +0000 (21:21 +0000)]
* configure the room subject required flag in the text client

16 years agothe close window icon of popup room info appear now on right
Thierry Pasqualier [Sun, 24 Jun 2007 18:24:49 +0000 (18:24 +0000)]
the close window icon of popup room info appear now on right

16 years agoAdjusted ENT0 response to look for nonzero instead of
Art Cancro [Sun, 24 Jun 2007 04:24:34 +0000 (04:24 +0000)]
Adjusted ENT0 response to look for nonzero instead of
a string for the 'subject required' function.

16 years agoCreating a mailbox room no longer automatically sets
Art Cancro [Sun, 24 Jun 2007 04:23:52 +0000 (04:23 +0000)]
Creating a mailbox room no longer automatically sets
the 'subject required' bit.  Instead, the server recommends a subject at ENT0 time
if the 'subject required' bit is set *or* there is at least one Internet email
recipient.  This allows local citadel users to send mail to each other without
subjects, which is customary.
* Also made the ENT0 result for this function numeric instead of a string.

16 years ago* added subject required line to the room config tab
Wilfried Göesgens [Sat, 23 Jun 2007 21:56:34 +0000 (21:56 +0000)]
* added subject required line to the room config tab
* evaluate the flag in the message create box.

16 years ago* added flag to make clients add a subject
Wilfried Göesgens [Sat, 23 Jun 2007 21:51:54 +0000 (21:51 +0000)]
* added flag to make clients add a subject
* create every room of type 'mailbox' this way
* added modified reply to ENT0 that indicates the flag.

16 years agoMerged the latest Dutch translation nl.po sent in by Wim Kuilman
Art Cancro [Thu, 21 Jun 2007 20:57:28 +0000 (20:57 +0000)]
Merged the latest Dutch translation nl.po sent in by Wim Kuilman

16 years ago* move chkpw d to the utilbin section.
Wilfried Göesgens [Wed, 20 Jun 2007 20:14:55 +0000 (20:14 +0000)]
* move chkpw d to the utilbin section.

16 years ago* move chkpwd to the utility bin dir, added chkpw to the debs.
Wilfried Göesgens [Wed, 20 Jun 2007 20:05:00 +0000 (20:05 +0000)]
* move chkpwd to the utility bin dir, added chkpw to the debs.

16 years ago* check whether we shoud shut down. we do this by checking whether the password is...
Wilfried Göesgens [Wed, 20 Jun 2007 19:25:25 +0000 (19:25 +0000)]
* check whether we shoud shut down. we do this by checking whether the password is an empty string.

16 years agoThe room info link in the banner no longer appears
Art Cancro [Wed, 20 Jun 2007 04:36:03 +0000 (04:36 +0000)]
The room info link in the banner no longer appears
as the words 'Room info'.  Instead, it shows the room info itself if
it is short enough, or it shows a shortened version if it is too
long.  Either way, the user may click on it to see the full version
in a popup.

I have also replaced the words 'close window' with the close window
icon, but I can't figure out how to make it appear on the right side
of the box.

16 years ago* fix a leak in GREG
Wilfried Göesgens [Tue, 19 Jun 2007 21:32:00 +0000 (21:32 +0000)]
* fix a leak in GREG
* fix some unclear conditions mentioned by valgrind.

16 years agoRewrote safestrncpy() using our own code instead of a call
Art Cancro [Tue, 19 Jun 2007 20:49:54 +0000 (20:49 +0000)]
Rewrote safestrncpy() using our own code instead of a call
to strncpy().  Eliminates overlap warnings.

16 years ago* check whether our chkpwd binary exists or not
Wilfried Göesgens [Tue, 19 Jun 2007 19:00:06 +0000 (19:00 +0000)]
* check whether our chkpwd binary exists or not
* use the default framework to locate chkpwd in the sample
* added the sample to make

16 years agoEliminated the unpacking of uid in the chkpwd
Art Cancro [Tue, 19 Jun 2007 15:23:25 +0000 (15:23 +0000)]
Eliminated the unpacking of uid in the chkpwd
binary protocol.  sizeof uid_t is now used, since it will
always be on the same host anyway.

16 years agoAdded 'chkpw.c' utility for manually checking passwords.
Art Cancro [Tue, 19 Jun 2007 15:10:50 +0000 (15:10 +0000)]
Added 'chkpw.c' utility for manually checking passwords.
This is not yet integrated into the build.

16 years agocitadel.rc: commented out the 'Doorway' function, and
Art Cancro [Tue, 19 Jun 2007 03:19:19 +0000 (03:19 +0000)]
citadel.rc: commented out the 'Doorway' function, and
file upload/download using xmodem/ymodem/zmodem commands.  They can
be re-enabled by any sites that might still be using these antiquated
functions.

16 years agochkpwd is now a daemon that is started by citserver
Art Cancro [Tue, 19 Jun 2007 02:39:32 +0000 (02:39 +0000)]
chkpwd is now a daemon that is started by citserver
prior to dropping root privileges.  The pair communicate over a private
set of pipes.  chkpwd no longer needs to be setuid.

16 years ago* new german texts
Wilfried Göesgens [Mon, 18 Jun 2007 21:32:52 +0000 (21:32 +0000)]
* new german texts

16 years agoRefuse to purge expired users if the
Art Cancro [Mon, 18 Jun 2007 21:18:04 +0000 (21:18 +0000)]
Refuse to purge expired users if the
auto-purger determines that it would have purged every user
on the system.  This is usually an error condition, such as
an inability to communicate with a PAM service.

16 years agoRemoved the --disable-chkpwd option, because it generates
Art Cancro [Mon, 18 Jun 2007 04:13:47 +0000 (04:13 +0000)]
Removed the --disable-chkpwd option, because it generates
a system that fails to build.  (The non-chkpwd version of validpw() was
removed a long time ago.)

16 years agoRenamed validpw() in auth.c to validate_password()
Art Cancro [Mon, 18 Jun 2007 04:02:17 +0000 (04:02 +0000)]
Renamed validpw() in auth.c to validate_password()
in order to distinguish it from the validpw() function in user_ops.c

16 years agoUpdate of the French translation
Thierry Pasqualier [Sun, 17 Jun 2007 17:08:53 +0000 (17:08 +0000)]
Update of the French translation

16 years agosolve the problem with the Who is online? list in the sidebar
Thierry Pasqualier [Sun, 17 Jun 2007 15:18:38 +0000 (15:18 +0000)]
solve the problem with the Who is online? list in the sidebar

16 years agoAdd TinyMCE language packs
Art Cancro [Fri, 15 Jun 2007 14:28:25 +0000 (14:28 +0000)]
Add TinyMCE language packs

16 years agoEnable TinyMCE when using Safari or Opera
Art Cancro [Fri, 15 Jun 2007 14:24:06 +0000 (14:24 +0000)]
Enable TinyMCE when using Safari or Opera

16 years agoUpgrade of TinyMCE is in progress.
Art Cancro [Fri, 15 Jun 2007 14:14:13 +0000 (14:14 +0000)]
Upgrade of TinyMCE is in progress.

16 years agoUpgrade of TinyMCE is in progress.
Art Cancro [Fri, 15 Jun 2007 14:13:45 +0000 (14:13 +0000)]
Upgrade of TinyMCE is in progress.

16 years agoLaid some of the groundwork for a partial
Art Cancro [Fri, 15 Jun 2007 04:06:10 +0000 (04:06 +0000)]
Laid some of the groundwork for a partial
implementation of IMAP METADATA

16 years agoEdit message : fix To CC BCC Subject labels positions
Thierry Pasqualier [Thu, 14 Jun 2007 22:20:34 +0000 (22:20 +0000)]
Edit message : fix To CC BCC Subject labels positions

16 years ago* removed wrong include.
Wilfried Göesgens [Thu, 14 Jun 2007 22:13:35 +0000 (22:13 +0000)]
* removed wrong include.

16 years ago* we should work without debugging too...
Wilfried Göesgens [Thu, 14 Jun 2007 22:08:47 +0000 (22:08 +0000)]
* we should work without debugging too...

16 years ago* put in a sample vcard.
Wilfried Göesgens [Thu, 14 Jun 2007 22:00:55 +0000 (22:00 +0000)]
* put in a sample vcard.

16 years ago* wait a second so the session proxy has time to start, and become responsive.
Wilfried Göesgens [Thu, 14 Jun 2007 21:27:45 +0000 (21:27 +0000)]
* wait a second so the session proxy has time to start, and become responsive.

16 years ago* put the vcard we just read back in.
Wilfried Göesgens [Wed, 13 Jun 2007 21:16:15 +0000 (21:16 +0000)]
* put the vcard we just read back in.

16 years ago* just sugest localepurge, as its not essential to us.
Wilfried Göesgens [Wed, 13 Jun 2007 19:56:40 +0000 (19:56 +0000)]
* just sugest localepurge, as its not essential to us.

16 years agoAdded in the missing '>' character for a <div> tag; this
Art Cancro [Wed, 13 Jun 2007 19:38:02 +0000 (19:38 +0000)]
Added in the missing '>' character for a <div> tag; this
fixes the bulletin board view in IE7

16 years agoAdd a forward slash to the generated paths for citadel.key,
Art Cancro [Wed, 13 Jun 2007 03:46:44 +0000 (03:46 +0000)]
Add a forward slash to the generated paths for citadel.key,
citadel.csr, and citadel.cer.  Without it, they were getting generated as
'/usr/local/citadel/keyscitadel.*' instead of '/usr/local/citadel/keys/citadel.*' which
is incorrect.  If this creates double slashes in the FSSTND version, that's ok, the
kernel will strip them out.

16 years agoChecked in a skeleton of the IMAP METADATA extension
Art Cancro [Wed, 13 Jun 2007 02:46:31 +0000 (02:46 +0000)]
Checked in a skeleton of the IMAP METADATA extension
(draft-daboo-imap-annotatemore-11).  This will not be a full
implementation of the extension.  We are only going to implement
enough of it to handle folder types in the Outlook connector.

16 years ago* parse function reply properly
Wilfried Göesgens [Tue, 12 Jun 2007 19:32:26 +0000 (19:32 +0000)]
* parse function reply properly
* use text/x-vcard
* print the vcard.

16 years agoAdded the forward slash to the list of characters
Art Cancro [Tue, 12 Jun 2007 15:42:14 +0000 (15:42 +0000)]
Added the forward slash to the list of characters
escaped by urlesc().  This prevents the slash from being interpreted
as a directory separator.

16 years agoAdded the address book popup into mailing list mangement
Art Cancro [Tue, 12 Jun 2007 15:39:22 +0000 (15:39 +0000)]
Added the address book popup into mailing list mangement

16 years agoAssigned developer code 31 to Stuart Cianos
Art Cancro [Mon, 11 Jun 2007 13:21:33 +0000 (13:21 +0000)]
Assigned developer code 31 to Stuart Cianos

16 years ago* new debug switch for communication in the session-proxy
Wilfried Göesgens [Sun, 10 Jun 2007 19:36:41 +0000 (19:36 +0000)]
* new debug switch for communication in the session-proxy
* DLAT works now.

16 years ago* create directory before installing files into it.
Wilfried Göesgens [Sun, 10 Jun 2007 17:19:37 +0000 (17:19 +0000)]
* create directory before installing files into it.

16 years ago * match out 'ubuntu' from the version string
Wilfried Göesgens [Thu, 7 Jun 2007 20:43:11 +0000 (20:43 +0000)]
 * match out 'ubuntu' from the version string

16 years ago* print the ip-address too if we fail to bind a server port.
Wilfried Göesgens [Thu, 7 Jun 2007 20:27:31 +0000 (20:27 +0000)]
* print the ip-address too if we fail to bind a server port.

16 years agobuildpackages sourcedist - generate .tar.gz instead of .tgz
Art Cancro [Thu, 7 Jun 2007 18:50:16 +0000 (18:50 +0000)]
buildpackages sourcedist - generate .tar.gz instead of .tgz

16 years agoTHIS IS 7.10
Art Cancro [Thu, 7 Jun 2007 18:43:23 +0000 (18:43 +0000)]
THIS IS 7.10

16 years ago* added some missing depends
Wilfried Göesgens [Thu, 7 Jun 2007 09:59:42 +0000 (09:59 +0000)]
* added some missing depends
* evaluate wether we are in apache mode, and append -f

16 years agoAttempt #2 at setting the egress interface
Art Cancro [Thu, 7 Jun 2007 03:01:10 +0000 (03:01 +0000)]
Attempt #2 at setting the egress interface

16 years agoNew versions of Berkeley DB (I tested with 4.5.20) seem to
Art Cancro [Tue, 5 Jun 2007 21:40:42 +0000 (21:40 +0000)]
New versions of Berkeley DB (I tested with 4.5.20) seem to
have a new algorithm that always creates a new log file on startup.  This
broke Citadel's drop_root_perms and caused a database crash.  Refactored
the order of startup functions, separating the code which performs chown
and chmod on files in ctdl_data_dir into its own function and calling that
immediately prior to dropping root permissions.