/*++ /* NAME /* inet_proto 3 /* SUMMARY /* convert protocol names to assorted constants /* SYNOPSIS /* #include <inet_proto.h> /* /* typedef struct { /* .in +4
/* unsigned ai_family; /* PF_UNSPEC, PF_INET, or PF_INET6 */ /* unsigned *ai_family_list; /* PF_INET and/or PF_INET6 */ /* unsigned *dns_atype_list;/* TAAAA and/or TA */ /* unsigned char *sa_family_list;/* AF_INET6 and/or AF_INET */ /* .in -4 /* } INET_PROTO_INFO; /* /* const INET_PROTO_INFO *inet_proto_init( /* const char *context, /* const char *protocols) /* /* const INET_PROTO_INFO *inet_proto_info() /* DESCRIPTION /* inet_proto_init() converts a string with protocol names /* into null-terminated lists of appropriate constants used /* by Postfix library routines. The idea is that one should /* be able to configure an MTA for IPv4 only, without having /* to recompile code (what a concept). /* /* Unfortunately, some compilers won't link initialized data /* without a function call into the same source module, so /* we invoke inet_proto_info() in order to access the result /* from inet_proto_init() from within library routines. /* inet_proto_info() also conveniently initializes the data /* to built-in defaults. /* /* Arguments: /* .IP context /* Typically, a configuration parameter name. /* .IP protocols /* Null-terminated string with protocol names separated by /* whitespace and/or commas: /* .RS /* .IP INET_PROTO_NAME_ALL /* Enable all available IP protocols. /* .IP INET_PROTO_NAME_IPV4 /* Enable IP version 4 support. /* .IP INET_PROTO_NAME_IPV6 /* Enable IP version 6 support. /* .RS /* .PP /* Results: /* .IP ai_family /* Only one of PF_UNSPEC, PF_INET, or PF_INET6. This can be /* used as input for the getaddrinfo() and getnameinfo() /* routines. /* .IP ai_family_list /* One or more of PF_INET or PF_INET6. This can be used as /* input for the inet_addr_local() routine. /* .IP dns_atype_list /* One or more of T_AAAA or T_A. This can be used as input for /* the dns_lookup_v() and dns_lookup_l() routines. /* .IP sa_family_list /* One or more of AF_INET6 or AF_INET. This can be used as an /* output filter for the results from the getaddrinfo() and /* getnameinfo() routines. /* SEE ALSO /* msg(3) diagnostics interface /* DIAGNOSTICS /* This module will warn and turn off support for any protocol /* that is requested but unavailable. /* /* Fatal errors: memory allocation problem. /* LICENSE /* .ad /* .fi /* The Secure Mailer license must be distributed with this software. /* AUTHOR(S) /* Wietse Venema /* IBM T.J. Watson Research /* P.O. Box 704 /* Yorktown Heights, NY 10598, USA /* /* Wietse Venema /* Google, Inc. /* 111 8th Avenue /* New York, NY 10011, USA
/*--*/
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.