int concurrency = 10000;
char *l_default = "0.0.0.0:25";
int flaglisten = 0;
+ char **listeners = malloc(argc * sizeof(char *));
+ int i, nlisten = 0;
- int daemonize = 0;
+ int daemonize = 1;
int pidfd = -1;
uid_t uid = 0;
gid_t gid = 0;
usage(argv[0]);
break;
case 'l':
- new_listener(optarg);
+ listeners[nlisten++] = optarg;
flaglisten = 1;
break;
case 'u':
openlog("smtpsink",LOG_PID,LOG_MAIL);
signal(SIGPIPE,SIG_IGN);
- pthread_create(&sl, 0, sigloop, event_init());
+ pthread_create(&sl, 0, sigloop, event_init());
+
+ for (i = 0; i < nlisten; i++) {
+ new_listener(listeners[i]);
+ }
conn_pool_init(concurrency);
io_init();