Postfix3.3.1
総合概要
データ構造
ファイル
ファイル一覧
大域各種
postfix-3.3.1
src
dns
dns_str_resflags.c
[詳解]
1
/*++
2
/* NAME
3
/* dns_str_resflags 3
4
/* SUMMARY
5
/* convert resolver flags to printable form
6
/* SYNOPSIS
7
/* #include <dns.h>
8
/*
9
/* const char *dns_str_resflags(mask)
10
/* unsigned long mask;
11
/* DESCRIPTION
12
/* dns_str_resflags() converts RES_* resolver(5) flags from internal
13
/* form to printable string. Individual flag names are separated
14
/* with '|'. The result is overwritten with each call.
15
/* LICENSE
16
/* .ad
17
/* .fi
18
/* The Secure Mailer license must be distributed with this software.
19
/* AUTHOR(S)
20
/* Wietse Venema
21
/* Google, Inc.
22
/* 111 8th Avenue
23
/* New York, NY 10011, USA
24
/*--*/
25
26
/*
27
* System library.
28
*/
29
#include <
sys_defs.h
>
30
#include <netinet/in.h>
31
#include <arpa/nameser.h>
32
#include <resolv.h>
33
34
/*
35
* Utility library.
36
*/
37
#include <
name_mask.h
>
38
39
/*
40
* DNS library.
41
*/
42
#include <
dns.h
>
43
44
/*
45
* Application-specific.
46
*/
47
48
/*
49
* This list overlaps with dns_res_opt_masks[] in smtp.c, but there we
50
* permit only a small subset of all possible flags.
51
*/
52
static
const
LONG_NAME_MASK
resflag_table[] = {
53
"RES_INIT"
, RES_INIT,
54
"RES_DEBUG"
, RES_DEBUG,
55
"RES_AAONLY"
, RES_AAONLY,
56
"RES_USEVC"
, RES_USEVC,
57
"RES_PRIMARY"
, RES_PRIMARY,
58
"RES_IGNTC"
, RES_IGNTC,
59
"RES_RECURSE"
, RES_RECURSE,
60
"RES_DEFNAMES"
, RES_DEFNAMES,
61
"RES_STAYOPEN"
, RES_STAYOPEN,
62
"RES_DNSRCH"
, RES_DNSRCH,
63
"RES_INSECURE1"
, RES_INSECURE1,
64
"RES_INSECURE2"
, RES_INSECURE2,
65
"RES_NOALIASES"
, RES_NOALIASES,
66
"RES_USE_INET6"
, RES_USE_INET6,
67
#ifdef RES_ROTATE
68
"RES_ROTATE"
, RES_ROTATE,
69
#endif
70
#ifdef RES_NOCHECKNAME
71
"RES_NOCHECKNAME"
, RES_NOCHECKNAME,
72
#endif
73
"RES_USE_EDNS0"
,
RES_USE_EDNS0
,
74
"RES_USE_DNSSEC"
,
RES_USE_DNSSEC
,
75
#ifdef RES_KEEPTSIG
76
"RES_KEEPTSIG"
, RES_KEEPTSIG,
77
#endif
78
#ifdef RES_BLAST
79
"RES_BLAST"
, RES_BLAST,
80
#endif
81
#ifdef RES_USEBSTRING
82
"RES_USEBSTRING"
, RES_USEBSTRING,
83
#endif
84
#ifdef RES_NSID
85
"RES_NSID"
, RES_NSID,
86
#endif
87
#ifdef RES_NOIP6DOTINT
88
"RES_NOIP6DOTINT"
, RES_NOIP6DOTINT,
89
#endif
90
#ifdef RES_USE_DNAME
91
"RES_USE_DNAME"
, RES_USE_DNAME,
92
#endif
93
#ifdef RES_NO_NIBBLE2
94
"RES_NO_NIBBLE2"
, RES_NO_NIBBLE2,
95
#endif
96
#ifdef RES_SNGLKUP
97
"RES_SNGLKUP"
, RES_SNGLKUP,
98
#endif
99
#ifdef RES_SNGLKUPREOP
100
"RES_SNGLKUPREOP"
, RES_SNGLKUPREOP,
101
#endif
102
#ifdef RES_NOTLDQUERY
103
"RES_NOTLDQUERY"
, RES_NOTLDQUERY,
104
#endif
105
0,
106
};
107
108
/* dns_str_resflags - convert RES_* resolver flags to printable form */
109
110
const
char
*
dns_str_resflags
(
unsigned
long
mask)
111
{
112
static
VSTRING
*buf;
113
114
if
(buf == 0)
115
buf =
vstring_alloc
(20);
116
return
(
str_long_name_mask_opt
(buf,
"dsns_str_resflags"
, resflag_table,
117
mask,
NAME_MASK_NUMBER
|
NAME_MASK_PIPE
));
118
}
RES_USE_EDNS0
#define RES_USE_EDNS0
Definition:
dns.h:71
str_long_name_mask_opt
const char * str_long_name_mask_opt(VSTRING *buf, const char *context, const LONG_NAME_MASK *table, long mask, int flags)
Definition:
name_mask.c:380
LONG_NAME_MASK
Definition:
name_mask.h:60
name_mask.h
dns_str_resflags
const char * dns_str_resflags(unsigned long mask)
Definition:
dns_str_resflags.c:110
vstring_alloc
VSTRING * vstring_alloc(ssize_t len)
Definition:
vstring.c:353
VSTRING
Definition:
vstring.h:29
RES_USE_DNSSEC
#define RES_USE_DNSSEC
Definition:
dns.h:68
sys_defs.h
NAME_MASK_NUMBER
#define NAME_MASK_NUMBER
Definition:
name_mask.h:32
NAME_MASK_PIPE
#define NAME_MASK_PIPE
Definition:
name_mask.h:31
dns.h
2018年11月10日(土) 18時59分35秒作成 - Postfix3.3.1 / 構成:
1.8.9.1