citadel.git
18 years ago* Integrated the first batch of new icons.
Art Cancro [Sat, 11 Jun 2005 22:29:13 +0000 (22:29 +0000)]
* Integrated the first batch of new icons.

18 years ago*** empty log message ***
Art Cancro [Thu, 9 Jun 2005 20:20:40 +0000 (20:20 +0000)]
*** empty log message ***

18 years ago* Easy Install requires gmake
Art Cancro [Thu, 9 Jun 2005 20:10:02 +0000 (20:10 +0000)]
* Easy Install requires gmake

18 years ago*** empty log message ***
Art Cancro [Thu, 9 Jun 2005 17:14:03 +0000 (17:14 +0000)]
*** empty log message ***

18 years ago* Allow IMAP DELETE of a zapped/forgotten/unsubscribed room
Art Cancro [Thu, 9 Jun 2005 03:35:58 +0000 (03:35 +0000)]
* Allow IMAP DELETE of a zapped/forgotten/unsubscribed room

18 years ago* Do not log IMAP/POP/SMTP password commands
Art Cancro [Thu, 9 Jun 2005 03:20:21 +0000 (03:20 +0000)]
* Do not log IMAP/POP/SMTP password commands

18 years ago* bounce messages need subjects
Art Cancro [Tue, 7 Jun 2005 21:45:15 +0000 (21:45 +0000)]
* bounce messages need subjects

18 years ago* Don't compress when HTTP tracing/logging is enabled
Art Cancro [Tue, 7 Jun 2005 04:31:01 +0000 (04:31 +0000)]
* Don't compress when HTTP tracing/logging is enabled

18 years ago*** empty log message ***
Art Cancro [Tue, 7 Jun 2005 00:40:11 +0000 (00:40 +0000)]
*** empty log message ***

18 years ago* Made some changes to the calendar/uuid logic to fix a bug that caused
Art Cancro [Mon, 6 Jun 2005 23:50:17 +0000 (23:50 +0000)]
* Made some changes to the calendar/uuid logic to fix a bug that caused
  duplicate entries for an event to appear in some situations

18 years ago* GroupDAV URI escape character is now '%' in order to be consistent...
Art Cancro [Mon, 6 Jun 2005 16:20:36 +0000 (16:20 +0000)]
* GroupDAV URI escape character is now '%' in order to be consistent...

18 years ago* Calendar invitations: changed "Accept/Tentative/Decline" buttons to
Art Cancro [Sat, 4 Jun 2005 04:07:36 +0000 (04:07 +0000)]
* Calendar invitations: changed "Accept/Tentative/Decline" buttons to
  links in order to avoid them being in nested forms.

18 years ago* When saving a vCard to a dedicated contacts room, always set the subject
Art Cancro [Fri, 3 Jun 2005 22:26:03 +0000 (22:26 +0000)]
* When saving a vCard to a dedicated contacts room, always set the subject
  to the name in the vCard.

18 years ago* Removed old Aethera hacks
Art Cancro [Fri, 3 Jun 2005 22:22:36 +0000 (22:22 +0000)]
* Removed old Aethera hacks

18 years ago* Documentation update
Art Cancro [Fri, 3 Jun 2005 04:01:35 +0000 (04:01 +0000)]
* Documentation update

18 years ago* Set the correct flags in the target room after an IMAP COPY command.
Art Cancro [Thu, 2 Jun 2005 19:32:30 +0000 (19:32 +0000)]
* Set the correct flags in the target room after an IMAP COPY command.

18 years ago* tools.c: generated uuid's no longer contain "{" and "}" characters.
Art Cancro [Thu, 2 Jun 2005 16:10:08 +0000 (16:10 +0000)]
* tools.c: generated uuid's no longer contain "{" and "}" characters.

18 years ago* remove crc16.o
Art Cancro [Thu, 2 Jun 2005 03:41:45 +0000 (03:41 +0000)]
* remove crc16.o

18 years ago* Do not turn the initial thread into a worker thread after initialization.
Art Cancro [Thu, 2 Jun 2005 03:39:44 +0000 (03:39 +0000)]
* Do not turn the initial thread into a worker thread after initialization.
  Its stack size is too small, which could cause crashes.

