firedns_resolvemxalist(3)

firedns_resolvemxalist3

Resolve a list of mx records of a hostname and their corresponding a records

Usage

#include <firedns.h>
-lfiredns

struct firedns_mxlist *firedns_resolvemxalist(const char * const name)

Overview

firedns_resolvemxalist() attempts to resolve a list of MX records for the hostname name. If it fails, it treats the host as having a priority 0 MX record, and attempts to resolve a list of A and AAAA records for the hostname. If the MX record lookup succeeds, it looks up the list of A and AAAA records for each MX record in parallel. It also checks for RFC-violating CNAMEs for each MX record.

Return value

Returns a pointer to an internal static struct firedns_mxlist *. This structure is the first of a linked list. It contains:

char *name;

char *cname;

struct firedns_ip4list *ip4list;

struct firedns_ip6list *ip6list;

unsigned int protocol; (FIREDNS_MX_SMTP or FIREDNS_MX_QMTP)

unsigned int priority;

struct firedns_mxlist *next;

This function returns NULL on error.

Any result return by this function should be freed with firedns_free_mxalist(3).

Releases

Unchanged in 2 releases since Debian 3.1 (Sarge).

  1. 3.1–4.0

Author

Ian Gulliver <[email protected]>

From libfiredns-dev 0.9.12+dfsg-1 in Debian 4.0 (Etch). Parsed by carta from the page's man source.