X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=bacula%2Fsrc%2Fbc_types.h;h=a27c3270dfee06b1f0f03341a6ae50ad320caf44;hb=626b80d3bc5887e032753eac3e4b98fa0f15210f;hp=2ab537fd64ec61de4df07a9eb5fe078ddde53197;hpb=1ef84681d13d0c355d6ae78579d2afe1c8d8d0e2;p=bacula%2Fbacula diff --git a/bacula/src/bc_types.h b/bacula/src/bc_types.h index 2ab537fd64..a27c3270df 100644 --- a/bacula/src/bc_types.h +++ b/bacula/src/bc_types.h @@ -8,28 +8,29 @@ 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. + Version $Id$ + */ /* - - Copyright (C) 2000, 2001 Kern Sibbald and John Walker + Copyright (C) 2000, 2001, 2002 Kern Sibbald and John Walker 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. + 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. 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. + 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., 59 Temple Place - Suite 330, Boston, + MA 02111-1307, USA. */ @@ -37,8 +38,17 @@ #ifndef __bc_types_INCLUDED #define __bc_types_INCLUDED -/* ****FIXME***** implement 64 bit file addresses ! */ -#define faddr_t long +typedef char POOLMEM; +#define mp_chr(x) x +#ifdef xxxxx +#define mp_chr(x) ((char*)(x)) +class POOLMEM { +public: + POOLMEM(); + operator char * const() { return this; } +}; +#endif + /* Types */ @@ -78,17 +88,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 @@ -110,7 +120,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 @@ -122,6 +132,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 @@ -130,7 +142,7 @@ 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 @@ -168,6 +180,21 @@ typedef float float32_t; #define uint64_t u_int64_t #define uintmax_t u_intmax_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 +#define int_least16_t int32_t +#endif + +#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