Re: [vchkpw] auto create dir for spam email
The error message still exist after I installed qmailadmin-1.2.1 that download from http://qmailadmin.sf.net. I am sure that it is not caused by the cache of my brower. Will it caused by some special default setting of Mandrake ? Regards, Frankie On Mar 7, 2004, at 10:03 AM, Frankie Wong wrote: On Mar 7, 2004, at 5:04 AM, Frankie Wong wrote: After I success to set automatically add spam directory by qmailadmin-hooks, I try to set automatically delete any user.pref file in the data directory of squirrelmail when del user in qmailadmin. However , error message appears in qmailadmin when del user: Error 8 Where the parameters are: /home/vpopmail/bin/deletedata.sh, deluser, test, test.com.hk, , Content-Type: text/htm My version is the updated one (1.2.1). Is there any setting I should highlight ? Regards, Frankie If you get that error message, then you aren't running 1.2.1. Find your qmailadmin binary (in the cgi-bin directory) and delete it. In your web browser, go to the qmailadmin URL and make sure you get a page not found error. Now, make and install 1.2.1. That error string was removed during the 1.2.0 pre-releases. And yes, you can use 1.2.1 instead of 1.2.0. -- Tom Collins - [EMAIL PROTECTED] QmailAdmin: http://qmailadmin.sf.net/ Vpopmail: http://vpopmail.sf.net/ Info on the Sniffter hand-held Network Tester: http://sniffter.com/
[vchkpw] vpopmail 5.4.2 - make error `DOMAINS_DIR' undeclared (first use in this function)
Hi List Members, I tried upgrading from vpopmail-5.3.30 to vpopmail-5.4.2 on RedHat-7.3 with following configure options: ./configure \ --enable-roaming-users=n \ [EMAIL PROTECTED] \ --enable-logging=p \ --enable-ip-alias-domains=n \ --enable-passwd=n \ --enable-clear-passwd=y \ --enable-auth-module=mysql \ --enable-incdir=/usr/include/mysql \ --enable-libdir=/usr/lib/mysql \ --enable-many-domains=y \ --enable-auth-logging=y \ --enable-mysql-logging=y \ --enable-valias=y \ --enable-mysql-limits=n Got Configured Okay, but on make I got the following errors (even I upgraded the autoconf version): [EMAIL PROTECTED] vpopmail-5.4.2]# make cd . /bin/sh /usr/local/src/vpopmail-5.4.2/missing --run autoheader FATAL ERROR: Autoconf version 2.52 or higher is required for this script touch ./config.h.in cd . /bin/sh ./config.status config.h config.status: creating config.h make all-recursive make[1]: Entering directory `/usr/local/src/vpopmail-5.4.2' Making all in cdb make[2]: Entering directory `/usr/local/src/vpopmail-5.4.2/cdb' ( cat warn-auto.sh; \ echo CC=\'`head -1 conf-cc`\'; \ echo LD=\'`head -1 conf-ld`\'; \ cat find-systype.sh; \ ) | sh systype ( cat warn-auto.sh; \ echo 'main=$1; shift'; \ echo 'rm -f $main'; \ echo 'ar cr $main ${1+$@}'; \ case `cat systype` in \ sunos-5.*) ;; \ unix_sv*) ;; \ irix64-*) ;; \ irix-*) ;; \ dgux-*) ;; \ hp-ux-*) ;; \ sco*) ;; \ *) echo 'ranlib $main' ;; \ esac \ ) makelib chmod 755 makelib ( cat warn-auto.sh; \ echo exec `head -1 conf-cc` '-c ${1+$@}' \ ) compile chmod 755 compile ( cat warn-auto.sh; \ echo 'main=$1; shift'; \ echo exec `head -1 conf-ld` \ '-o $main $main.o ${1+$@}' \ ) load chmod 755 load ( ( ./compile tryulong32.c ./load tryulong32 \ ./tryulong32 ) /dev/null 21 \ cat uint32.h2 || cat uint32.h1 ) uint32.h rm -f tryulong32.o tryulong32 ./compile cdb_hash.c ./compile cdb_unpack.c ./compile cdb_seek.c ./makelib cdb.a cdb_hash.o cdb_unpack.o cdb_seek.o ./compile cdbmake_pack.c ./compile cdbmake_hash.c ./compile cdbmake_add.c ./makelib cdbmake.a cdbmake_pack.o cdbmake_hash.o \ cdbmake_add.o make[2]: Leaving directory `/usr/local/src/vpopmail-5.4.2/cdb' make[2]: Entering directory `/usr/local/src/vpopmail-5.4.2' gcc -I. -I/usr/include/mysql -I. -I. -I. -g -O2 -Wall -c `test -f 'vpopmail.c' || echo './'`vpopmail.c vpopmail.c: In function `vadddomain': vpopmail.c:134: `DOMAINS_DIR' undeclared (first use in this function) vpopmail.c:134: (Each undeclared identifier is reported only once vpopmail.c:134: for each function it appears in.) vpopmail.c:213: `VPOPMAILDIR' undeclared (first use in this function) vpopmail.c: In function `vadduser': vpopmail.c:442: `VPOPMAILUID' undeclared (first use in this function) vpopmail.c:443: `VPOPMAILGID' undeclared (first use in this function) vpopmail.c: In function `add_domain_assign': vpopmail.c:774: `QMAILDIR' undeclared (first use in this function) vpopmail.c: In function `del_control': vpopmail.c:869: `QMAILDIR' undeclared (first use in this function) vpopmail.c: In function `del_domain_assign': vpopmail.c:962: `QMAILDIR' undeclared (first use in this function) vpopmail.c: In function `signal_process': vpopmail.c:1191: `PS_COMMAND' undeclared (first use in this function) vpopmail.c: In function `update_newu': vpopmail.c:1241: `QMAILNEWU' undeclared (first use in this function) vpopmail.c: In function `count_rcpthosts': vpopmail.c:1592: `QMAILDIR' undeclared (first use in this function) vpopmail.c: In function `compile_morercpthosts': vpopmail.c:1615: `QMAILNEWMRH' undeclared (first use in this function) vpopmail.c: In function `default_domain': vpopmail.c:1866: `VPOPMAILDIR' undeclared (first use in this function) vpopmail.c: In function `verror': vpopmail.c:2020: parse error before `DOMAINS_DIR' vpopmail.c:2022: parse error before `DOMAINS_DIR' vpopmail.c:2042: parse error before `DOMAINS_DIR' vpopmail.c: In function `vget_assign': vpopmail.c:2225: `QMAILDIR' undeclared (first use in this function) vpopmail.c: In function `maildir_to_email': vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3108: parse error before `DOMAINS_DIR' vpopmail.c:3110: warning: control reaches end of non-void function vpopmail.c: At top level: vpopmail.c:3114: warning: type defaults to `int' in declaration of `pnt' vpopmail.c:3114: `last' undeclared here (not in a function) vpopmail.c:3114: `DOMAINS_DIR' undeclared here (not in a function) vpopmail.c:3114: warning: data definition has no type or storage class vpopmail.c:3115: parse error before
Re: [vchkpw] auto create dir for spam email
Sorry, it is caused by a blank line at the beginning of script file. Best Regards, Frankie The error message still exist after I installed qmailadmin-1.2.1 that download from http://qmailadmin.sf.net. I am sure that it is not caused by the cache of my brower. Will it caused by some special default setting of Mandrake ? Regards, Frankie On Mar 7, 2004, at 10:03 AM, Frankie Wong wrote: On Mar 7, 2004, at 5:04 AM, Frankie Wong wrote: After I success to set automatically add spam directory by qmailadmin-hooks, I try to set automatically delete any user.pref file in the data directory of squirrelmail when del user in qmailadmin. However , error message appears in qmailadmin when del user: Error 8 Where the parameters are: /home/vpopmail/bin/deletedata.sh, deluser, test, test.com.hk, , Content-Type: text/htm My version is the updated one (1.2.1). Is there any setting I should highlight ? Regards, Frankie If you get that error message, then you aren't running 1.2.1. Find your qmailadmin binary (in the cgi-bin directory) and delete it. In your web browser, go to the qmailadmin URL and make sure you get a page not found error. Now, make and install 1.2.1. That error string was removed during the 1.2.0 pre-releases. And yes, you can use 1.2.1 instead of 1.2.0. -- Tom Collins - [EMAIL PROTECTED] QmailAdmin: http://qmailadmin.sf.net/ Vpopmail: http://vpopmail.sf.net/ Info on the Sniffter hand-held Network Tester: http://sniffter.com/
RE: [vchkpw] Have I screwed myself?
Alright, thanks. Does anyone else know how I can migrate from what Ive got now to vpopmail? Also, hows this going to work with any SMTP AUTH patch? Thanks, Chris Miller Compuville www.compuville.net From: Shane Chrisp [mailto:[EMAIL PROTECTED] Sent: Sunday, March 07, 2004 9:45 PM To: [EMAIL PROTECTED] Subject: RE: [vchkpw] Have I screwed myself? Yes if you use vpopmail + the chkusr patch, you can prevent those messages from ever reaching the queue of your mail server. Im not familiair with a qmail + Checkpassword with the MySQL patch setup, so you may need to recompile qmail to get it all working nicely. See a few of the howto documents like http://www.pipeline.com.au/staff/mbowe/isp/webmail-server.htmor http://www.shupp.org just to name 2 of the many howto's that are out there. Shane From: Chris Miller [mailto:[EMAIL PROTECTED] Sent: Monday, 8 March 2004 4:14 AM To: [EMAIL PROTECTED] Subject: [vchkpw] Have I screwed myself? Simple question: Have I screwed myself, and is it going to be possible to setup true multi domain hosting coming from what I have? My current setup is qmail + Checkpassword with the MySQL patch (from http://iain.cx/qmail/mysql/). It works great, but there is a major flaw with it. Lets say I setup an account to be [EMAIL PROTECTED] and another at [EMAIL PROTECTED]. If I send mail to [EMAIL PROTECTED] or [EMAIL PROTECTED], it will get to their mailbox. It should bounce, but it does not that is BAD. By using vchkpw, would that solve my problem? But how do I go about moving my current accounts in MySQL to work with the new schema of vchkpw? Also, is moving to vchkpw going to break my SMTP AUTH patch that I also use? Thanks, Chris Miller Compuville www.compuville.net
Re: [vchkpw] vpopmail 5.4.2 - make error `DOMAINS_DIR' undeclared (first use in this function)
On Mar 8, 2004, at 3:06 AM, Devendra Singh wrote: Got Configured Okay, but on make I got the following errors (even I upgraded the autoconf version): You may need to upgrade to the autoconf from RH8.0. It will work fine with RH7.3, and shouldn't have any other dependencies to resolve. Or, try running `touch *` in the source directory before running make. That might keep it from trying to rebuild any of the build files. -- Tom Collins - [EMAIL PROTECTED] QmailAdmin: http://qmailadmin.sf.net/ Vpopmail: http://vpopmail.sf.net/ Info on the Sniffter hand-held Network Tester: http://sniffter.com/
RE: [vchkpw] Have I screwed myself?
We used the toaster at shupp.org with the chkuser.mysql patch (see his home page) and vpopmail modified for mysql auth and it works great. At 06:40 AM 3/8/2004, you wrote: Alright, thanks. Does anyone else know how I can migrate from what Ive got now to vpopmail? Also, hows this going to work with any SMTP AUTH patch? Thanks, Chris Miller Compuville http://www.compuville.netwww.compuville.net -- From: Shane Chrisp [mailto:[EMAIL PROTECTED] Sent: Sunday, March 07, 2004 9:45 PM To: [EMAIL PROTECTED] Subject: RE: [vchkpw] Have I screwed myself? Yes if you use vpopmail + the chkusr patch, you can prevent those messages from ever reaching the queue of your mail server. Im not familiair with a qmail + Checkpassword with the MySQL patch setup, so you may need to recompile qmail to get it all working nicely. See a few of the howto documents like http://www.pipeline.com.au/staff/mbowe/isp/webmail-server.htmhttp://www.pipeline.com.au/staff/mbowe/isp/webmail-server.htm or http://www.shupp.orghttp://www.shupp.org just to name 2 of the many howto's that are out there. Shane -- From: Chris Miller [mailto:[EMAIL PROTECTED] Sent: Monday, 8 March 2004 4:14 AM To: [EMAIL PROTECTED] Subject: [vchkpw] Have I screwed myself? Simple question: Have I screwed myself, and is it going to be possible to setup true multi domain hosting coming from what I have? My current setup is qmail + Checkpassword with the MySQL patch (from http://iain.cx/qmail/mysql/http://iain.cx/qmail/mysql/). It works great, but there is a major flaw with it. Lets say I setup an account to be mailto:[EMAIL PROTECTED][EMAIL PROTECTED] and another at mailto:[EMAIL PROTECTED][EMAIL PROTECTED] If I send mail to mailto:[EMAIL PROTECTED][EMAIL PROTECTED] or mailto:[EMAIL PROTECTED][EMAIL PROTECTED], it will get to their mailbox. It should bounce, but it does not that is BAD. By using vchkpw, would that solve my problem? But how do I go about moving my current accounts in MySQL to work with the new schema of vchkpw? Also, is moving to vchkpw going to break my SMTP AUTH patch that I also use? Thanks, Chris Miller Compuville http://www.compuville.netwww.compuville.net Best Regards, Jeff Koch, Intersessions
Re: [vchkpw] Moving everything to a new server
I'm no database expert, but you may need to export the database to some flat file format from the old server, then import it into the new one. Yeah, I've been reading about using vconvert to save the mysql database to cdb format and then import that back into the new server, running the conversion backwards... like so... [EMAIL PROTECTED] # /home/vpopmail/bin/vconvert -m -c [EMAIL PROTECTED] # /home/vpopmail/bin/vconvert -c -m Problem is... I did the first command and I don't have any idea where the stuff was written to. I tried looking for documentation on vconvert but the stuff on inter7.com's website is a joke! Take a look at their man pages for vconvert: http://www.inter7.com/vpopmail/doc/vconvert.html Can somebody tell me what all of the options are for vconvert? What arguments will it take? What do they do? Where is the output written? I'd love to use it if I just knew how! _ One-click access to Hotmail from any Web page download MSN Toolbar now! http://clk.atdmt.com/AVE/go/onm00200413ave/direct/01/
Re: [vchkpw] Moving everything to a new server
On Monday 08 March 2004 12:00 pm, Don Walters wrote: I'm no database expert, but you may need to export the database to some flat file format from the old server, then import it into the new one. Yeah, I've been reading about using vconvert to save the mysql database to cdb format and then import that back into the new server, running the conversion backwards... like so... [EMAIL PROTECTED] # /home/vpopmail/bin/vconvert -m -c [EMAIL PROTECTED] # /home/vpopmail/bin/vconvert -c -m Problem is... I did the first command and I don't have any idea where the stuff was written to. I tried looking for documentation on vconvert but the stuff on inter7.com's website is a joke! Take a look at their man pages for vconvert: http://www.inter7.com/vpopmail/doc/vconvert.html Can somebody tell me what all of the options are for vconvert? What arguments will it take? What do they do? Where is the output written? I'd love to use it if I just knew how! Look in the domain directory. vconvert should create a vpasswd file. Ken Jones
Re: [vchkpw] Moving everything to a new server
On Mon, 2004-03-08 at 12:00, Don Walters wrote: I'm no database expert, but you may need to export the database to some flat file format from the old server, then import it into the new one. Yeah, I've been reading about using vconvert to save the mysql database to cdb format and then import that back into the new server, running the conversion backwards... like so... [EMAIL PROTECTED] # /home/vpopmail/bin/vconvert -m -c [EMAIL PROTECTED] # /home/vpopmail/bin/vconvert -c -m Problem is... I did the first command and I don't have any idea where the stuff was written to. it writes it to vpasswd files in each domain's directory, just as if you had used cdb authentication from the start. Can somebody tell me what all of the options are for vconvert? What arguments will it take? ~vpopmail/bin/vconvert -- run that by itself. What do they do? ~vpopmail/bin/vconvert -- run that by itself. Where is the output written? inside each domain's 'home directory' in a vpasswd file. -Jeremy -- Jeremy Kitchen Systems Administrator [EMAIL PROTECTED] Kitchen @ #qmail on EFNet - Join the party! . Inter7 Internet Technologies, Inc. www.inter7.com 866.528.3530 toll free 847.492.0470 int'l 847.492.0632 fax GNUPG key ID: 93BDD6CE
Re: [vchkpw] Moving everything to a new server
~vpopmail/bin/vconvert -- run that by itself. Ok, that helps. Now I guess that means I need to create each domain on the new server, put this file under each domain (same place as on the old server) and rerun the command converting everything back to mysql format? That will update the mysql tables for me? Sorry for all the Q's. I just want to be sure I'm doing right before I start doing all this work. _ One-click access to Hotmail from any Web page download MSN Toolbar now! http://clk.atdmt.com/AVE/go/onm00200413ave/direct/01/
Re: [vchkpw] Moving everything to a new server
On Mon, 2004-03-08 at 12:24, Don Walters wrote: ~vpopmail/bin/vconvert -- run that by itself. Ok, that helps. Now I guess that means I need to create each domain on the new server, put this file under each domain (same place as on the old server) and rerun the command converting everything back to mysql format? That will update the mysql tables for me? you should just be able to copy the vpopmail/domains directory, along with qmail's control files and users/assign and have it all work. -Jeremy -- Jeremy Kitchen Systems Administrator [EMAIL PROTECTED] Kitchen @ #qmail on EFNet - Join the party! . Inter7 Internet Technologies, Inc. www.inter7.com 866.528.3530 toll free 847.492.0470 int'l 847.492.0632 fax GNUPG key ID: 93BDD6CE
Re: [vchkpw] Moving everything to a new server
On Monday 08 March 2004 12:24 pm, Don Walters wrote: ~vpopmail/bin/vconvert -- run that by itself. Ok, that helps. Now I guess that means I need to create each domain on the new server, put this file under each domain (same place as on the old server) and rerun the command converting everything back to mysql format? That will update the mysql tables for me? Sounds like you are trying to copy over your mysql database. On the old machine you can dump the vpopmail database with: mysqldump -uroot -p vpopmail vpopmail.sql On the new machine in mysql command line mysql -uroot -p enter password create database vpopmail; quit Then import the data mysql -uroot -p vpopmail.sql Ken Jones
Re: [vchkpw] vpopmail 5.2.2 minor auth problems
Thanks Jeremy, You response is appriciated, qmail and co normally looks after its self so it been a while scince I had to do qmail/vpopmail/pop3 debugging and I thought that error just looked unusual, its nice to know its normal and I've not missed anything simple by using vpopmail 5.2.2 Matt On Monday 08 March 2004 04:41, Jeremy Kitchen wrote: On Sun, 2004-03-07 at 09:41, X-Istence wrote: Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. +OK [EMAIL PROTECTED] user [EMAIL PROTECTED] +OK pass 123456 +OK -ERR unimplemented Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. +OK [EMAIL PROTECTED] user [EMAIL PROTECTED] +OK pass 123456 +OK -ERR unimplemented If you are new to this, i do suggest you try out vpopmail 5.4.0, its stable, works better and has a lot of work done to it. you completely ignored the question just to say to use vpopmail 5.4.0 the problem is he's submitting a blank line to qmail-pop3d. My machines do the same thing, one is using straight djb checkpassword, and the other is using vmailmgr. [EMAIL PROTECTED]:~$ telnet localhost 110 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. +OK [EMAIL PROTECTED] user kitchen +OK pass guessme +OK -ERR unimplemented It's completely normal. Try issuing a real pop3 command, such a LIST, or RETR messagenumber This really has nothing to do with vpopmail, as once you've authenticated it's all qmail-pop3d, and it certainly isn't a problem. -Jeremy
[vchkpw] pop some minutes before smtp?
Hi all, vpopmail 5.4.2 has a pop some minutes before smtp func, not a pop just before smtp func. Has anyone confirmed it? If you use postgresql as an auth module. see http://www.mail-archive.com/[EMAIL PROTECTED]/msg16766.html Regards, Ken # after 1st clearopensmtp # ls -l tcp.smtp* -rw-r--r--1 vpopmail vchkpw 58 Feb 13 15:49 tcp.smtp -rw-r--r--1 vpopmail vchkpw 2141 Mar 9 06:20 tcp.smtp.cdb vpopmail= select * from relay; ip_addr | timestamp -+--- (0 rows) [rejected smtp] # after pop3 auth # ls -l tcp.smtp* -rw-r--r--1 vpopmail vchkpw 58 Feb 13 15:49 tcp.smtp -rw-r--r--1 vpopmail vchkpw 2141 Mar 9 06:20 tcp.smtp.cdb vpopmail= select * from relay; ip_addr | timestamp -+ ***.***.***.*** | 1078780891 (1 row) [rejected smtp] # after 2nd clearopensmtp # ls -l tcp.smtp* -rw-r--r--1 vpopmail vchkpw 58 Feb 13 15:49 tcp.smtp -rw-r--r--1 vpopmail vchkpw 2202 Mar 9 06:22 tcp.smtp.cdb vpopmail= select * from relay; ip_addr | timestamp -+ ***.***.***.*** | 1078780891 (1 row) [allowed smtp] # after 3rd clearopensmtp # ls -l tcp.smtp* -rw-r--r--1 vpopmail vchkpw 58 Feb 13 15:49 tcp.smtp -rw-r--r--1 vpopmail vchkpw 2141 Mar 9 06:24 tcp.smtp.cdb vpopmail= select * from relay; ip_addr | timestamp -+--- (0 rows) [rejected smtp] # ./configure \ --enable-auth-module=pgsql \ --enable-incdir=/usr/local/pgsql/include \ --enable-libdir=/usr/local/pgsql/lib \ --enable-roaming-users=y \ --enable-relay-clear-minutes=2 \ --enable-logging=y \ --enable-pgsql-logging=y \ --enable-ip-alias-domains=y # cat tcp.pop3 127.0.0.1:allow,SAFEFROM=TRUE ***.***.***.***:allow,SAFEFROM=TRUE :deny # cat tcp.smtp 127.0.0.1:allow,RELAYCLIENT=,DATABYTES=10485760 :deny --- Ken Nonaka nonaka at imasy or jp
Re: [vchkpw] POP3 Delays
While on Broadband - I do not have any issues with with 100MB ++ files getting sent. This is on dial up - we are getting time outs with Outlook Express and other clients. If you keep hitting the Wait button the file eventually goes. TroyB On Fri, 2004-02-27 at 14:45, Paul Theodoropoulos wrote: At 01:12 PM 2/27/2004, Rob G wrote: This error with over 2MB files is a MUA problem and not a problem with the mail server. There really is no way to correc this then telling the customer to use a File Transfering protocol as in FTP or something of the sorts to transfer Large Files instead of email which I have found that is not a reliable source of transport for anythign really over 1MB in size. Rob G [EMAIL PROTECTED] not reliable? nonsense. My customers routinely send messages up to 100MB in size. Paul Theodoropoulos http://www.anastrophe.com
Re: [vchkpw] pop some minutes before smtp?
Hi, On Mon, 8 Mar 2004 16:13:18 -0600 Ken Nonaka [EMAIL PROTECTED] wrote: If you use postgresql as an auth module. see http://www.mail-archive.com/[EMAIL PROTECTED]/msg16766.html msg16766's patch may annoys you as it rebuilds cdb every pop3 auth. The (possible) patch below for vpopmail 5.4.2 (vpgsql.c 1.20) rebuilds cdb only when inserting. And do clearopensmtp once before using vpopmail. clearopensmtp will create relay table if you don't have relay table yet. Without this, you will get pop3 auth error at first time like.. [21:19:38] POP3 +OK [EMAIL PROTECTED] [21:19:38] POP3 APOP test 2866a59704a31bcc505f5a6fe47x [21:19:39] POP3 NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index relay_pkey for table relay Ummm. Thanks, Ken --- vpgsql.c.ver.1.20 2004-02-26 19:44:58.0 +0900 +++ vpgsql.c.ver.1.20.kn2 2004-03-09 12:39:11.0 +0900 @@ -1,4 +1,5 @@ /* + * vpgsql.c.ver.1.20.kn2 2004/03/09 k.n * $Id: vpgsql.c,v 1.20 2004/02/11 15:40:17 tomcollins Exp $ * Copyright (C) 1999-2003 Inter7 Internet Technologies, Inc. * @@ -626,44 +627,50 @@ if ( (err=vauth_open()) != 0 ) return 0; + /* updating... */ + snprintf(SqlBufUpdate, SQL_BUF_SIZE, UPDATE relay SET ip_addr='%s', timestamp=%d WHERE ip_addr='%s', ipaddr, (int)mytime, ipaddr); pgres=PQexec(pgc, SqlBufUpdate); - if (PQresultStatus(pgres) == PGRES_COMMAND_OK atoi(PQcmdTuples(pgres)) == 0) { -if( pgres ) PQclear(pgres); -snprintf( SqlBufUpdate, SQL_BUF_SIZE, - INSERT INTO relay (ip_addr, timestamp) VALUES ('%s', %lu), - ipaddr, time(NULL)); + /* ...got error, ignored some exceptions ;-P */ -pgres=PQexec(pgc, SqlBufUpdate); + if (PQresultStatus(pgres) != PGRES_COMMAND_OK) { +if (pgres) { + PQclear(pgres); } - -/* UPDATE returned 0 rows and/or INSERT failed. Try creating the table */ - if(!pgres || PQresultStatus(pgres) != PGRES_COMMAND_OK) { -if( pgres ) PQclear(pgres); - vcreate_relay_table(); + } -/* and try INSERTing now... */ -snprintf( SqlBufUpdate, SQL_BUF_SIZE, - INSERT INTO relay (ip_addr, timestamp) VALUES ('%s', %lu), - ipaddr, time(NULL)); + /* ...updated */ -pgres=PQexec(pgc, SqlBufUpdate); + else if (atoi(PQcmdTuples(pgres)) != 0) { +if (pgres) { + PQclear(pgres); } +return 0; + } - if(!pgres || PQresultStatus(pgres)!= PGRES_COMMAND_OK ) { -/* need to return non-zero value if value inserted */ -if( pgres ) PQclear(pgres); -return 1; + /* inserting... */ + + snprintf( SqlBufUpdate, SQL_BUF_SIZE, +INSERT INTO relay (ip_addr, timestamp) VALUES ('%s', %lu), +ipaddr, time(NULL)); + + pgres=PQexec(pgc, SqlBufUpdate); + + /* ...ignored some exceptions ;-P */ + + /* ...inserted */ + + if (pgres) { +PQclear(pgres); } + return 1; - if( pgres ) PQclear(pgres); - return 0; -} +} /* end vopen_smtp_relay() */ --- Ken Nonaka nonaka at imasy or jp