2 * Copyright (c) 2003-2007 Tim Kientzle
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
15 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
16 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
17 * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
18 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
19 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
21 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 /* FreeBSD 5.0 and later have ACL and extattr support. */
30 #define HAVE_ACL_CREATE_ENTRY 1
31 #define HAVE_ACL_GET_PERM_NP 1
32 #define HAVE_ACL_INIT 1
33 #define HAVE_ACL_SET_FD 1
34 #define HAVE_ACL_SET_FD_NP 1
35 #define HAVE_ACL_SET_FILE 1
36 #define HAVE_ACL_USER 1
38 /* XXX Temporarily disable support for reading extended attributes from
39 * disk, as it seems to be badly broken on ZFS. XXX */
40 #define HAVE_EXTATTR_GET_FILE 1
41 #define HAVE_EXTATTR_LIST_FILE 1
43 #define HAVE_EXTATTR_SET_FD 1
44 #define HAVE_EXTATTR_SET_FILE 1
45 #define HAVE_SYS_ACL_H 1
46 #define HAVE_SYS_EXTATTR_H 1
49 #define HAVE_BZLIB_H 1
50 #define HAVE_CHFLAGS 1
52 #define HAVE_DECL_INT64_MAX 1
53 #define HAVE_DECL_INT64_MIN 1
54 #define HAVE_DECL_SIZE_MAX 1
55 #define HAVE_DECL_SSIZE_MAX 1
56 #define HAVE_DECL_STRERROR_R 1
57 #define HAVE_DECL_UINT32_MAX 1
58 #define HAVE_DECL_UINT64_MAX 1
61 #define HAVE_ERRNO_H 1
63 #define HAVE_FCHFLAGS 1
67 #define HAVE_FCNTL_H 1
70 #define HAVE_FTRUNCATE 1
71 #define HAVE_FUTIMES 1
72 #define HAVE_GETEUID 1
75 #define HAVE_INTTYPES_H 1
76 #define HAVE_LCHFLAGS 1
79 #define HAVE_LIMITS_H 1
80 #define HAVE_LUTIMES 1
83 #define HAVE_MEMMOVE 1
88 #define HAVE_OPENSSL_MD5_H 1
89 #define HAVE_OPENSSL_RIPEMD_H 1
90 #define HAVE_OPENSSL_SHA_H 1
95 #define HAVE_READLINK 1
96 #define HAVE_RIPEMD_H 1
100 #define HAVE_SHA256_H 1
101 #define HAVE_STDINT_H 1
102 #define HAVE_STDLIB_H 1
103 #define HAVE_STRCHR 1
104 #define HAVE_STRDUP 1
105 #define HAVE_STRERROR 1
106 #define HAVE_STRERROR_R 1
107 #define HAVE_STRINGS_H 1
108 #define HAVE_STRING_H 1
109 #define HAVE_STRRCHR 1
110 #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
111 #define HAVE_STRUCT_STAT_ST_BIRTHTIME 1
112 #define HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 1
113 #define HAVE_STRUCT_STAT_ST_FLAGS 1
114 #define HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC 1
115 #define HAVE_SYS_IOCTL_H 1
116 #define HAVE_SYS_SELECT_H 1
117 #define HAVE_SYS_STAT_H 1
118 #define HAVE_SYS_TIME_H 1
119 #define HAVE_SYS_TYPES_H 1
120 #undef HAVE_SYS_UTIME_H
121 #define HAVE_SYS_WAIT_H 1
122 #define HAVE_TIMEGM 1
124 #define HAVE_UNISTD_H 1
125 #define HAVE_UNSETENV 1
127 #define HAVE_UTIMES 1
128 #define HAVE_UTIME_H 1
130 #define HAVE_WCHAR_H 1
131 #define HAVE_WCSCPY 1
132 #define HAVE_WCSLEN 1
133 #define HAVE_WCTOMB 1
134 #define HAVE_WMEMCMP 1
135 #define HAVE_WMEMCPY 1
136 #define HAVE_ZLIB_H 1
137 #define STDC_HEADERS 1
138 #define TIME_WITH_SYS_TIME 1
140 /* FreeBSD 4 and earlier lack intmax_t/uintmax_t */
142 #define intmax_t int64_t
143 #define uintmax_t uint64_t