From e0e922c53d16a790f05e70c1d772170f80cea835 Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Wed, 13 Apr 2005 17:03:07 +0000 Subject: [PATCH] * 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 --- citadel/ChangeLog | 6 +++++- citadel/citmail.c | 25 +++++++++++++++++++------ citadel/database_sleepycat.c | 27 ++------------------------- 3 files changed, 26 insertions(+), 32 deletions(-) diff --git a/citadel/ChangeLog b/citadel/ChangeLog index 10b69d585..ee0b43eea 100644 --- a/citadel/ChangeLog +++ b/citadel/ChangeLog @@ -1,4 +1,9 @@ $Log$ + Revision 645.3 2005/04/13 17:03:07 ajc + * 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 + Revision 645.2 2005/04/12 21:19:52 ajc * 'make install' now installs citadel-openldap.schema @@ -6586,4 +6591,3 @@ Sat Jul 11 00:20:48 EDT 1998 Nathan Bryant Fri Jul 10 1998 Art Cancro * Initial CVS import - diff --git a/citadel/citmail.c b/citadel/citmail.c index d657e9e88..e51428187 100644 --- a/citadel/citmail.c +++ b/citadel/citmail.c @@ -171,15 +171,24 @@ int main(int argc, char **argv) { char buf[1024]; char fromline[1024]; FILE *fp; + int i; + struct passwd *pw; get_config(); + pw = getpwuid(getuid()); + fp = tmpfile(); if (fp == NULL) return(errno); - snprintf(fromline, sizeof fromline, "From: someone@somewhere.org"); + snprintf(fromline, sizeof fromline, "From: %s@%s", + pw->pw_name, + config.c_fqdn + ); while (fgets(buf, 1024, stdin) != NULL) { fprintf(fp, "%s", buf); - if (!strncasecmp(buf, "From:", 5)) strcpy(fromline, buf); + if (!strncasecmp(buf, "From:", 5)) { + strcpy(fromline, buf); + } } strip_trailing_nonprint(fromline); @@ -199,10 +208,14 @@ int main(int argc, char **argv) { serv_gets(buf); if (buf[0]!='2') cleanup(1); - snprintf(buf, sizeof buf, "RCPT To: %s", argv[1]); - serv_puts(buf); - serv_gets(buf); - if (buf[0]!='2') cleanup(1); + for (i=1; iset_data_dir(dbenv, dbdirname))) { - lprintf(CTDL_EMERG, "cdb_*: set_data_dir: %s\n", db_strerror(ret)); - dbenv->close(dbenv, 0); - exit(ret); - } - - if ((ret = dbenv->set_lg_dir(dbenv, dblogname))) { - lprintf(CTDL_EMERG, "cdb_*: set_lg_dir: %s\n", db_strerror(ret)); - dbenv->close(dbenv, 0); - exit(ret); - } - flags = DB_CREATE|DB_RECOVER|DB_INIT_MPOOL|DB_PRIVATE|DB_INIT_TXN| DB_INIT_LOCK|DB_THREAD; - lprintf(CTDL_DEBUG, "dbenv->open(dbenv, NULL, %d, 0)\n", flags); - ret = dbenv->open(dbenv, NULL, flags, 0); + lprintf(CTDL_DEBUG, "dbenv->open(dbenv, %s, %d, 0)\n", dbdirname, flags); + ret = dbenv->open(dbenv, dbdirname, flags, 0); if (ret) { lprintf(CTDL_DEBUG, "cdb_*: dbenv->open: %s\n", db_strerror(ret)); dbenv->close(dbenv, 0); -- 2.39.2