Add the DragonFly cvs id and perform general cleanups on cvs/rcs/sccs ids. Most
[dragonfly.git] / contrib / isc-dhcp / includes / cf / freebsd.h
CommitLineData
984263bc
MD
1/* freebsd.h
2
3 System dependencies for FreeBSD... */
4
5/*
6 * Copyright (c) 1996-1999 Internet Software Consortium.
7 * All rights reserved.
8 *
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions
11 * are met:
12 *
13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer.
15 * 2. Redistributions in binary form must reproduce the above copyright
16 * notice, this list of conditions and the following disclaimer in the
17 * documentation and/or other materials provided with the distribution.
18 * 3. Neither the name of The Internet Software Consortium nor the names
19 * of its contributors may be used to endorse or promote products derived
20 * from this software without specific prior written permission.
21 *
22 * THIS SOFTWARE IS PROVIDED BY THE INTERNET SOFTWARE CONSORTIUM AND
23 * CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
24 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26 * DISCLAIMED. IN NO EVENT SHALL THE INTERNET SOFTWARE CONSORTIUM OR
27 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
30 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
31 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
33 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * This software has been written for the Internet Software Consortium
37 * by Ted Lemon in cooperation with Vixie Enterprises and Nominum, Inc.
38 * To learn more about the Internet Software Consortium, see
39 * ``http://www.isc.org/''. To learn more about Vixie Enterprises,
40 * see ``http://www.vix.com''. To learn more about Nominum, Inc., see
41 * ``http://www.nominum.com''.
42 *
43 * $FreeBSD: src/contrib/isc-dhcp/includes/cf/freebsd.h,v 1.3.4.2 2003/03/02 16:42:40 murray Exp $
1de703da 44 * $DragonFly: src/contrib/isc-dhcp/includes/cf/Attic/freebsd.h,v 1.2 2003/06/17 04:24:02 dillon Exp $
984263bc
MD
45 */
46
47#include <syslog.h>
48#include <sys/types.h>
49#include <string.h>
50#include <paths.h>
51#include <errno.h>
52#include <unistd.h>
53#include <setjmp.h>
54#include <limits.h>
55
56#include <sys/wait.h>
57#include <signal.h>
58
59extern int h_errno;
60
61#include <net/if.h>
62#include <net/if_dl.h>
63#include <net/if_arp.h>
64#if !defined (INADDR_LOOPBACK)
65# define INADDR_LOOPBACK ((u_int32_t)0x7f000001)
66#endif
67
68/* Varargs stuff... */
69#include <stdarg.h>
70#define VA_DOTDOTDOT ...
71#define va_dcl
72#define VA_start(list, last) va_start (list, last)
73
74#ifndef _PATH_DHCPD_PID
75#define _PATH_DHCPD_PID "/var/run/dhcpd.pid"
76#endif
77#ifndef _PATH_DHCPD_DB
78#define _PATH_DHCPD_DB "/var/db/dhcpd.leases"
79#endif
80#ifndef _PATH_DHCLIENT_PID
81#define _PATH_DHCLIENT_PID "/var/run/dhclient.pid"
82#endif
83#ifndef _PATH_DHCLIENT_DB
84#define _PATH_DHCLIENT_DB "/var/db/dhclient.leases"
85#endif
86
87#define EOL '\n'
88#define VOIDPTR void *
89
90/* Time stuff... */
91#include <sys/time.h>
92#define TIME time_t
93#define GET_TIME(x) time ((x))
94
95#define HAVE_SA_LEN
96
97/* socklen_t was first defined on November 24 in sys/socket.h, and
98 __FreeBSD_version was changed to 400013 on December 4, so if you
99 get a compile error on this, and you updated between those dates,
100 that's why. Also, it may be that some 3.x version after 3.4 will
101 have socklen_t, but no such change has been made so far. */
102
103#if __FreeBSD_version < 400013
104#define SOCKLEN_T int
105#endif
106
107#if defined (USE_DEFAULT_NETWORK)
108# define USE_BPF
109#endif
110#define HAVE_MKSTEMP
111#ifdef NEED_PRAND_CONF
112#ifndef HAVE_DEV_RANDOM
113 # define HAVE_DEV_RANDOM 1
114 #endif /* HAVE_DEV_RANDOM */
115
116const char *cmds[] = {
117 "/bin/ps -axlw 2>&1",
118 "/usr/sbin/arp -an 2>&1",
119 "/usr/bin/netstat -an 2>&1",
120 "/bin/df 2>&1",
121 "/usr/bin/dig com. soa +ti=1 +retry=0 2>&1",
122 "/usr/bin/netstat -an 2>&1",
123 "/usr/bin/dig . soa +ti=1 +retry=0 2>&1",
124 "/usr/sbin/iostat 2>&1",
125 "/usr/bin/vmstat 2>&1",
126 "/usr/bin/w 2>&1",
127 NULL
128};
129
130const char *dirs[] = {
131 "/tmp",
132 "/usr/tmp",
133 ".",
134 "/",
135 "/var/spool",
136 "/dev",
137 "/var/mail",
138 "/home",
139 "/usr/home",
140 NULL
141};
142
143const char *files[] = {
144 "/var/log/messages",
145 "/var/log/wtmp",
146 "/var/log/lastlog",
147 NULL
148};
149#endif /* NEED_PRAND_CONF */