diff -c -r rblsmtpd-0.70/rblsmtpd.c rblsmtpd-0.70-local//rblsmtpd.c *** rblsmtpd-0.70/rblsmtpd.c Tue Aug 25 08:58:22 1998 --- rblsmtpd-0.70-local//rblsmtpd.c Mon Jun 14 10:26:15 1999 *************** *** 10,15 **** --- 10,17 ---- #include "ip.h" #include "env.h" + #define MAX_RBL_DOMAINS 8 + #define FATAL "rblsmtpd: fatal: " void die_sys() { _exit(111); } *************** *** 109,114 **** --- 111,119 ---- char **argv; { int opt; + int rblcnt = 0; + int i; + char * rbldoms[MAX_RBL_DOMAINS]; while ((opt = getopt(argc,argv,"t:r:Rb")) != opteof) switch(opt) { *************** *** 115,121 **** case 't': scan_uint(optarg,&timeout); break; case 'R': flagrblsafe = 1; break; case 'b': flagbounce = 1; break; ! case 'r': rbldomain = optarg; break; default: usage(); } argv += optind; --- 120,126 ---- case 't': scan_uint(optarg,&timeout); break; case 'R': flagrblsafe = 1; break; case 'b': flagbounce = 1; break; ! case 'r': if (rblcnt < MAX_RBL_DOMAINS) rbldoms[rblcnt++] = optarg; break; default: usage(); } argv += optind; *************** *** 122,128 **** if (!*argv) usage(); res_init(); ! check(); execvp(*argv,argv); strerr_die4sys(111,FATAL,"unable to run ",*argv,": "); } --- 127,140 ---- if (!*argv) usage(); res_init(); ! if (rblcnt == 0) { ! check(); ! } else { ! for (i=0; i