18 years ago* Implemented a workaround for the IMAP "expungebob bug." Specifically, since
Art Cancro [Wed, 1 Jun 2005 22:32:58 +0000 (22:32 +0000)]
* Implemented a workaround for the IMAP "expungebob bug."  Specifically, since
  we don't store the \Deleted flag persistently (and instead auto-expunge
  folders when they are de-selected) we were not advertising \Deleted as
  a PERMANENTFLAGS flag.  This was causing some clients (particularly
  Thunderbird) to misbehave -- they were simply electing not to transmit the
  flag at all.  As a workaround, \Deleted is now advertised as a
  PERMANENTFLAGS flag, even though it technically isn't.

18 years ago* serv_vandelay.c: updated the export format to include some of the config
Art Cancro [Wed, 1 Jun 2005 18:31:50 +0000 (18:31 +0000)]
* serv_vandelay.c: updated the export format to include some of the config
  items we missed.

18 years ago* The full text indexer now runs in its own dedicated thread instead of
Art Cancro [Wed, 1 Jun 2005 05:23:26 +0000 (05:23 +0000)]
* The full text indexer now runs in its own dedicated thread instead of
  in the housekeeping thread.  The main indexer loop now also has the ability
  to save its place and bail out early when it discovers that the server is
  trying to shut down.  The main server loop will pthread_join() the indexer
  thread and patiently wait for it to complete before exiting.  These changes
  all put together mean that citserver will not hang when it is terminated
  during an indexing operation.

