[BZ #1088]
* hesiod/hesiod_p.h (struct hesiod_p): Add classes array.
* hesiod/hesiod.c (hesiod_init): Initialize classes. Fail if no
valid classes were given or if both are equal.
(hesiod_resolve): Use ctx->classes instead of hardcoded C_IN
and C_HS order.
(parse_config_file): Handle classes keyword.
* hesiod/README.hesiod: Mention addition of the classes keyword.
rhs=.your.domain
lhs=.ns
+ classes=in,hs
+
+The optional classes settings specifies which DNS classes Hesiod
+should do lookups in. Possible values are IN (the preferred class)
+and HS (the deprecated class, still used by some sites).
+You may specify both classes separated by a comma to try one class
+first and then the other if no entry is available in the first
+class. The default value of the classes variable is `IN,HS'.
The value of rhs can be overridden by the environment variable
`HES_DOMAIN'.
void (*res_set)(struct hesiod_p *, struct __res_state *,
void (*)(void *));
struct __res_state * (*res_get)(struct hesiod_p *);
+ int classes[2]; /* The class search order. */
};
#define MAX_HESRESP 1024