* Version $Id$
*/
/*
- Copyright (C) 2000-2005 Kern Sibbald
+ Copyright (C) 2000-2006 Kern Sibbald
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
#define TRUE 1
#define FALSE 0
+#ifndef MAX
+#define MAX(a, b) ((a) > (b) ? (a) : (b))
+#endif
+#ifndef MIN
+#define MIN(a, b) ((a) < (b) ? (a) : (b))
+#endif
+
#ifdef HAVE_TLS
#define have_tls 1
#else
#ifdef DEBUG
#define ASSERT(x) if (!(x)) { \
char *jcr = NULL; \
- Emsg1(M_ERROR, 0, "Failed ASSERT: %s\n", #x); \
+ Emsg1(M_ERROR, 0, _("Failed ASSERT: %s\n"), #x); \
jcr[0] = 0; }
#else
#define ASSERT(x)
#endif
/* Allow printing of NULL pointers */
-#define NPRT(x) (x)?(x):"*None*"
+#define NPRT(x) (x)?(x):_("*None*")
+
+#ifdef WIN32
+#undef ENABLE_NLS
+#endif
#ifdef ENABLE_NLS
-#include <libintl.h>
-#define _(s) gettext((s))
-#define N_(s) (s)
-#else
-#undef _
-#define _(s) (s)
-#undef N_
-#define N_(s) (s)
-#undef textdomain
-#define textdomain(d)
-/* #define bindtextdomain(p, d) */
-#endif
+ #include <libintl.h>
+ #include <locale.h>
+ #ifndef _
+ #define _(s) gettext((s))
+ #endif /* _ */
+ #ifndef N_
+ #define N_(s) (s)
+ #endif /* N_ */
+#else /* !ENABLE_NLS */
+ #ifndef _
+ #define _(s) (s)
+ #endif
+ #ifndef N_
+ #define N_(s) (s)
+ #endif
+ #ifndef textdomain
+ #define textdomain(d)
+ #endif
+ #ifndef bindtextdomain
+ #define bindtextdomain(p, d)
+ #endif
+ #ifndef setlocale
+ #define setlocale(p, d)
+ #endif
+#endif /* ENABLE_NLS */
+/* Use the following for strings not to be translated */
+#define NT_(s) (s)
/* This should go away! ****FIXME***** */
#define MAXSTRING 500
/*
* Default network buffer size
*/
-#define DEFAULT_NETWORK_BUFFER_SIZE (32 * 1024)
+#define DEFAULT_NETWORK_BUFFER_SIZE (64 * 1024)
/*
* Stream definitions. Once defined these must NEVER
*
* STREAM_UNIX_ATTRIBUTES
* STREAM_UNIX_ATTRIBUTES_EX
- * STREAM_MD5_SIGNATURE
- * STREAM_SHA1_SIGNATURE
+ * STREAM_MD5_DIGEST
+ * STREAM_SHA1_DIGEST
+ * STREAM_SHA256_DIGEST
+ * STREAM_SHA512_DIGEST
*/
+#define STREAM_NONE 0 /* Reserved Non-Stream */
#define STREAM_UNIX_ATTRIBUTES 1 /* Generic Unix attributes */
#define STREAM_FILE_DATA 2 /* Standard uncompressed data */
-#define STREAM_MD5_SIGNATURE 3 /* MD5 signature for the file */
+#define STREAM_MD5_SIGNATURE 3 /* deprecated */
+#define STREAM_MD5_DIGEST 3 /* MD5 digest for the file */
#define STREAM_GZIP_DATA 4 /* GZip compressed file data */
/* Extended Unix attributes with Win32 Extended data. Deprecated. */
#define STREAM_UNIX_ATTRIBUTES_EX 5 /* Extended Unix attr for Win32 EX */
#define STREAM_SPARSE_GZIP_DATA 7
#define STREAM_PROGRAM_NAMES 8 /* program names for program data */
#define STREAM_PROGRAM_DATA 9 /* Data needing program */
-#define STREAM_SHA1_SIGNATURE 10 /* SHA1 signature for the file */
+#define STREAM_SHA1_SIGNATURE 10 /* deprecated */
+#define STREAM_SHA1_DIGEST 10 /* SHA1 digest for the file */
#define STREAM_WIN32_DATA 11 /* Win32 BackupRead data */
#define STREAM_WIN32_GZIP_DATA 12 /* Gzipped Win32 BackupRead data */
#define STREAM_MACOS_FORK_DATA 13 /* Mac resource fork */
#define STREAM_UNIX_ATTRIBUTES_ACCESS_ACL 15 /* Standard ACL attributes on UNIX */
#define STREAM_UNIX_ATTRIBUTES_DEFAULT_ACL 16 /* Default ACL attributes on UNIX */
/*** FIXME ***/
+#define STREAM_SHA256_DIGEST 17 /* SHA-256 digest for the file */
+#define STREAM_SHA512_DIGEST 18 /* SHA-512 digest for the file */
+#define STREAM_SIGNED_DIGEST 19 /* Signed File Digest, ASN.1, DER Encoded */
+#define STREAM_ENCRYPTED_FILE_DATA 20 /* Encrypted, uncompressed data */
+#define STREAM_ENCRYPTED_WIN32_DATA 21 /* Encrypted, uncompressed Win32 BackupRead data */
+#define STREAM_ENCRYPTED_SESSION_DATA 22 /* Encrypted Session Data, ASN.1, DER Encoded */
+#define STREAM_ENCRYPTED_FILE_GZIP_DATA 23 /* Encrypted, compressed data */
+#define STREAM_ENCRYPTED_WIN32_GZIP_DATA 24 /* Encrypted, compressed Win32 BackupRead data */
+#define STREAM_ENCRYPTED_MACOS_FORK_DATA 25 /* Encrypted, uncompressed Mac resource fork */
/*
/* Definitions for upper part of type word (see above). */
#define AR_DATA_STREAM (1<<16) /* Data stream id present */
-/*
- * Internal code for Signature types
- */
-#define NO_SIG 0
-#define MD5_SIG 1
-#define SHA1_SIG 2
-
/*
* Tape label types -- stored in catalog
*/
#endif
-#ifdef HAVE_DARWIN_OS
+#if defined(HAVE_DARWIN_OS) || defined(HAVE_OSF1_OS)
/* Apparently someone forgot to wrap getdomainname as a C function */
extern "C" int getdomainname(char *name, int len);
#endif
+#ifdef HAVE_OSF1_OS
+extern "C" int mknod ( const char *path, int mode, dev_t device );
+#endif
+
#ifdef HAVE_CYGWIN
/* They don't really have it */
#undef HAVE_GETDOMAINNAME
#endif
+/* Disabled because it breaks internationalisation...
#undef HAVE_SETLOCALE
#ifdef HAVE_SETLOCALE
#include <locale.h>
#else
#define nl_langinfo(x) ("ANSI_X3.4-1968")
#endif
-
-/* Fake entry points if regex does not exist */
-#ifndef HAVE_REGEX_H
-#define regcomp(x, y, z) 1
-#define regfree(x)
-#define regerror(rc, preg, prbuf, len) bstrncpy(prbuf, "REGEX not available on this system.", len)
-#define regex_t int
-#define regmatch_t char
-#endif
+*/
#endif /* _BACONFIG_H */