18 years ago*** empty log message ***
Art Cancro [Tue, 31 May 2005 04:09:59 +0000 (04:09 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
Art Cancro [Sat, 28 May 2005 04:03:42 +0000 (04:03 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
Art Cancro [Sat, 28 May 2005 03:50:32 +0000 (03:50 +0000)]
*** empty log message ***

18 years ago* Removed OpenLDAP from Easy Install, because it was just too problematic.
Art Cancro [Fri, 27 May 2005 23:46:57 +0000 (23:46 +0000)]
* Removed OpenLDAP from Easy Install, because it was just too problematic.

18 years ago* THIS IS 6.11
Art Cancro [Thu, 26 May 2005 04:38:17 +0000 (04:38 +0000)]
* THIS IS 6.11

18 years ago* Updated internal version number to 6.11
Art Cancro [Thu, 26 May 2005 04:37:59 +0000 (04:37 +0000)]
* Updated internal version number to 6.11

18 years ago* Applied GroupDAV patches sent in by Johannes Schneider which improve the
Art Cancro [Thu, 26 May 2005 04:28:27 +0000 (04:28 +0000)]
* Applied GroupDAV patches sent in by Johannes Schneider which improve the
  protocol accuracy of xmlns and etag responses.
* Fixed a MIME Content-Type bug which I had inadvertently introduced while
  removing a temporary hack that was put in during KDE 3.4 beta

18 years ago* Applied xmlns and etag patches sent in by Johannes Schneider that improve
Art Cancro [Thu, 26 May 2005 04:25:29 +0000 (04:25 +0000)]
* Applied xmlns and etag patches sent in by Johannes Schneider that improve
  GroupDAV support.
* Located and fixed a MIME Content-type bug that I accidentally created
  while removing a temporary hack that was in place during the last KDE beta.

18 years ago* Applied a patch sent by Johannes Schneider for correcting the XML
Art Cancro [Tue, 24 May 2005 04:26:47 +0000 (04:26 +0000)]
* Applied a patch sent by Johannes Schneider for correcting the XML
  namespace presented in the PROPFIND command.

18 years ago*** empty log message ***
Art Cancro [Tue, 24 May 2005 04:03:47 +0000 (04:03 +0000)]
*** empty log message ***

18 years ago* database_sleepycat.c: cdb_truncate() no longer encapsulated in a
Art Cancro [Mon, 23 May 2005 19:33:57 +0000 (19:33 +0000)]
* database_sleepycat.c: cdb_truncate() no longer encapsulated in a
  transaction.  Truncating a database in Citadel is always synchronous,
  and with big tables (such as when the full text indexer is switched off
  or reinitialized) it was running out of memory.

18 years ago* test
Art Cancro [Mon, 23 May 2005 19:31:52 +0000 (19:31 +0000)]
* test

18 years ago* Move "enable full text" checkbox configuration to its new location in
Art Cancro [Mon, 23 May 2005 19:30:34 +0000 (19:30 +0000)]
* Move "enable full text" checkbox configuration to its new location in
  the configuration back end.

18 years ago* Move the location of the "enable full text index" configuration item to
Art Cancro [Mon, 23 May 2005 19:26:04 +0000 (19:26 +0000)]
* Move the location of the "enable full text index" configuration item to
  a new location.  Reusing an old location was a stupid idea because old
  clients can inadvertently switch it on.

18 years ago* serv_imap.c: improve SELECT time by fetching the msglist directly out of
Art Cancro [Mon, 23 May 2005 14:07:40 +0000 (14:07 +0000)]
* serv_imap.c: improve SELECT time by fetching the msglist directly out of
  the database instead of doing a CtdlForEachMessage() loop.

18 years ago* imap optimizations
Art Cancro [Sun, 22 May 2005 22:00:10 +0000 (22:00 +0000)]
* imap optimizations

18 years ago* siteconfig.c: add checkbox for enabling full text index on server
Art Cancro [Sun, 22 May 2005 16:20:09 +0000 (16:20 +0000)]
* siteconfig.c: add checkbox for enabling full text index on server

18 years ago* Full text indexer is now switchable on/off
Art Cancro [Sun, 22 May 2005 16:12:26 +0000 (16:12 +0000)]
* Full text indexer is now switchable on/off

18 years ago* The IGnet map is now rewritten to disk only when it changes.
Art Cancro [Fri, 20 May 2005 20:02:51 +0000 (20:02 +0000)]
* The IGnet map is now rewritten to disk only when it changes.
* When processing inbound network spool, ignore "." and ".." instead of
  failing on them.

18 years ago*** empty log message ***
Art Cancro [Fri, 20 May 2005 16:22:33 +0000 (16:22 +0000)]
*** empty log message ***

18 years ago* Dramatically improved the time it takes to goto (or select) a room which
Art Cancro [Fri, 20 May 2005 16:14:44 +0000 (16:14 +0000)]
* Dramatically improved the time it takes to goto (or select) a room which
  contains a very long and complex seen/unseen list.  Our test folder,
  containing 359 new of 3162 messages, formerly took 22 seconds to select;
  now it takes 1 to 2 seconds.

18 years ago*** empty log message ***
Art Cancro [Fri, 20 May 2005 14:34:20 +0000 (14:34 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
Art Cancro [Fri, 20 May 2005 13:59:03 +0000 (13:59 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
Art Cancro [Fri, 20 May 2005 02:43:19 +0000 (02:43 +0000)]
*** empty log message ***

18 years ago* Performance-optimized the full text indexer.
Art Cancro [Fri, 20 May 2005 02:37:17 +0000 (02:37 +0000)]
* Performance-optimized the full text indexer.

18 years ago* Cull logs immediately after a successful db checkpoint instead of only
Art Cancro [Fri, 20 May 2005 01:20:25 +0000 (01:20 +0000)]
* Cull logs immediately after a successful db checkpoint instead of only
  once every 24 hours.  During big db write operations (such as building
  the full text index) they were just piling up too much.

18 years ago*** empty log message ***
Art Cancro [Thu, 19 May 2005 21:11:14 +0000 (21:11 +0000)]
*** empty log message ***

18 years ago* Altered the full text indexer to output messages as text before running
Art Cancro [Thu, 19 May 2005 21:10:04 +0000 (21:10 +0000)]
* Altered the full text indexer to output messages as text before running
  through the wordbreaker.  This prevents the inclusion of encoded base64
  strings in the index, and also allows legitimate text encoded inside
  base64 to be decoded and then indexed.

18 years ago* Bound the full text index to IMAP search
Art Cancro [Thu, 19 May 2005 03:42:30 +0000 (03:42 +0000)]
* Bound the full text index to IMAP search

18 years ago*** empty log message ***
Art Cancro [Wed, 18 May 2005 22:09:39 +0000 (22:09 +0000)]
*** empty log message ***

18 years ago* Finished the indexer *and* deindexer! The search API is now working
Art Cancro [Wed, 18 May 2005 22:09:01 +0000 (22:09 +0000)]
* Finished the indexer *and* deindexer!  The search API is now working
  flawlessly too.  Now all we have to do is glue it to IMAP and other
  user-facing functionality.  (The SRCH command is for testing only.)

18 years ago*** empty log message ***
Art Cancro [Wed, 18 May 2005 18:48:52 +0000 (18:48 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
Art Cancro [Wed, 18 May 2005 17:29:57 +0000 (17:29 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
Art Cancro [Wed, 18 May 2005 04:18:52 +0000 (04:18 +0000)]
*** empty log message ***

18 years ago* Completed the "search for all of these words" functionality. All we need
Art Cancro [Wed, 18 May 2005 04:02:54 +0000 (04:02 +0000)]
* Completed the "search for all of these words" functionality.  All we need
  to do now is genericize its calling syntax so it can be called from the
  IMAP service.

18 years ago* Finished the indexer and the first part of the search function...
Art Cancro [Wed, 18 May 2005 03:22:28 +0000 (03:22 +0000)]
* Finished the indexer and the first part of the search function...

18 years ago*** empty log message ***
Art Cancro [Tue, 17 May 2005 22:28:30 +0000 (22:28 +0000)]
*** empty log message ***

18 years ago* Indexer is completed; also began work on the search function itself.
Art Cancro [Tue, 17 May 2005 20:36:49 +0000 (20:36 +0000)]
* Indexer is completed; also began work on the search function itself.
  Still need to add de-indexing so deleted messages are removed from index.

18 years ago*** empty log message ***
Art Cancro [Tue, 17 May 2005 19:33:07 +0000 (19:33 +0000)]
*** empty log message ***

18 years ago* Completed the wordbreaker for the fulltext indexer.
Art Cancro [Tue, 17 May 2005 16:25:25 +0000 (16:25 +0000)]
* Completed the wordbreaker for the fulltext indexer.

18 years ago* More glue code for the fulltext indexer.
Art Cancro [Tue, 17 May 2005 04:04:46 +0000 (04:04 +0000)]
* More glue code for the fulltext indexer.

18 years ago* Began writing all the "glue" for the indexer.
Art Cancro [Mon, 16 May 2005 21:08:45 +0000 (21:08 +0000)]
* Began writing all the "glue" for the indexer.

18 years ago* Added in skeleton modules for fulltext indexer
Art Cancro [Mon, 16 May 2005 20:37:00 +0000 (20:37 +0000)]
* Added in skeleton modules for fulltext indexer

18 years ago* definition of struct CitControl moved from citadel.h to server.h
Art Cancro [Mon, 16 May 2005 20:03:33 +0000 (20:03 +0000)]
* definition of struct CitControl moved from citadel.h to server.h

18 years ago* Don't prompt the user for screen dimensions anymore. Nobody is using
Art Cancro [Mon, 16 May 2005 18:48:45 +0000 (18:48 +0000)]
* Don't prompt the user for screen dimensions anymore.  Nobody is using
  dialup terminals with arbitrary screen sizes anymore; nearly everyone (or
  more likely, *absolutely* everyone) is now using networked displays which
  can be automatically queried for their screen dimensions.  For now, we'll
  keep the screen size properties in the database and in the protocol, but
  the prompts have been commented out.

18 years ago* Avoid re-creating the default-named baseroom (Lobby) upon subsequent
Art Cancro [Mon, 16 May 2005 18:25:57 +0000 (18:25 +0000)]
* Avoid re-creating the default-named baseroom (Lobby) upon subsequent
  startups after it's been renamed to something else.

18 years ago* Default expire policy is now 'manual' (no automatic expiry of messages
Art Cancro [Mon, 16 May 2005 16:59:39 +0000 (16:59 +0000)]
* Default expire policy is now 'manual' (no automatic expiry of messages
  under any circumstances).  Implemented as per David Given's suggestion
  that we should operate using the element of least surprise.

19 years ago* THIS IS 6.47
Art Cancro [Thu, 12 May 2005 16:54:13 +0000 (16:54 +0000)]
* THIS IS 6.47

19 years ago* Fixed a minor bug discovered in SMTP at one site
Art Cancro [Thu, 12 May 2005 16:53:18 +0000 (16:53 +0000)]
* Fixed a minor bug discovered in SMTP at one site

19 years ago* THIS IS 6.46
Art Cancro [Wed, 11 May 2005 17:06:17 +0000 (17:06 +0000)]
* THIS IS 6.46

19 years ago*** empty log message ***
Art Cancro [Wed, 11 May 2005 17:05:53 +0000 (17:05 +0000)]
*** empty log message ***

19 years ago* webcit.c: fixed a string bug that caused the whole system to not work
Art Cancro [Wed, 11 May 2005 03:00:03 +0000 (03:00 +0000)]
* webcit.c: fixed a string bug that caused the whole system to not work
* messages.c: fullname only and brief date in summary view, so that it
  doesn't wrap onto two lines quite as often

19 years ago* Interactive room deletions are now deferred. The server reconfigures the
Art Cancro [Mon, 9 May 2005 22:17:30 +0000 (22:17 +0000)]
* Interactive room deletions are now deferred.  The server reconfigures the
  room to be a mailbox owned by a nonexistent user and immediately returns
  control back to the client.  Later, THE DREADED AUTO-PURGER will see the
  dangling room and erase its contents.

19 years ago*** empty log message ***
Art Cancro [Sun, 8 May 2005 03:50:24 +0000 (03:50 +0000)]
*** empty log message ***

19 years ago* Set the internal version number to 6.46 in preparation for a release
Art Cancro [Sun, 8 May 2005 03:43:22 +0000 (03:43 +0000)]
* Set the internal version number to 6.46 in preparation for a release

19 years ago*** empty log message ***
Art Cancro [Wed, 4 May 2005 03:37:10 +0000 (03:37 +0000)]
*** empty log message ***

19 years ago*** empty log message ***
Art Cancro [Tue, 3 May 2005 22:00:58 +0000 (22:00 +0000)]
*** empty log message ***

19 years ago*** empty log message ***
Art Cancro [Tue, 3 May 2005 19:32:52 +0000 (19:32 +0000)]
*** empty log message ***

19 years ago*** empty log message ***
Art Cancro [Mon, 2 May 2005 21:03:58 +0000 (21:03 +0000)]
*** empty log message ***

19 years ago* More IMAP optimizations, including the application of our latest "don't
Art Cancro [Mon, 2 May 2005 20:52:42 +0000 (20:52 +0000)]
* More IMAP optimizations, including the application of our latest "don't
  fetch the message body" trick to ENVELOPE and INTERNALDATE fetches, to
  make MS-Outbreak spread email viruses faster.

19 years ago* serv_imap.c: implemented the RFC 3501 suggestion that the initial
Art Cancro [Mon, 2 May 2005 16:09:52 +0000 (16:09 +0000)]
* serv_imap.c: implemented the RFC 3501 suggestion that the initial
  greeting, and the response to the LOGIN command, include an output
  of the server's CAPABILITY string.  I find this to be gratuitous but
  the UW IMAP server does it, so we are also doing it in order to better
  interoperate with clients which make assumptions...

19 years ago* More IMAP tuning
Art Cancro [Fri, 29 Apr 2005 22:02:20 +0000 (22:02 +0000)]
* More IMAP tuning

19 years ago* More complex cache handling for IMAP fetch operations -- now we can
Art Cancro [Fri, 29 Apr 2005 20:47:46 +0000 (20:47 +0000)]
* More complex cache handling for IMAP fetch operations -- now we can
  fetch/cache "just the headers" and remember whether we did so, so we can
  burn the cache if the client then comes around and requests something
  that requires the body.  Still needs some testing and tuning.

19 years ago* Significantly reduced the memory footprint of struct CitContext.
Art Cancro [Fri, 29 Apr 2005 16:50:04 +0000 (16:50 +0000)]
* Significantly reduced the memory footprint of struct CitContext.

19 years ago* Removed the CtdlRedirectOutput() API, as we are no longer using it.
Art Cancro [Fri, 29 Apr 2005 16:26:00 +0000 (16:26 +0000)]
* Removed the CtdlRedirectOutput() API, as we are no longer using it.
  (Oh happy day; no more temp files!)

19 years ago* .ASG command: made better use of memory to avoid crashes
Art Cancro [Wed, 27 Apr 2005 19:22:58 +0000 (19:22 +0000)]
* .ASG command: made better use of memory to avoid crashes

19 years ago* Substantially improved the appearance of mailing list digests.
Art Cancro [Sat, 23 Apr 2005 04:38:26 +0000 (04:38 +0000)]
* Substantially improved the appearance of mailing list digests.
  Superfluous RFC822 headers no longer appear, and all messages are
  converted to plain text using the preferred_formats framework.
* CtdlOutputPreLoadedMsg() -- fixed bug that caused Citadel protocol
  headers to appear for MIME prefix, suffix, etc. even when do_proto is 0.

19 years ago* serv_imap.c: don't respond "OK DELETE completed" until after the room
Art Cancro [Sat, 23 Apr 2005 02:04:12 +0000 (02:04 +0000)]
* serv_imap.c: don't respond "OK DELETE completed" until after the room
  delete operation actually completes.

19 years ago* Big performance optimization on CtdlSetSeen()
Art Cancro [Sat, 23 Apr 2005 01:59:59 +0000 (01:59 +0000)]
* Big performance optimization on CtdlSetSeen()

19 years ago* is_msg_is_mset() has been renamed to is_msg_in_sequence_set() because
Art Cancro [Fri, 22 Apr 2005 04:26:35 +0000 (04:26 +0000)]
* is_msg_is_mset() has been renamed to is_msg_in_sequence_set() because
  "sequence set" is now the official terminology as of RFC3501.
* imap_set_seen_flags() no longer calls is_msg_in_sequence_set() for each
  message and for each flag.  It's just too expensive.  We now parse each
  flag's sequence set manually, marking the relevant messages as we go.

19 years ago* small fix to previous commit
Art Cancro [Fri, 22 Apr 2005 00:52:03 +0000 (00:52 +0000)]
* small fix to previous commit

19 years ago* msgbase.c: when committing a new message to the store, save its RFC822
Art Cancro [Thu, 21 Apr 2005 17:28:51 +0000 (17:28 +0000)]
* msgbase.c: when committing a new message to the store, save its RFC822
  length to the metadata record immediately.  This will eliminate the need
  to calculate it later during a fetch operation.

19 years ago* Variable names, comments, documentation, etc... removed the acronym 'BBS'
Art Cancro [Thu, 14 Apr 2005 15:53:56 +0000 (15:53 +0000)]
* Variable names, comments, documentation, etc...  removed the acronym 'BBS'
  in places where functionality is not specific to the use of Citadel as
  a BBS platform.

19 years ago* citmail.c: changes to citmail to make it usable as a /usr/sbin/sendmail
Art Cancro [Wed, 13 Apr 2005 20:42:45 +0000 (20:42 +0000)]
* citmail.c: changes to citmail to make it usable as a /usr/sbin/sendmail
  replacement; i.e. /bin/mail calls /usr/sbin/sendmail which sends mail
  through Citadel.

19 years ago* Reverted database changes because the cull_logs function wasn't working
Art Cancro [Wed, 13 Apr 2005 17:03:07 +0000 (17:03 +0000)]
* Reverted database changes because the cull_logs function wasn't working
  with the separate log directory.
* citmail.c: started some fixes to make it able to work from

19 years ago*** empty log message ***
Art Cancro [Tue, 12 Apr 2005 21:21:19 +0000 (21:21 +0000)]
*** empty log message ***

19 years ago* 'make install' now installs citadel-openldap.schema
Art Cancro [Tue, 12 Apr 2005 21:19:52 +0000 (21:19 +0000)]
* 'make install' now installs citadel-openldap.schema

19 years ago*** empty log message ***
Art Cancro [Mon, 11 Apr 2005 20:20:05 +0000 (20:20 +0000)]
*** empty log message ***