]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/bc_types.h
Remove debug code and change All Jobs to Jobs in bat
[bacula/bacula] / bacula / src / bc_types.h
index 4de25ce837cbd6aed59356736c68c206f0677c53..2613da2d461a7f26575b41e89a3fa1f736056684 100644 (file)
@@ -1,4 +1,6 @@
 /*
+    Define integer types for Bacula -- Kern Sibbald
+
     Integer types.  These types should be be used in all
     contexts in which the length of an integer stored on
     removable media must be known regardless of the
@@ -8,7 +10,6 @@
 
     int8_t,  int16_t,  int32_t,  int64_t
     uint8_t, uint16_t, uint32_t, uint64_t
-    float32_t, float64_t
 
     Also, we define types such as file address lengths.
 
 
  */
 /*
-   Copyright (C) 2000, 2001, 2002 Kern Sibbald and John Walker
+   Bacula® - The Network Backup Solution
+
+   Copyright (C) 2000-2006 Free Software Foundation Europe e.V.
 
-   This program is free software; you can redistribute it and/or
-   modify it under the terms of the GNU General Public License as
-   published by the Free Software Foundation; either version 2 of
-   the License, or (at your option) any later version.
+   The main author of Bacula is Kern Sibbald, with contributions from
+   many others, a complete list can be found in the file AUTHORS.
+   This program is Free Software; you can redistribute it and/or
+   modify it under the terms of version two of the GNU General Public
+   License as published by the Free Software Foundation plus additions
+   that are listed in the file LICENSE.
 
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   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 License for more details.
 
-   You should have received a copy of the GNU General Public
-   License along with this program; if not, write to the Free
-   Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-   MA 02111-1307, USA.
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+   02110-1301, USA.
 
- */
+   Bacula® is a registered trademark of John Walker.
+   The licensor of Bacula is the Free Software Foundation Europe
+   (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
+   Switzerland, email:ftf@fsfeurope.org.
+*/
 
 
 #ifndef __bc_types_INCLUDED
 #define __bc_types_INCLUDED
 
-/* ****FIXME***** implement 64 bit file addresses ! */
-#define faddr_t long 
-
 typedef char POOLMEM;
 
+
 /* Types */
 
 /* If sys/types.h does not supply intXX_t, supply them ourselves */
@@ -82,17 +89,17 @@ typedef uint32_t u_int32_t;
 #  if (SIZEOF_CHAR == 1)
 typedef unsigned char u_int8_t;
 #  else
-#   error "8 bit int type not found."
+#   error "8 bit int type not found. Required!"
 #  endif
 #  if (SIZEOF_SHORT_INT == 2)
 typedef unsigned short int u_int16_t;
 #  else
-#   error "16 bit int type not found."
+#   error "16 bit int type not found. Required!"
 #  endif
 #  if (SIZEOF_INT == 4)
 typedef unsigned int u_int32_t;
 #  else
-#   error "32 bit int type not found."
+#   error "32 bit int type not found. Required!"
 #  endif
 # endif
 #endif
@@ -114,7 +121,7 @@ typedef long int int64_t;
 # ifdef HAVE_INT64_T
 typedef int64_t intmax_t;
 # else
-typedef int32_t intmax_t;
+#   error "64 bit type not found. Required!"
 # endif
 #endif
 
@@ -126,6 +133,8 @@ typedef unsigned long long int u_int64_t;
 #  if (SIZEOF_LONG_INT == 8)
 typedef unsigned long int u_int64_t;
 #   define HAVE_U_INT64_T 1
+#  else
+#   error "64 bit type not found. Required!"
 #  endif
 # endif
 #endif
@@ -134,20 +143,20 @@ typedef unsigned long int u_int64_t;
 # ifdef HAVE_U_INT64_T
 typedef u_int64_t u_intmax_t;
 # else
-typedef u_int32_t u_intmax_t;
+#   error "64 bit type not found. Required!"
 # endif
 #endif
 
 
 /* Limits for the above types. */
-#undef INT8_MIN  
-#undef INT8_MAX  
-#undef UINT8_MAX 
-#undef INT16_MIN 
-#undef INT16_MAX 
+#undef INT8_MIN
+#undef INT8_MAX
+#undef UINT8_MAX
+#undef INT16_MIN
+#undef INT16_MAX
 #undef UINT16_MAX
-#undef INT32_MIN 
-#undef INT32_MAX 
+#undef INT32_MIN
+#undef INT32_MAX
 #undef UINT32_MAX
 
 #define INT8_MIN        (-127-1)
@@ -166,14 +175,25 @@ typedef float             float32_t;
 #endif /* __bc_types_INCLUDED */
 
 /* Define the uint versions actually used in Bacula */
+#ifndef uint8_t
 #define uint8_t u_int8_t
 #define uint16_t u_int16_t
 #define uint32_t u_int32_t
 #define uint64_t u_int64_t
 #define uintmax_t u_intmax_t
+#endif
 
-#define btime_t uint64_t
+/* Bacula time -- Unix time with microseconds */
+#define btime_t int64_t
+/* Unix time (time_t) widened to 64 bits */
+#define utime_t int64_t
 
-#ifdef HAVE_CYGWIN
+#ifndef HAVE_SOCKLEN_T
 #define socklen_t int
 #endif
+
+#ifdef HAVE_OLD_SOCKOPT
+#define sockopt_val_t char *
+#else
+#define sockopt_val_t void *
+#endif