]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/bc_types.h
bat: Add restore job list in console
[bacula/bacula] / bacula / src / bc_types.h
index c90392f046d5a71bd309e36e23a49becfb248fda..659ce1c58dcbfbe322ef77f310bc45afebbeb566 100644 (file)
@@ -6,7 +6,7 @@
    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
+   modify it under the terms of version three of the GNU Affero General Public
    License as published by the Free Software Foundation and included
    in the file LICENSE.
 
@@ -15,7 +15,7 @@
    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
+   You should have received a copy of the GNU Affero 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.
 #ifndef __bc_types_INCLUDED
 #define __bc_types_INCLUDED
 
+/*
+ * These are the sizes of the current definitions of database
+ *  Ids.  In general, FileId_t can be set to uint64_t and it
+ *  *should* work.  Users have reported back that it does work
+ *  for PostgreSQL.  For the other types, all places in Bacula
+ *  have been converted, but no one has actually tested it.
+ * In principle, the only field that really should need to be
+ *  64 bits is the FileId_t
+ */
+typedef uint64_t FileId_t;
+typedef uint32_t DBId_t;              /* general DB id type */
+typedef uint32_t JobId_t;
+
+
 typedef char POOLMEM;
 
 
@@ -147,6 +161,31 @@ typedef u_int64_t u_intmax_t;
 # endif
 #endif
 
+#ifndef HAVE_INTPTR_T
+#define HAVE_INTPTR_T 1
+# if (SIZEOF_INT_P == 4)
+typedef int32_t intptr_t;
+# else
+#  if (SIZEOF_INT_P == 8)
+typedef int64_t intptr_t;
+#  else
+#   error "Can't find sizeof pointer. Required!"
+#  endif
+# endif
+#endif
+
+#ifndef HAVE_UINTPTR_T
+#define HAVE_UINTPTR_T 1
+# if (SIZEOF_INT_P == 4)
+typedef uint32_t uintptr_t;
+# else
+#  if (SIZEOF_INT_P == 8)
+typedef uint64_t uintptr_t;
+#  else
+#   error "Can't find sizeof pointer. Required!"
+#  endif
+# endif
+#endif
 
 /* Limits for the above types. */
 #undef INT8_MIN
@@ -197,4 +236,22 @@ typedef float             float32_t;
 #define sockopt_val_t void *
 #endif
 
+/*
+ * Status codes returned by create_file()
+ *   Used in findlib, filed, and plugins
+ */
+enum {
+   CF_SKIP = 1,                       /* skip file (not newer or something) */
+   CF_ERROR,                          /* error creating file */
+   CF_EXTRACT,                        /* file created, data to extract */
+   CF_CREATED                         /* file created, no data to extract */
+};
+
+#ifndef MAX
+#define MAX(a, b) ((a) > (b) ? (a) : (b))
+#endif
+#ifndef MIN
+#define MIN(a, b) ((a) < (b) ? (a) : (b))
+#endif
+
 #endif /* __bc_types_INCLUDED */