|
|
#else | #else |
int log_level = 0; | int log_level = 0; |
#endif | #endif |
|
int minuserid = MAXSYSUID+1; |
int port = 25; | int port = 25; |
#ifdef INET6 | #ifdef INET6 |
int p_family = PF_UNSPEC; /* Protocol family used in SMTP connection */ | int p_family = PF_UNSPEC; /* Protocol family used in SMTP connection */ |
|
Lines 641-647
char *rcpt_remap(char *str)
|
Link Here
|
|---|
|
{ | { |
struct passwd *pw; | struct passwd *pw; |
if((root==NULL) || strlen(root)==0 || strchr(str, '@') || | if((root==NULL) || strlen(root)==0 || strchr(str, '@') || |
((pw = getpwnam(str)) == NULL) || (pw->pw_uid > MAXSYSUID)) { |
((pw = getpwnam(str)) == NULL) || (pw->pw_uid >= minuserid)) { |
return(append_domain(str)); /* It's not a local systems-level user */ | return(append_domain(str)); /* It's not a local systems-level user */ |
} | } |
else { | else { |
|
|
log_event(LOG_INFO, "Set Root=\"%s\"\n", root); | log_event(LOG_INFO, "Set Root=\"%s\"\n", root); |
} | } |
} | } |
|
else if(strcasecmp(p, "MinUserId") == 0) { |
|
if((r = strdup(q)) == (char *)NULL) { |
|
die("parse_config() -- strdup() failed"); |
|
} |
|
|
|
minuserid = atoi(r); |
|
|
|
if(log_level > 0) { |
|
log_event(LOG_INFO, "Set MinUserId=\"%d\"\n", minuserid); |
|
} |
|
} |
else if(strcasecmp(p, "MailHub") == 0) { | else if(strcasecmp(p, "MailHub") == 0) { |
if((mailhost = strdup(q)) == (char *)NULL) { | if((mailhost = strdup(q)) == (char *)NULL) { |
die("parse_config() -- strdup() failed"); | die("parse_config() -- strdup() failed"); |