Sync usage with man page.
[netbsd-mini2440.git] / external / ibm-public / postfix / dist / src / util / inet_proto.h
blobf11d13ff0c483493360246d51d29f47ab3ec897e
1 /* $NetBSD$ */
3 #ifndef _INET_PROTO_INFO_H_INCLUDED_
4 #define _INET_PROTO_INFO_H_INCLUDED_
6 /*++
7 /* NAME
8 /* inet_proto_info 3h
9 /* SUMMARY
10 /* convert protocol names to assorted constants
11 /* SYNOPSIS
12 /* #include <inet_proto_info.h>
13 DESCRIPTION
14 .nf
17 * External interface.
19 typedef struct {
20 unsigned int ai_family; /* PF_UNSPEC, PF_INET, or PF_INET6 */
21 unsigned int *ai_family_list; /* PF_INET and/or PF_INET6 */
22 unsigned int *dns_atype_list; /* TAAAA and/or TA */
23 unsigned char *sa_family_list; /* AF_INET6 and/or AF_INET */
24 } INET_PROTO_INFO;
27 * Some compilers won't link initialized data unless we call a function in
28 * the same source file. Therefore, inet_proto_info() is a function instead
29 * of a global variable.
31 #define inet_proto_info() \
32 (inet_proto_table ? inet_proto_table : \
33 inet_proto_init("default protocol setting", DEF_INET_PROTOCOLS))
35 extern INET_PROTO_INFO *inet_proto_init(const char *, const char *);
36 extern INET_PROTO_INFO *inet_proto_table;
38 #define INET_PROTO_NAME_IPV6 "ipv6"
39 #define INET_PROTO_NAME_IPV4 "ipv4"
40 #define INET_PROTO_NAME_ALL "all"
42 /* LICENSE
43 /* .ad
44 /* .fi
45 /* The Secure Mailer license must be distributed with this software.
46 /* AUTHOR(S)
47 /* Wietse Venema
48 /* IBM T.J. Watson Research
49 /* P.O. Box 704
50 /* Yorktown Heights, NY 10598, USA
51 /*--*/
53 #endif