/*
 * XF-SPF, basic but fully function implementation of SPF checker to be
 * used with qmail-smtpd's SMTPEXTFORK patch. Please see README for details.
 */

#include <stdio.h>
#include <stdlib.h>
#include <netinet/in.h>   /* inet_ functions / structs */
#include <arpa/nameser.h> /* DNS HEADER struct */
#include "xf-spf.h"

#include <spf2/spf.h>

SPF_response_t          *spf_myres = NULL;
SPF_response_t          *spf_myres2 = NULL; // para DNS secundario

int i;

void debug_xx()
{
	fprintf (stderr, "result = %s (%d)\n",SPF_strresult(SPF_response_result(spf_myres)),
                                                        SPF_response_result(spf_myres));
	fprintf (stderr, "err = %s (%d)\n",SPF_strerror(SPF_response_errcode(spf_myres)),
                                                        SPF_response_errcode(spf_myres));
  	for (i = 0; i < SPF_response_messages(spf_myres); i++)
  	{
    		SPF_error_t     *err = SPF_response_message(spf_myres, i);
    		fprintf (stderr,"%s_msg = (%d) %s\n",(SPF_error_errorp(err) ? "warn" : "err"),
                                        SPF_error_code(err),SPF_error_message(err));
  	}

	#define VALID_STR(x) (x ? x : "")

	fprintf(stderr,"\n---\n%s\n\n%s\n\n%s\n---\n", VALID_STR(SPF_response_get_smtp_comment(spf_myres)),
	  VALID_STR(SPF_response_get_header_comment(spf_myres)),
	  VALID_STR(SPF_response_get_received_spf(spf_myres))
	);
}



syntax highlighted by Code2HTML, v. 0.9.1