From 03c6bf88ce482f3424b7616cb1a67ee61707e38d Mon Sep 17 00:00:00 2001 From: Andre Nathan Date: Fri, 14 Sep 2012 10:48:08 -0300 Subject: [PATCH] Don't require HELO name in `check_from` --- lib/SPF.ml | 5 +++-- lib/SPF.mli | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/SPF.ml b/lib/SPF.ml index 5627ddd..d721227 100644 --- a/lib/SPF.ml +++ b/lib/SPF.ml @@ -110,11 +110,12 @@ let check_helo server client_addr helo = free_request req in finalize check close req -let check_from server client_addr helo from = +let check_from server client_addr from = + if not (String.contains from '@') then + raise (SPF_error ("invalid from address: " ^ from)); let req = request server in let check req = set_inet_addr req client_addr; - set_helo_domain req helo; set_envelope_from req from; query_mailfrom req in let close req = diff --git a/lib/SPF.mli b/lib/SPF.mli index 6cdcbe9..c3573c8 100644 --- a/lib/SPF.mli +++ b/lib/SPF.mli @@ -30,7 +30,7 @@ val free_request : request -> unit val check_helo : server -> Unix.inet_addr -> string -> response -val check_from : server -> Unix.inet_addr -> string -> string -> response +val check_from : server -> Unix.inet_addr -> string -> response val result : response -> result val reason : response -> reason