/* * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public Licence as published by * the Free Software Foundation; either version 2 of the Licence, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public Licence for more details. */ #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define MAX_VLS 15 /* Max Volume Location Servers Per-Cell */ #define INET_IP4_ONLY 0x1 #define INET_IP6_ONLY 0x2 #define INET_ALL 0xFF #define ONE_ADDR_ONLY 0x100 /* * key.dns_resolver.c */ extern key_serial_t key; extern int debug_mode; extern unsigned mask; extern unsigned int key_expiry; #define N_PAYLOAD 256 extern struct iovec payload[N_PAYLOAD]; extern int payload_index; extern __attribute__((format(printf, 1, 2), noreturn)) void error(const char *fmt, ...); extern __attribute__((format(printf, 1, 2))) void _error(const char *fmt, ...); extern __attribute__((format(printf, 1, 2))) void warning(const char *fmt, ...); extern __attribute__((format(printf, 1, 2))) void info(const char *fmt, ...); extern __attribute__((noreturn)) void nsError(int err, const char *domain); extern void _nsError(int err, const char *domain); extern __attribute__((format(printf, 1, 2))) void debug(const char *fmt, ...); extern void append_address_to_payload(const char *addr); extern void dump_payload(void); extern int dns_resolver(const char *server_name, const char *port); /* * dns.afsdb.c */ extern __attribute__((noreturn)) void afs_look_up_VL_servers(const char *cell, char *options);