Art Cancro [Fri, 7 Sep 2001 04:05:27 +0000 (04:05 +0000)]
* You guessed it: still more code for the new networker.
Nathan Bryant [Thu, 6 Sep 2001 05:52:32 +0000 (05:52 +0000)]
versioning
Nathan Bryant [Thu, 6 Sep 2001 05:47:30 +0000 (05:47 +0000)]
check for /usr/include/db3 (for RedHat 6.2; others?)
Nathan Bryant [Thu, 6 Sep 2001 05:23:14 +0000 (05:23 +0000)]
#include fix for glibc 2.1.3
Art Cancro [Thu, 6 Sep 2001 04:02:34 +0000 (04:02 +0000)]
* A few more updates to the networker
Nathan Bryant [Thu, 6 Sep 2001 03:32:41 +0000 (03:32 +0000)]
build fix for sparc-sun-solaris2.8; i think the dependencies should be
set up properly for all platforms now.
Nathan Bryant [Thu, 6 Sep 2001 02:55:27 +0000 (02:55 +0000)]
build fix for Linux
Nathan Bryant [Thu, 6 Sep 2001 02:50:05 +0000 (02:50 +0000)]
added; moved main() here to support building the server body as a DLL
Art Cancro [Thu, 6 Sep 2001 02:49:24 +0000 (02:49 +0000)]
* Fixed paste-post mode (<.E>nter <A>scii) to append instead of replace when
the user hits <C>ontinue (bug reported by Stu Mark)
Nathan Bryant [Thu, 6 Sep 2001 01:26:40 +0000 (01:26 +0000)]
- port to Cygwin (DLL support, etc.)
- don't build SMTP module if there's no resolver library (eg on Windows)
Nathan Bryant [Thu, 6 Sep 2001 00:54:01 +0000 (00:54 +0000)]
updated to libtool 1.4.1 and automake 1.5
Art Cancro [Wed, 29 Aug 2001 02:51:25 +0000 (02:51 +0000)]
* More work on the new networker.
Art Cancro [Sat, 25 Aug 2001 05:04:57 +0000 (05:04 +0000)]
* Worked a little more on the in-server replacement for netproc
Brian [Thu, 23 Aug 2001 13:14:53 +0000 (13:14 +0000)]
* Changed type on CxMsLoad() from (const char *) to (long unsigned int) to
make things more intuitive (and less apt for failure)
* Vastly improved library interface, removed plenty of memory leaks.
* Library _should_ be thread-safe, but I haven't tested it. If anyone's
brave, they're welcome to.
* Library is almost completely stable now. At this point, I am blaming
most of its faults on Infusion. ;)
Art Cancro [Wed, 22 Aug 2001 16:38:06 +0000 (16:38 +0000)]
* Added the "-c" command line option to generate optional cookies indicating
the host name of the server. This makes it easy to put a cluster of WebCit
servers behind (for example) an Arrowpoint load balancer.
Art Cancro [Wed, 22 Aug 2001 04:18:18 +0000 (04:18 +0000)]
* Realized that there was lots of similarly broken code in
process_rfc822_addr(). Wrote two new utility functions in tools.c
stripout() and stripallbut() and used them where appropriate. This should
take care of all possible infinite loops.
Art Cancro [Wed, 22 Aug 2001 03:43:12 +0000 (03:43 +0000)]
* internet_addressing.c: fixed a bug in process_rfc822_addr() that caused the
server to jump into an endless loop when an e-mail address contained
unbalanced angle brackets.
Art Cancro [Tue, 21 Aug 2001 04:02:56 +0000 (04:02 +0000)]
* Added some more meta-tags to (hopefully) prevent the "lame goto" caused by
unwanted page caching
Art Cancro [Wed, 15 Aug 2001 04:26:02 +0000 (04:26 +0000)]
* Added split horizon and delete-after-spool to the new networker
Art Cancro [Tue, 14 Aug 2001 02:42:00 +0000 (02:42 +0000)]
* Began the migration of netproc into part of the serv_network.c module instead
of a standalone program.
Art Cancro [Mon, 13 Aug 2001 03:43:24 +0000 (03:43 +0000)]
* Got it!
Art Cancro [Mon, 13 Aug 2001 03:40:01 +0000 (03:40 +0000)]
* Another attempt at focus
Nathan Bryant [Sat, 11 Aug 2001 22:35:40 +0000 (22:35 +0000)]
updated citadel-with-berkeley-db.txt.
- updated build instructions
- improved backup procedures to be safer and more space-efficient.
Art Cancro [Sat, 11 Aug 2001 19:18:43 +0000 (19:18 +0000)]
* Realized that I am stupid and started implementing server commands to load
and save network configurations, when I had already lovingly implemented the
CONF GETSYS and CONF PUTSYS commands to store arbitrary configuration sets
in the Local System Configuration> room. Ripped the newer crap out.
* Implemented a skeleton of <.A>ide <S>ysconfig <N>etwork on the client side.
Art Cancro [Sat, 11 Aug 2001 04:24:39 +0000 (04:24 +0000)]
* Attempt at setting focus to msgtext area when entering a message.
Art Cancro [Sat, 11 Aug 2001 03:51:56 +0000 (03:51 +0000)]
* Removed the idle timer from the client. Dialup is dead.
Nathan Bryant [Mon, 6 Aug 2001 21:33:29 +0000 (21:33 +0000)]
made the client fall back on port 504 if there's no /etc/services entry
Art Cancro [Sun, 5 Aug 2001 23:54:14 +0000 (23:54 +0000)]
* prep for new network node infrastructure
Art Cancro [Fri, 3 Aug 2001 16:53:21 +0000 (16:53 +0000)]
* Added some more "break" statements to the main switch..case loop in
citadel.c where they were needed.
Art Cancro [Fri, 3 Aug 2001 16:43:54 +0000 (16:43 +0000)]
* database_sleepycat.c: when running txn_checkpoint(), handle DB_INCOMPLETE
return code as a warning instead of an error worthy of aborting the server.
See http://www.sleepycat.com/docs/api_c/txn_checkpoint.html for explanation.
Art Cancro [Thu, 2 Aug 2001 03:42:03 +0000 (03:42 +0000)]
* Changed the wholist to work with the new masquerade semantics
Nathan Bryant [Mon, 30 Jul 2001 03:46:14 +0000 (03:46 +0000)]
made ForEachUser use a read-only cursor, too. there is now only one piece of
code in Citadel proper (not the database driver) that needs transactions.
that's check_ref_counts; in other words it's the only thing standing in the way
of a clean implementation of retryable transactions.
Nathan Bryant [Sun, 29 Jul 2001 22:24:04 +0000 (22:24 +0000)]
- 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.
Nathan Bryant [Sun, 29 Jul 2001 20:56:09 +0000 (20:56 +0000)]
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.
Nathan Bryant [Sun, 29 Jul 2001 20:06:33 +0000 (20:06 +0000)]
generate symlinks to .libs in modules directory
Art Cancro [Sat, 28 Jul 2001 23:17:19 +0000 (23:17 +0000)]
* List processing happens in two passes (load list and run list)
Nathan Bryant [Sat, 28 Jul 2001 00:02:50 +0000 (00:02 +0000)]
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.
Nathan Bryant [Fri, 27 Jul 2001 20:45:44 +0000 (20:45 +0000)]
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
Nathan Bryant [Fri, 27 Jul 2001 03:59:08 +0000 (03:59 +0000)]
fix fix
Nathan Bryant [Fri, 27 Jul 2001 03:48:16 +0000 (03:48 +0000)]
*** empty log message ***
Nathan Bryant [Fri, 27 Jul 2001 03:31:38 +0000 (03:31 +0000)]
one more try
Nathan Bryant [Fri, 27 Jul 2001 03:29:04 +0000 (03:29 +0000)]
missed one thing in the autoconf move
Nathan Bryant [Fri, 27 Jul 2001 02:57:43 +0000 (02:57 +0000)]
support one cursor per database rather than one global cursor
Nathan Bryant [Fri, 27 Jul 2001 01:32:07 +0000 (01:32 +0000)]
remove the automatic transaction demarcation on singleton read operations
Nathan Bryant [Thu, 26 Jul 2001 21:43:46 +0000 (21:43 +0000)]
- move to autoconf 2.52
- random warning fix
- check for db 3.3
Art Cancro [Tue, 24 Jul 2001 13:17:55 +0000 (13:17 +0000)]
* New UI for mailing list setup
* rooms.c: code cleanup
* docs update
Nathan Bryant [Fri, 20 Jul 2001 23:48:23 +0000 (23:48 +0000)]
fix build on solaris, check default install location for db 3.2, and silence
gcc 3.0
Art Cancro [Wed, 18 Jul 2001 14:35:30 +0000 (14:35 +0000)]
* Silly change to internet_addressing() to handle NULL returned from
getpwuid() wihout crashing the server.
Art Cancro [Mon, 16 Jul 2001 14:30:28 +0000 (14:30 +0000)]
* housekeeping once every 60 seconds, not 1 second
Art Cancro [Mon, 16 Jul 2001 14:24:30 +0000 (14:24 +0000)]
* Silly cosmetic change to keep the wholist ordered by ascending session number
Art Cancro [Fri, 13 Jul 2001 00:01:37 +0000 (00:01 +0000)]
* Shuffled around some of the housekeeping loop code
Art Cancro [Wed, 11 Jul 2001 17:01:10 +0000 (17:01 +0000)]
* database_sleepycat.c: small changes to log messages
Nathan Bryant [Wed, 11 Jul 2001 04:35:40 +0000 (04:35 +0000)]
moved dret initialization in cdb_fetch, just in case
Art Cancro [Tue, 3 Jul 2001 03:07:09 +0000 (03:07 +0000)]
* THIS IS 5.80
Art Cancro [Tue, 3 Jul 2001 03:06:52 +0000 (03:06 +0000)]
* Last minute doco update for 5.80
Nathan Bryant [Sun, 1 Jul 2001 15:44:32 +0000 (15:44 +0000)]
configure.in: check for Berkeley DB first.
Art Cancro [Thu, 28 Jun 2001 15:05:35 +0000 (15:05 +0000)]
* tag for 3.01
Art Cancro [Thu, 28 Jun 2001 15:05:18 +0000 (15:05 +0000)]
* 3.01
Art Cancro [Thu, 28 Jun 2001 15:03:49 +0000 (15:03 +0000)]
* Every generated page now includes a meta tag to disable evil "smart tags"
(see http://smarttags.manilasites.com/ for more information)
Art Cancro [Thu, 28 Jun 2001 02:39:54 +0000 (02:39 +0000)]
* Placated users who whine about privacy policy by adding MESG ROOMACCESS to
the screen where you can create a room...
Art Cancro [Wed, 27 Jun 2001 23:36:55 +0000 (23:36 +0000)]
* update
Art Cancro [Wed, 27 Jun 2001 23:34:30 +0000 (23:34 +0000)]
* Added some verbage to messages/roomaccess to placate a user who keeps
bitching about privacy policy.
Art Cancro [Wed, 27 Jun 2001 06:24:07 +0000 (06:24 +0000)]
* Tagged everything as Version 3.00
Art Cancro [Wed, 27 Jun 2001 06:22:49 +0000 (06:22 +0000)]
* Updated docs for the 3.00 release
Art Cancro [Wed, 27 Jun 2001 06:16:02 +0000 (06:16 +0000)]
* Correct generated window name in pop up pages
* Added handling of MIME inline images (not tested)
Art Cancro [Fri, 22 Jun 2001 17:58:20 +0000 (17:58 +0000)]
* A few performance and tuning cleanups. Increased the size of the socket
queue length to 100 for use on big systems. Also, during startup, the
initial startup thread now exits after creating the worker threads, instead
of becoming a worker thread itself. For some reason Solaris had problems
with the latter method.
Art Cancro [Tue, 19 Jun 2001 03:41:04 +0000 (03:41 +0000)]
* Ooops... last_cull needs to be declared static
Art Cancro [Tue, 19 Jun 2001 03:33:19 +0000 (03:33 +0000)]
* 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.
Art Cancro [Tue, 19 Jun 2001 00:17:18 +0000 (00:17 +0000)]
* dont decode mime
Nathan Bryant [Sun, 17 Jun 2001 19:42:24 +0000 (19:42 +0000)]
fix all the <time.h> vs. <sys/time.h> issues, hopefully
Brian [Wed, 13 Jun 2001 15:06:44 +0000 (15:06 +0000)]
* Added distfiles for FreeBSD. To create a FreeBSD package, do this:
make install
(cd distfiles/FreeBSD; pkg_create -c COMMENT -d DETAILS -f FILES libCxClient-0.xx; mv libCx*tgz ../..)
Brian [Tue, 12 Jun 2001 14:47:29 +0000 (14:47 +0000)]
* Updated release version in configure.in (we're 0.10 now!!)
Brian [Tue, 12 Jun 2001 14:34:06 +0000 (14:34 +0000)]
* Fixed sample client code to shut down _correctly_. (...Rather than just
quit without free()ing memory...)
Brian [Tue, 12 Jun 2001 11:48:54 +0000 (11:48 +0000)]
* Working on cleaning up code. There were LOTS of missing free() calls.
Boy, was I lazy... :)
This library is MUCH more stable than it was at 0.59-RELEASE checkpoint,
but it still has a few leaky issues. I'm still working on fixing it.
Brian [Tue, 12 Jun 2001 11:47:44 +0000 (11:47 +0000)]
* Working on cleaning up code. There were LOTS of missing free() calls.
Boy, was I lazy... :)
This library is MUCH more stable than it was at 0.59-RELEASE checkpoint,
but it still has a few leaky issues. I'm still working on fixing it.
Art Cancro [Thu, 7 Jun 2001 04:36:07 +0000 (04:36 +0000)]
* First cut at downloading attachments throught the browser.
Art Cancro [Thu, 7 Jun 2001 03:28:37 +0000 (03:28 +0000)]
* More tweaks to the MIME parser
Art Cancro [Thu, 7 Jun 2001 03:16:57 +0000 (03:16 +0000)]
* Brought over an updated mime parser from Citadel
Art Cancro [Wed, 6 Jun 2001 15:44:37 +0000 (15:44 +0000)]
* msgbase.c: output extra newline at end of RFC822 message if necessary to
ensure that 000 termination string appears on a line by itself.
Art Cancro [Wed, 6 Jun 2001 14:44:25 +0000 (14:44 +0000)]
* mime_parser.c: #include <pthread.h> so it compiles cleanly
Art Cancro [Wed, 6 Jun 2001 04:27:07 +0000 (04:27 +0000)]
* fix a bug
Art Cancro [Wed, 6 Jun 2001 04:22:25 +0000 (04:22 +0000)]
* 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
Art Cancro [Thu, 31 May 2001 02:26:24 +0000 (02:26 +0000)]
* Fixed login to take you to the Lobby instead of the next room.
Art Cancro [Thu, 31 May 2001 02:21:47 +0000 (02:21 +0000)]
* more mime fix attempts
Art Cancro [Wed, 30 May 2001 22:37:09 +0000 (22:37 +0000)]
* Fix to upload handler to recognize browser uploads based on *either* a "name"
or a "filename" from the MIME parser.
Art Cancro [Wed, 30 May 2001 01:06:57 +0000 (01:06 +0000)]
* Changes to mime parser ... still something wrong
Art Cancro [Mon, 28 May 2001 19:27:31 +0000 (19:27 +0000)]
* Fixed bug which marked all messages in Lobby as old before reading at login
Art Cancro [Sun, 27 May 2001 05:23:03 +0000 (05:23 +0000)]
* Added a "no new messages" response in the client, displayed when a read
command turns up a zero message count.
Art Cancro [Fri, 25 May 2001 22:39:27 +0000 (22:39 +0000)]
* Brought over the new MIME parser from Citadel. WARNING: BROKEN BUILD!!
Art Cancro [Wed, 23 May 2001 16:15:25 +0000 (16:15 +0000)]
* UI changes (pretty frames with no scrollbars)
Art Cancro [Tue, 22 May 2001 00:32:18 +0000 (00:32 +0000)]
* cosmetics
Art Cancro [Tue, 22 May 2001 00:02:18 +0000 (00:02 +0000)]
* Another attempt to fix the fd leak
Art Cancro [Sat, 19 May 2001 02:21:40 +0000 (02:21 +0000)]
* Attempt to fix the dangling sockets.
Art Cancro [Fri, 18 May 2001 20:12:09 +0000 (20:12 +0000)]
* 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.
Art Cancro [Tue, 15 May 2001 03:22:27 +0000 (03:22 +0000)]
* More icon updates and link cleanup type stuff
Brian [Mon, 14 May 2001 17:59:18 +0000 (17:59 +0000)]
* Added quick installation notes.
Brian [Mon, 14 May 2001 14:01:23 +0000 (14:01 +0000)]
* Added multi-connection support. libCxClient can now handle
multiple concurrent connections to different Citadel servers.
This, unfortunately, required a change in the development API.
Please examine the source in src/newtest.c for an example
of how to use the new API.
* Fixed some bugs in the transport layer.
* No new features that I can think of, but there may be some...
Art Cancro [Sun, 6 May 2001 05:11:50 +0000 (05:11 +0000)]
* Added paging icon and right-justified it
* Send-page window is now a popup
Art Cancro [Fri, 4 May 2001 04:28:10 +0000 (04:28 +0000)]
* Added "page user" button in wholist
Art Cancro [Tue, 1 May 2001 00:49:45 +0000 (00:49 +0000)]
* more of the UI overhaul