- strings and evaluates the condition outcome. */
-
-int spf_process(uschar **listptr, uschar *spf_envelope_sender) {
- int sep = 0;
- uschar *list = *listptr;
- uschar *spf_result_id;
- uschar spf_result_id_buffer[128];
- int rc = SPF_RESULT_PERMERROR;
-
- if (!(spf_server && spf_request)) {
- /* no global context, assume temp error and skip to evaluation */
- rc = SPF_RESULT_PERMERROR;
- goto SPF_EVALUATE;
- };
-
- if (SPF_request_set_env_from(spf_request, spf_envelope_sender)) {
- /* Invalid sender address. This should be a real rare occurence */
- rc = SPF_RESULT_PERMERROR;
- goto SPF_EVALUATE;
- }
+ strings and evaluates the condition outcome.
+
+Return: OK/FAIL */
+
+int
+spf_process(const uschar **listptr, uschar *spf_envelope_sender, int action)
+{
+int sep = 0;
+const uschar *list = *listptr;
+uschar *spf_result_id;
+int rc = SPF_RESULT_PERMERROR;