- added a new function to the database interface, cdb_close_cursor(). always
[citadel.git] / citadel / ChangeLog
index a2ffd6622d8829fe3b097c966a93ae1751182386..8149fe4843fbcbe0a0d922037e6dd458ef93b681 100644 (file)
@@ -1,4 +1,241 @@
  $Log$
+ Revision 580.15  2001/07/29 22:24:04  nbryant
+  - added a new function to the database interface, cdb_close_cursor().  always
+ call this when you're finished with a traversal but didn't bother reading all
+ the way to the end.
+
+  - removed several cdb_begin_transaction()/cdb_end_transaction() calls that are
+ no longer needed because of the read-only cursor support.
+
+ Revision 580.14  2001/07/29 20:56:09  nbryant
+ change ForEachRoom to use read-only cursors by default. it can be overridden to
+ still use read/write cursors by doing:
+
+  cdb_begin_transaction();
+  ForEachRoom(...);
+  cdb_end_transaction();
+
+ the only place I found where it appears necessary to do so is check_ref_counts,
+ so this checkin affects that function too.
+
+ Revision 580.13  2001/07/29 20:06:33  nbryant
+ generate symlinks to .libs in modules directory
+
+ Revision 580.12  2001/07/28 00:02:50  nbryant
+ implemented read-only cursors. one of the advantages to these is that
+ transactions can be avoided; a cursor operation that occurs within a
+ transaction will often acquire a read lock on every single database page.  in
+ general, the Sleepycat documentation recommends avoiding transaction-protected
+ read-only operations where practical. read/modify/write operations can still
+ be transaction protected, of course.
+
+ to use a read-only cursor, call cdb_rewind without a previous call to
+ cdb_begin_transaction. the DB driver will notice this and prevent the current
+ thread from modifying data or starting a transaction until the cursor is
+ closed.
+
+ Revision 580.11  2001/07/27 20:45:44  nbryant
+ libtool has matured a lot since the last time i looked at it (years ago)
+ so we now use it to handle the details of building shared libraries and
+ the linker flags for the main executable.
+
+ in theory this should bring a lot more portability to the dynloader
+ subsystem and enable us to do things like transparently detect GNU vs Sun
+ linkers on solaris, for example
+
+ Revision 580.10  2001/07/27 03:29:04  nbryant
+ missed one thing in the autoconf move
+
+ Revision 580.9  2001/07/27 02:57:43  nbryant
+ support one cursor per database rather than one global cursor
+
+ Revision 580.8  2001/07/27 01:32:07  nbryant
+ remove the automatic transaction demarcation on singleton read operations
+
+ Revision 580.7  2001/07/26 21:43:46  nbryant
+  - move to autoconf 2.52
+  - random warning fix
+  - check for db 3.3
+
+ Revision 580.6  2001/07/24 13:17:54  ajc
+ * New UI for mailing list setup
+ * rooms.c: code cleanup
+ * docs update
+
+ Revision 580.5  2001/07/20 23:48:23  nbryant
+ fix build on solaris, check default install location for db 3.2, and silence
+ gcc 3.0
+
+ Revision 580.4  2001/07/16 14:24:30  ajc
+ * Silly cosmetic change to keep the wholist ordered by ascending session number
+
+ Revision 580.3  2001/07/13 00:01:36  ajc
+ * Shuffled around some of the housekeeping loop code
+
+ Revision 580.2  2001/07/11 17:01:10  ajc
+ * database_sleepycat.c: small changes to log messages
+
+ Revision 580.1  2001/07/11 04:35:40  nbryant
+ moved dret initialization in cdb_fetch, just in case
+
+ Revision 580.0  2001/07/03 03:07:06  ajc
+ * THIS IS 5.80
+
+ Revision 573.143  2001/07/03 03:06:50  ajc
+ * Last minute doco update for 5.80
+
+ Revision 573.142  2001/07/01 15:44:32  nbryant
+ configure.in: check for Berkeley DB first.
+
+ Revision 573.141  2001/06/27 23:34:30  ajc
+ * Added some verbage to messages/roomaccess to placate a user who keeps
+   bitching about privacy policy.
+
+ Revision 573.140  2001/06/19 03:41:04  ajc
+ * Ooops... last_cull needs to be declared static
+
+ Revision 573.139  2001/06/19 03:33:19  ajc
+ * imap_fetch.c: download MIME parts without decoding first.  We like that.
+ * database_sleepycat.c: added automatic culling of log files which have not
+   been written to in five days.
+
+ Revision 573.138  2001/06/17 19:42:23  nbryant
+ fix all the <time.h> vs. <sys/time.h> issues, hopefully
+
+ Revision 573.137  2001/06/07 03:28:37  ajc
+ * More tweaks to the MIME parser
+
+ Revision 573.136  2001/06/06 15:44:37  ajc
+ * msgbase.c: output extra newline at end of RFC822 message if necessary to
+   ensure that 000 termination string appears on a line by itself.
+
+ Revision 573.135  2001/06/06 04:22:25  ajc
+ * Moved memreadline() to tools.c
+ * internet_addressing.c: fixed conversion of fields to (hopefully) never get
+   into an active loop when encountering badly formed headers
+
+ Revision 573.134  2001/05/27 05:23:03  ajc
+ * Added a "no new messages" response in the client, displayed when a read
+   command turns up a zero message count.
+
+ Revision 573.133  2001/05/18 20:12:09  ajc
+ * Fixed bug in mime_parser.c that caused parts to be dropped when the last
+   boundary was the very last line of the message.
+ * serv_smtp.c: toned down some of the command response verbage.
+
+ Revision 573.132  2001/04/28 04:42:55  ajc
+ * Updated some of the docs.  Bumped version number to 5.80 in anticipation
+   of going into a release cycle soon.
+
+ Revision 573.130  2001/04/26 03:31:00  ajc
+ * Finished the implementation of per-message seen/unseen logic, both in the
+   server proper and in IMAP.  Citadel protocol uses new "seen" command.
+
+ Revision 573.129  2001/04/21 04:55:51  ajc
+ * Began implementation of per-message seen/unseen attribute
+
+ Revision 573.128  2001/04/20 03:39:54  ajc
+ * IMAP LIST/LSUB: made it case insensitive.  Also minor IMAP code cleanup.
+
+ Revision 573.127  2001/04/17 00:35:19  cough
+ * Modified rooms.c in the client so that it would allow inviting into
+   public rooms.  This is important since there is now a V_LOCKOUT
+   flag which prevents users who have been kicked from rejoining
+   a room unless/until you invite them back in.
+
+ Revision 573.126  2001/04/16 19:21:14  cough
+ * Fixed bug in room_ops.c that wasn't allowing aides to goto passworded
+   rooms without knowing the password.
+
+ Revision 573.125  2001/04/14 04:26:44  ajc
+ * Fixed an unterminated string bug in IMAP APPEND.  Storing messages should
+   work now.
+
+ Revision 573.124  2001/04/10 01:04:10  ajc
+ * Finished coding IMAP APPEND.  It works, but there's a bug in it somewhere
+   that is corrupting the memory.
+
+ Revision 573.123  2001/04/03 00:47:23  ajc
+ * Began implementing IMAP APPEND
+
+ Revision 573.122  2001/04/01 22:05:44  cough
+ * *Actually* fixed a botched ChangeLog entry.
+
+ Revision 573.121  2001/04/01 22:04:28  cough
+ * Fixed a botched ChangeLog entry.
+
+ Revision 573.120  2001/04/01 22:03:10  cough
+ * Changed two fclose()s to pclose()s.
+
+ Revision 573.119  2001/03/25 11:52:36  error
+ * serv_pop3.c: Fixed APOP. Now logs in properly. Also cleaned up some non-
+   RFC-compliant error messages.
+
+ Revision 573.118  2001/03/21 05:47:49  ajc
+ * Added the new IMAP mailbox string compare submitted by Daniel Malament.
+
+ Revision 573.117  2001/03/20 01:33:55  ajc
+ * Added the (\NoInferiors) tag to all rooms listed in IMAP.  This made Mozilla
+   behave very nicely.
+
+ Revision 573.116  2001/03/13 17:19:33  ajc
+ * support (BODY[HEADER.FIELDS(BLAH BLAH BLAH)]) and HEADER.FIELDS.NOT
+
+ Revision 573.115  2001/03/12 01:27:42  ajc
+ * Implemented SUBSCRIBE and UNSUBSCRIBE commands
+
+ Revision 573.114  2001/03/11 23:00:29  ajc
+ * Mega sexy hack to deliver express messages THROUGH IMAP!  uber coolness!!
+
+ Revision 573.113  2001/03/11 22:09:20  ajc
+ * Replaced the "citlogin" binary wrapper with the "loginwrapper.sh" script.
+
+ Revision 573.112  2001/03/11 20:06:53  ajc
+ * Fixed bug that created incorrect roomnames when sending pages
+
+ Revision 573.111  2001/03/11 19:23:32  ajc
+ * IMAP DELETE command ... also split up access control for room delete cmds
+
+ Revision 573.110  2001/03/10 17:29:07  ajc
+ * Implement proper access control for deleting messages from IMAP
+
+ Revision 573.109  2001/03/07 04:02:27  ajc
+ * Fixed some small IMAP bugs
+
+ Revision 573.108  2001/03/06 04:44:00  ajc
+ * Probable completion of STATUS, COPY, STORE, and EXPUNGE commands in IMAP
+
+ Revision 573.107  2001/03/06 03:31:58  nbryant
+ database-related cleanups and paranoia tests;
+ fixed a transaction-leak/deadlock problem in cdb_delete;
+ solved the SIGPIPE mystery (GDB stops on SIGPIPE is all it was)
+
+ Revision 573.106  2001/03/05 04:59:31  ajc
+ * IMAP COPY
+
+ Revision 573.105  2001/03/04 23:49:41  ajc
+ * IMAP EXPUNGE responses -should- be correct now
+
+ Revision 573.94  2001/02/20 00:02:56  ajc
+ * IMAP: implemented the STATUS command (sort of).
+
+ Revision 573.93  2001/02/19 22:24:41  ajc
+ * IMAP server: added untagged, unsolicited server messages for newly arrived
+   messages, and messages expunged by another session.
+
+ Revision 573.92  2001/02/17 05:53:35  ajc
+ * Repaired the creation of page log rooms in the wrong namespace when the
+   recipient does not yet have his/her log room created.
+ * Rewrite "EXPI messages" to run in two passes: one to gather messages to
+   purge and the next to delete them.  Works better in transactionland.
+
+ Revision 573.91  2001/02/14 08:11:27  error
+ * citadel.rc: added $Id$ (it's about time!)
+
+ Revision 573.90  2001/02/14 04:23:54  ajc
+ * Fixed POP3 server responses ending in \n instead of \r\n as they should be.
+   This was causing some clients (such as Pine) to lock up.
+
  Revision 573.89  2001/02/13 04:06:14  ajc
  * Worked out the remaining bugs in IMAP FETCH for the BODYSTRUCTURE and
    BODY[n] data items.  I think.  So much protocol crud, so little time...
@@ -2404,3 +2641,4 @@ Sat Jul 11 00:20:48 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
 
 Fri Jul 10 1998 Art Cancro <ajc@uncensored.citadel.org>
        * Initial CVS import 
+