aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/cron
diff options
context:
space:
mode:
authorMáté Bartus <mate.bartus@gmail.com>2016-12-18 19:08:26 +0100
committerMáté Bartus <mate.bartus@gmail.com>2016-12-18 19:08:26 +0100
commitf84c3687cce0e4dc1868016c14e416047013d784 (patch)
tree69106fe4f7dd9fcee8a742b1af6ab80bb3f8ef39 /phpBB/phpbb/cron
parent909aef0ed36f0281233e16617b5019763f2f461b (diff)
parentaa6c2fae5cb6520f1f642767762e55a374d6c5bd (diff)
downloadforums-f84c3687cce0e4dc1868016c14e416047013d784.tar
forums-f84c3687cce0e4dc1868016c14e416047013d784.tar.gz
forums-f84c3687cce0e4dc1868016c14e416047013d784.tar.bz2
forums-f84c3687cce0e4dc1868016c14e416047013d784.tar.xz
forums-f84c3687cce0e4dc1868016c14e416047013d784.zip
Merge branch '3.1.x' into 3.2.x
Diffstat (limited to 'phpBB/phpbb/cron')
0 files changed, 0 insertions, 0 deletions
n8'>8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
#ifndef _RESOLV_H
#define _RESOLV_H

#include <sys/param.h>
#include <sys/types.h>
#include <stdio.h>
#include <netinet/in.h>

#ifndef _PATH_RESCONF
#define _PATH_RESCONF        "/etc/resolv.conf"
#endif

/*
 * Global defines and variables for resolver stub.
 */
#define	MAXNS			8	/* max # name servers we'll track */
#define	MAXDFLSRCH		3	/* # default domain levels to try */
#define	MAXDNSRCH		6	/* max # domains in search path */
#define	LOCALDOMAINPARTS	2	/* min levels in name that is "local" */

#define	RES_TIMEOUT		5	/* min. seconds between retries */
#define	MAXRESOLVSORT		10	/* number of net to sort on */
#define	RES_MAXNDOTS		15	/* should reflect bit field size */

struct res_state {
  int	retrans;	 	/* retransmission time interval */
  int	retry;			/* number of times to retransmit */
  unsigned long	options;		/* option flags - see below. */
  int	nscount;		/* number of name servers */
  struct sockaddr_in_pad
	  nsaddr_list[MAXNS];	/* address of name server */
#define	nsaddr	nsaddr_list[0]		/* for backward compatibility */
  unsigned short	id;			/* current message id */
  char	*dnsrch[MAXDNSRCH+1];	/* components of domain to search */
  char	defdname[256];		/* default domain (deprecated) */
  unsigned long	pfcode;			/* RES_PRF_ flags - see below. */
  unsigned ndots:4;		/* threshold for initial abs. query */
  unsigned nsort:4;		/* number of elements in sort_list[] */
  char	unused[3];
  struct {
    struct in_addr	addr;
    uint32_t	mask;
  } sort_list[MAXRESOLVSORT];
  char	pad[72];		/* on an i386 this means 512b total */
};

/*
 * Resolver options (keep these in synch with res_debug.c, please)
 */
#define RES_INIT	0x00000001	/* address initialized */
#define RES_DEBUG	0x00000002	/* print debug messages */
#define RES_AAONLY	0x00000004	/* authoritative answers only (!IMPL)*/
#define RES_USEVC	0x00000008	/* use virtual circuit */
#define RES_PRIMARY	0x00000010	/* query primary server only (!IMPL) */
#define RES_IGNTC	0x00000020	/* ignore trucation errors */
#define RES_RECURSE	0x00000040	/* recursion desired */
#define RES_DEFNAMES	0x00000080	/* use default domain name */
#define RES_STAYOPEN	0x00000100	/* Keep TCP socket open */
#define RES_DNSRCH	0x00000200	/* search up local domain tree */
#define	RES_INSECURE1	0x00000400	/* type 1 security disabled */
#define	RES_INSECURE2	0x00000800	/* type 2 security disabled */
#define	RES_NOALIASES	0x00001000	/* shuts off HOSTALIASES feature */
#define	RES_USE_INET6	0x00002000	/* use/map IPv6 in gethostbyname() */

#define RES_DEFAULT	(RES_RECURSE | RES_DEFNAMES | RES_DNSRCH)

/*
 * Resolver "pfcode" values.  Used by dig.
 */
#define RES_PRF_STATS	0x00000001
/*			0x00000002	*/
#define RES_PRF_CLASS   0x00000004
#define RES_PRF_CMD	0x00000008
#define RES_PRF_QUES	0x00000010
#define RES_PRF_ANS	0x00000020
#define RES_PRF_AUTH	0x00000040
#define RES_PRF_ADD	0x00000080
#define RES_PRF_HEAD1	0x00000100
#define RES_PRF_HEAD2	0x00000200
#define RES_PRF_TTLID	0x00000400
#define RES_PRF_HEADX	0x00000800
#define RES_PRF_QUERY	0x00001000
#define RES_PRF_REPLY	0x00002000
#define RES_PRF_INIT    0x00004000
/*			0x00008000	*/

struct res_sym {
	int	number;		/* Identifying number, like T_MX */
	char *	name;		/* Its symbolic name, like "MX" */
	char *	humanname;	/* Its fun name, like "mail exchanger" */
};

extern struct res_state _res;
extern const struct res_sym __p_class_syms[];
extern const struct res_sym __p_type_syms[];

int res_init(void) __THROW;

int res_query(const char *dname, int class, int type,
      unsigned char *answer, int anslen) __THROW;

int res_search(const char *dname, int class, int type,
      unsigned char *answer, int anslen) __THROW;

int res_querydomain(const char *name, const char *domain,
      int class, int type, unsigned char *answer,
      int anslen) __THROW;

int res_mkquery(int op, const char *dname, int class,
      int type, char *data, int datalen, const unsigned char* newrr,
      char *buf, int buflen) __THROW;

int res_send(const char *msg, int msglen, char *answer,
      int anslen) __THROW;

int dn_comp(unsigned char *msg, unsigned char *comp_dn,
      int length, unsigned char **dnptrs, unsigned char *exp_dn,
      unsigned char **lastdnptr) __THROW;

int dn_expand(unsigned char *msg, unsigned char *eomorig,
      unsigned char *comp_dn, unsigned char *exp_dn,
      int length) __THROW;

#endif