2 Bacula® - The Network Backup Solution
4 Copyright (C) 2000-2014 Free Software Foundation Europe e.V.
6 The main author of Bacula is Kern Sibbald, with contributions from many
7 others, a complete list can be found in the file AUTHORS.
9 You may use this file and others of this release according to the
10 license defined in the LICENSE file, which includes the Affero General
11 Public License, v3.0 ("AGPLv3") and some additional permissions and
12 terms pursuant to its AGPLv3 Section 7.
14 Bacula® is a registered trademark of Kern Sibbald.
17 * bacula.h -- main header file to include in all Bacula source
24 /* Disable FORTIFY_SOURCE, because bacula uses is own memory
27 #ifdef _FORTIFY_SOURCE
28 #undef _FORTIFY_SOURCE
32 /* Workaround for SGI IRIX 6.5 */
33 #define _LANGUAGE_C_PLUS_PLUS 1
36 #if defined(HAVE_WIN32)
37 #if defined(HAVE_MINGW)
38 #include "mingwconfig.h"
40 #include "winconfig.h"
49 #define _THREAD_SAFE 1
50 #define _POSIX_PTHREAD_SEMANTICS 1
68 # undef _INCLUDE_POSIX1C_SOURCE
83 /* O_NOATIME is defined at fcntl.h when supported */
95 #ifdef HAVE_GETOPT_LONG
98 #include "lib/getopt.h"
116 #include <sys/types.h>
117 #ifdef HAVE_SYS_BITYPES_H
118 #include <sys/bitypes.h>
120 #include <sys/ioctl.h>
121 #ifdef HAVE_SYS_SOCKET_H
122 #include <sys/socket.h>
124 #if defined(HAVE_WIN32) & !defined(HAVE_MINGW)
125 #include <winsock2.h>
127 #if !defined(HAVE_WIN32) & !defined(HAVE_MINGW)
128 #include <sys/stat.h>
130 #include <sys/time.h>
132 #include <sys/wait.h>
134 #include <netinet/in.h>
135 #include <arpa/inet.h>
139 /* fight OpenSSL namespace pollution */
140 #define STORE OSSL_STORE
141 #include <openssl/ssl.h>
142 #include <openssl/x509v3.h>
143 #include <openssl/rand.h>
144 #include <openssl/err.h>
145 #include <openssl/asn1.h>
146 #include <openssl/asn1t.h>
150 /* Local Bacula includes. Be sure to put all the system
151 * includes before these.
153 #if defined(HAVE_WIN32)
155 #include "win32/compat/compat.h"
159 #include "bc_types.h"
161 #include "filetypes.h"
162 #include "baconfig.h"
165 #if defined(HAVE_WIN32)
166 #include "win32/winapi.h"
173 #undef HAVE_LIBZ /* no good without headers */