Mercurial > masqmail
comparison src/smtp_in.c @ 305:794071925a22
refactored complex conditions
author | meillo@marmaro.de |
---|---|
date | Sun, 24 Apr 2011 15:10:11 +0200 |
parents | 3708b655a371 |
children | 53cf6be5843a |
comparison
equal
deleted
inserted
replaced
304:d5ce2ba71e7b | 305:794071925a22 |
---|---|
284 if (addr->local_part[0] == '|') { | 284 if (addr->local_part[0] == '|') { |
285 smtp_printf(out, "501 %s: no pipe allowed for SMTP connections\r\n", buf); | 285 smtp_printf(out, "501 %s: no pipe allowed for SMTP connections\r\n", buf); |
286 break; | 286 break; |
287 } | 287 } |
288 if (!addr->domain) { | 288 if (!addr->domain) { |
289 /* TODO: ``postmaster'' may be unqualified */ | |
289 smtp_printf(out, "501 recipient address must be qualified.\r\n", buf); | 290 smtp_printf(out, "501 recipient address must be qualified.\r\n", buf); |
290 break; | 291 break; |
291 } | 292 } |
292 gboolean do_relay = conf.do_relay; | 293 if (!(conf.do_relay || addr_is_local(msg->return_path) || addr_is_local(addr))) { |
293 if (!do_relay) { | |
294 do_relay = addr_is_local(msg->return_path); | |
295 if (!do_relay) { | |
296 do_relay = addr_is_local(addr); | |
297 } | |
298 } | |
299 if (!do_relay) { | |
300 smtp_printf(out, "550 relaying to %s denied.\r\n", addr_string(addr)); | 294 smtp_printf(out, "550 relaying to %s denied.\r\n", addr_string(addr)); |
301 break; | 295 break; |
302 } | 296 } |
303 psc->rcpt_seen = TRUE; | 297 psc->rcpt_seen = TRUE; |
304 msg->rcpt_list = g_list_append(msg->rcpt_list, addr); | 298 msg->rcpt_list = g_list_append(msg->rcpt_list, addr); |