Art Cancro [Mon, 13 May 2002 04:35:50 +0000 (04:35 +0000)]
* usergoto() can now be supplied a NULL room name to signify that the caller
has already copied the quickroom record into CC->quickroom. Eliminates
an extra database fetch.
* NewMailCount() now uses a per-session counter, which is incremented
by CtdlSubmitMsg() when the user receiving a message is logged in at the
time the message is saved. This eliminates the need to load and scan the
user's mailbox every time a <G>oto operation is performed.
* The old NewMailCount() function is now InitialMailCheck() and is used at
session startup time.
Art Cancro [Sun, 12 May 2002 22:57:06 +0000 (22:57 +0000)]
* Removed the unfinished moderation system.
* CtdlForEachMessage() - only fetch metadata when hunting for messages with
a specified Content-type. Serious performance boost.
Art Cancro [Tue, 30 Apr 2002 03:13:59 +0000 (03:13 +0000)]
* When sending a page that results in the receiver's Sent/Received Pages>
room to be created, don't automatically grant the sender access to that room.
* Added a parameter to create_room() to implement the above
Art Cancro [Wed, 17 Apr 2002 04:35:07 +0000 (04:35 +0000)]
* Finished the IMAP RENAME command. (I ended up using nested functions
because it made the task much, much easier. We can fix it later or convert
it to C++ if we find this becomes a problem.)
Art Cancro [Sun, 14 Apr 2002 22:11:22 +0000 (22:11 +0000)]
* New back end function CtdlRenameRoom() which is used to rename a room and/or
move it to a different floor.
* cmd_setr() now uses CtdlRenameRoom() to do part of its work
Nathan Bryant [Tue, 26 Mar 2002 05:58:35 +0000 (05:58 +0000)]
don't check for a database driver until after the openssl check is
complete. if the ld paths aren't set up for the db installation this
can interfere with the openssl check because it tries to run a program
linked against the libraries we've been finding.
Nathan Bryant [Tue, 26 Mar 2002 04:38:32 +0000 (04:38 +0000)]
* support autoconf 2.53
* make a note that people should be using libtool 1.4d
* cut some of the more pointless bells and whistles out of the configure
script in an effort to make it more maintainable
* modularized ipc_c_tcp.c and client_crypto.o so that they're not tied
to the curses stuff.
* timezone/daylight and other FreeBSD fixes
* more effort in the configure script to detect the common
bastardizations (ahem, ports) of Berkeley DB without falling down
Nathan Bryant [Mon, 25 Mar 2002 00:01:51 +0000 (00:01 +0000)]
* compatibility with Berkeley DB < 3.3
* squished symbol clashes with the OK symbol from curses in certain *n[iu]x
distributions. this is kind of a pain in the ass, but I had to rename our
OK to CIT_OK :-(
Nathan Bryant [Wed, 13 Mar 2002 03:34:38 +0000 (03:34 +0000)]
/* when running in curses mode, the scroll bar in most
xterm-style programs becomes useless, so it makes sense to
pause after a screenful of pages if the user has been idle
for a while. However, this is annoying to some of the users
who aren't in curses mode and tend to leave their clients
idle. keepalives become disabled, resulting in getting booted
when coming back to the idle session. but they probably have
a working scrollback in their terminal, so disable it in this
case:
*/
if (!is_curses_enabled())
lines_printed = 0;
Nathan Bryant [Tue, 12 Mar 2002 23:34:38 +0000 (23:34 +0000)]
use ncurses in preference to curses if it's installed; it handles
background colors properly on dtterm, has a larger color pair palette,
and has a bigger terminal database than solaris curses
Nathan Bryant [Tue, 12 Mar 2002 22:47:17 +0000 (22:47 +0000)]
curses fix: map our normal color pairs into the 0-7 range instead of 1-8,
in order to make our pairs fit on terminals such as dtterm where COLOR_PAIRS=8.
map the white/blue color pair onto 8 instead of 9, but only if that slot
is available; fall back on white/black otherwise.
it seems there may be an off-by-one error in the color pair manpages for
the various curses packages (?) if not, our 0 entry is unusable, but that's
the DIM_BLACK color and we don't use it anyway.
Nathan Bryant [Tue, 12 Mar 2002 04:30:53 +0000 (04:30 +0000)]
if a filesystem node exists at /var/run/egd-pool, try to connect to it as
the EGD (Entropy Gathering Daemon) or PRNGD (pseudorandom number
generator daemon) socket and seed OpenSSL's RNG.
this is necessary on solaris and other systems which lack /dev/urandom.
Nathan Bryant [Mon, 11 Mar 2002 06:00:21 +0000 (06:00 +0000)]
use <db.h> before <db3/db.h> or <db4/db.h>
this is the only way i can think of to make it work everywhere; people on
systems like FreeBSD where the ports work the other way around will have to
specify an extra -I flag in their CPPFLAGS variable.