Ok, here is a corrected version... with some spots cleaned up
a little bit, \n's in printf's and the like, too.
Aaron
On Sun, 9 Feb 2003, Aaron Stone wrote:
> Looks like user.c has a double-up db_connect(). FYI!
>
> Aaron
>
>
> On Sun, 9 Feb 2003, Aaron Stone wrote:
>
> > Here ya go :-)
> >
> > Aaron
> >
> >
> > On Sat, 8 Feb 2003, Roel Rozendaal - IC&S wrote:
> >
> > > As long as it works safely i certainly don't mind including those
> > > calls. A patch would be very nice :-)
> > >
> > > regards roel
> > >
> > > Aaron Stone heeft op zaterdag, 8 feb 2003 om 06:06 (Europe/Amsterdam)
> > > het volgende geschreven:
> > >
> > > > Roel,
> > > >
> > > > Would you consider also including my changes to auth_connect() so that
> > > > it
> > > > can be safely called alongside every db_connect() call without wasting
> > > > a
> > > > database connection? If you specifically want it as a patch I can...
> > > >
> > > > Aaron
> > > >
> > > >
> > > > On Fri, 7 Feb 2003, Roel Rozendaal - IC&S wrote:
> > > >
> > > >> Hi all,
> > > >>
> > > >> could some of you verify the autoconf now in CVS? If it works
> > > >> correctly
> > > >> we'll submit dbmail-1.1 :-)
> > > >>
> > > >> Ulrich: i've applied your patches (4 feb 2003) for freebsd compiling -
> > > >> could you check wheter current cvs works immediately?
> > > >>
> > > >> regards roel
> > > >>
> > > >> Met vriendelijke groet,
> > > >>
> > > >>
> > > >> Roel Rozendaal
> > > >>
> > > >>
> > > >> _________________________
> > > >> R.A. Rozendaal
> > > >> ICT Manager
> > > >> IC&S
> > > >> T: +31 30 2322878
> > > >> F: +31 30 2322305
> > > >> www.ic-s.nl
> > > >>
> > > >> _______________________________________________
> > > >> Dbmail mailing list
> > > >> [email protected]
> > > >> https://mailman.fastxs.nl/mailman/listinfo/dbmail
> > > >>
> > > >
> > > > _______________________________________________
> > > > Dbmail mailing list
> > > > [email protected]
> > > > https://mailman.fastxs.nl/mailman/listinfo/dbmail
> > > >
> > > Met vriendelijke groet,
> > >
> > >
> > > Roel Rozendaal
> > >
> > >
> > > _________________________
> > > R.A. Rozendaal
> > > ICT Manager
> > > IC&S
> > > T: +31 30 2322878
> > > F: +31 30 2322305
> > > www.ic-s.nl
> > >
> > > _______________________________________________
> > > Dbmail mailing list
> > > [email protected]
> > > https://mailman.fastxs.nl/mailman/listinfo/dbmail
> > >
> >
>
> _______________________________________________
> Dbmail mailing list
> [email protected]
> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>
diff -cr dbmail/injector.c dbmail-auth/injector.c
*** dbmail/injector.c 2002-06-14 06:19:39.000000000 -0700
--- dbmail-auth/injector.c 2003-02-09 12:01:45.000000000 -0800
***************
*** 78,87 ****
return 0;
}
! /* open dbase connections */
! if (db_connect() != 0 || auth_connect() != 0)
{
! trace(TRACE_FATAL,"main(): could not connect to dbases");
return -1;
}
--- 78,94 ----
return 0;
}
! /* open database connection */
! if (db_connect() != 0)
{
! printf("Error opening database connection\n");
! return -1;
! }
!
! /* open authentication connection */
! if (auth_connect() != 0)
! {
! printf("Error opening authentication connection\n");
return -1;
}
diff -cr dbmail/main.c dbmail-auth/main.c
*** dbmail/main.c 2002-12-28 08:57:04.000000000 -0800
--- dbmail-auth/main.c 2003-02-09 12:04:25.000000000 -0800
***************
*** 66,74 ****
SetTraceLevel(&smtpItems);
GetDBParams(_db_host, _db_db, _db_user, _db_pass, &sysItems);
! if (db_connect() < 0)
trace(TRACE_FATAL,"main(): database connection failed");
list_init(&users);
list_init(&mimelist);
--- 66,77 ----
SetTraceLevel(&smtpItems);
GetDBParams(_db_host, _db_db, _db_user, _db_pass, &sysItems);
! if (db_connect() != 0)
trace(TRACE_FATAL,"main(): database connection failed");
+ if (auth_connect() != 0)
+ trace(TRACE_FATAL,"main(): authentication connection failed");
+
list_init(&users);
list_init(&mimelist);
diff -cr dbmail/maintenance.c dbmail-auth/maintenance.c
*** dbmail/maintenance.c 2002-12-28 11:07:14.000000000 -0800
--- dbmail-auth/maintenance.c 2003-02-09 12:05:08.000000000 -0800
***************
*** 141,149 ****
return 0;
}
! printf ("Opening connection to the database... ");
! if (db_connect()==-1)
{
printf ("Failed. An error occured. Please check log.\n");
return -1;
--- 141,155 ----
return 0;
}
! printf ("Opening connection to database... ");
! if (db_connect() != 0)
! {
! printf ("Failed. An error occured. Please check log.\n");
! return -1;
! }
! printf ("Opening connection to authentication... ");
! if (auth_connect() != 0)
{
printf ("Failed. An error occured. Please check log.\n");
return -1;
diff -cr dbmail/mini-injector.c dbmail-auth/mini-injector.c
*** dbmail/mini-injector.c 2002-05-22 08:53:01.000000000 -0700
--- dbmail-auth/mini-injector.c 2003-02-09 12:06:38.000000000 -0800
***************
*** 41,50 ****
openlog(PNAME, LOG_PID, LOG_MAIL); /* open connection to syslog */
configure_debug(TRACE_ERROR, 1, 0); /* do not spill time on reading
settings */
! /* open dbase connections */
if (db_connect() != 0)
{
! trace(TRACE_FATAL,"main(): could not connect to dbase");
return -1;
}
--- 41,57 ----
openlog(PNAME, LOG_PID, LOG_MAIL); /* open connection to syslog */
configure_debug(TRACE_ERROR, 1, 0); /* do not spill time on reading
settings */
! /* open database connections */
if (db_connect() != 0)
{
! trace(TRACE_FATAL,"main(): could not connect to database");
! return -1;
! }
!
! /* open authentication connections */
! if (auth_connect() != 0)
! {
! trace(TRACE_FATAL,"main(): could not connect to authentication");
return -1;
}
diff -cr dbmail/mysql/dbauthmysql.c dbmail-auth/mysql/dbauthmysql.c
*** dbmail/mysql/dbauthmysql.c 2003-02-07 20:58:15.000000000 -0800
--- dbmail-auth/mysql/dbauthmysql.c 2003-02-09 11:53:44.000000000 -0800
***************
*** 52,57 ****
--- 52,58 ----
*/
int auth_connect()
{
+ #ifndef DBMAIL_USE_SAME_CONNECTION
mysql_init(&__auth_conn);
if (mysql_real_connect (&__auth_conn, _auth_host, _auth_user, _auth_pass,
_auth_db, 0, NULL, 0) == NULL)
{
***************
*** 59,72 ****
mysql_error(&__auth_conn));
return -1;
}
!
return 0;
}
int auth_disconnect()
{
mysql_close(&__auth_conn);
return 0;
}
--- 60,75 ----
mysql_error(&__auth_conn));
return -1;
}
! #endif
return 0;
}
int auth_disconnect()
{
+ #ifndef DBMAIL_USE_SAME_CONNECTION
mysql_close(&__auth_conn);
+ #endif
return 0;
}
diff -cr dbmail/pgsql/dbauthpgsql.c dbmail-auth/pgsql/dbauthpgsql.c
*** dbmail/pgsql/dbauthpgsql.c 2003-02-07 20:58:15.000000000 -0800
--- dbmail-auth/pgsql/dbauthpgsql.c 2003-02-09 11:54:35.000000000 -0800
***************
*** 51,56 ****
--- 51,57 ----
*/
int auth_connect ()
{
+ #ifndef DBMAIL_USE_SAME_CONNECTION
char connectionstring[255];
/* connecting */
***************
*** 64,70 ****
trace(TRACE_ERROR,"auth_connect(): PQconnectdb failed:
%s",PQerrorMessage(__auth_conn));
return -1;
}
!
/* database connection OK */
return 0;
}
--- 65,71 ----
trace(TRACE_ERROR,"auth_connect(): PQconnectdb failed:
%s",PQerrorMessage(__auth_conn));
return -1;
}
! #endif
/* database connection OK */
return 0;
}
***************
*** 72,78 ****
--- 73,81 ----
int auth_disconnect()
{
+ #ifndef DBMAIL_USE_SAME_CONNECTION
PQfinish(__auth_conn);
+ #endif
return 0;
}
diff -cr dbmail/raw-convert.c dbmail-auth/raw-convert.c
*** dbmail/raw-convert.c 2002-05-30 11:43:26.000000000 -0700
--- dbmail-auth/raw-convert.c 2003-02-09 12:07:16.000000000 -0800
***************
*** 148,157 ****
printf("Inserting into dbase...");
fflush(stdout);
! /* open dbase connections */
if (db_connect() != 0)
{
! printf("Error opening dbase connections\n");
return -1;
}
--- 148,164 ----
printf("Inserting into dbase...");
fflush(stdout);
! /* open database connections */
if (db_connect() != 0)
{
! printf("Error opening database connection\n");
! return -1;
! }
!
! /* open authentication connections */
! if (auth_connect() != 0)
! {
! printf("Error opening authentication connection\n");
return -1;
}
diff -cr dbmail/serverchild.c dbmail-auth/serverchild.c
*** dbmail/serverchild.c 2002-12-13 03:05:15.000000000 -0800
--- dbmail-auth/serverchild.c 2003-02-09 12:07:34.000000000 -0800
***************
*** 234,245 ****
return -1;
}
! if ( db_connect() != 0)
{
trace(TRACE_ERROR, "PerformChildTask(): could not connect to database");
return -1;
}
connected = 1;
for (i=0; i<info->maxConnect && !ChildStopRequested; i++)
--- 234,251 ----
return -1;
}
! if (db_connect() != 0)
{
trace(TRACE_ERROR, "PerformChildTask(): could not connect to database");
return -1;
}
+ if (auth_connect() != 0)
+ {
+ trace(TRACE_ERROR, "PerformChildTask(): could not connect to
authentication");
+ return -1;
+ }
+
connected = 1;
for (i=0; i<info->maxConnect && !ChildStopRequested; i++)
diff -cr dbmail/settings.c dbmail-auth/settings.c
*** dbmail/settings.c 2002-12-03 07:05:56.000000000 -0800
--- dbmail-auth/settings.c 2003-02-09 12:08:04.000000000 -0800
***************
*** 30,41 ****
fname = argv[1];
}
! if (db_connect()==-1)
{
printf ("Could not connect to database.\n");
return -1;
}
printf("reading configuration for %s...\n", fname);
configfile = fopen(fname,"r"); /* open the configuration file */
if (configfile == NULL) /* error test */
--- 30,47 ----
fname = argv[1];
}
! if (db_connect() != 0)
{
printf ("Could not connect to database.\n");
return -1;
}
+ if (auth_connect() != 0)
+ {
+ printf ("Could not connect to authentication.\n");
+ return -1;
+ }
+
printf("reading configuration for %s...\n", fname);
configfile = fopen(fname,"r"); /* open the configuration file */
if (configfile == NULL) /* error test */
diff -cr dbmail/smtp-convert.c dbmail-auth/smtp-convert.c
*** dbmail/smtp-convert.c 2002-12-03 07:18:47.000000000 -0800
--- dbmail-auth/smtp-convert.c 2003-02-09 11:59:18.000000000 -0800
***************
*** 46,58 ****
openlog(PNAME, LOG_PID, LOG_MAIL); /* open connection to syslog */
configure_debug(TRACE_ERROR, 1, 0);
! /* open dbase connections */
! if (db_connect() != 0 || auth_connect() != 0)
{
! printf("Error opening dbase connections\n");
return -1;
}
time (&start); /* mark the starting time */
result = traverse (argv[1]);
--- 46,64 ----
openlog(PNAME, LOG_PID, LOG_MAIL); /* open connection to syslog */
configure_debug(TRACE_ERROR, 1, 0);
! /* open database connection */
! if (db_connect() != 0)
{
! printf("Error opening database connection\n");
return -1;
}
+ /* open authentication connection */
+ if (auth_connect() != 0)
+ {
+ printf("Error opening authentication connection\n");
+ return -1;
+ }
time (&start); /* mark the starting time */
result = traverse (argv[1]);
diff -cr dbmail/user.c dbmail-auth/user.c
*** dbmail/user.c 2003-02-07 20:58:15.000000000 -0800
--- dbmail-auth/user.c 2003-02-09 13:58:20.000000000 -0800
***************
*** 93,113 ****
quiet_printf ("\n*** dbmail-adduser ***\n");
! quiet_printf ("Opening connection to the database... ");
! if (db_connect()==-1)
{
quiet_printf ("Failed. Could not connect to database (check log)\n");
return -1;
}
!
! /* quiet_printf ("Opening connection to the user database... ");
! if (auth_connect()==-1)
{
! quiet_printf ("Failed. Could not connect to user database (check
log)\n");
! db_disconnect();
return -1;
}
- */
quiet_printf ("Ok. Connected\n");
configure_debug(TRACE_ERROR, 1, 0);
--- 93,113 ----
quiet_printf ("\n*** dbmail-adduser ***\n");
! /* open database connection */
! quiet_printf ("Opening connection to database...\n");
! if (db_connect() != 0)
{
quiet_printf ("Failed. Could not connect to database (check log)\n");
return -1;
}
!
! /* open authentication connection */
! quiet_printf ("Opening connection to authentication...\n");
! if (auth_connect() != 0)
{
! quiet_printf ("Failed. Could not connect to authentication (check
log)\n");
return -1;
}
quiet_printf ("Ok. Connected\n");
configure_debug(TRACE_ERROR, 1, 0);
diff -cr dbmail/vut2dbmail.c dbmail-auth/vut2dbmail.c
*** dbmail/vut2dbmail.c 2002-05-09 05:15:48.000000000 -0700
--- dbmail-auth/vut2dbmail.c 2003-02-09 12:02:50.000000000 -0800
***************
*** 23,37 ****
int i,result;
char *left, *right, *tmp;
! if (db_connect() == -1)
{
! fprintf(stderr, "Could not connect to dbase server\n");
return 1;
}
! if (auth_connect() == -1)
{
! fprintf(stderr, "Could not connect to authentication server\n");
db_disconnect();
return 1;
}
--- 23,37 ----
int i,result;
char *left, *right, *tmp;
! if (db_connect() != 0)
{
! fprintf(stderr, "Could not connect to database\n");
return 1;
}
! if (auth_connect() != 0)
{
! fprintf(stderr, "Could not connect to authentication\n");
db_disconnect();
return 1;
}