1 /* 2 * Copyright (C) 1999-2001 Internet Software Consortium. 3 * 4 * Permission to use, copy, modify, and distribute this software for any 5 * purpose with or without fee is hereby granted, provided that the above 6 * copyright notice and this permission notice appear in all copies. 7 * 8 * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM 9 * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL 10 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL 11 * INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, 12 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING 13 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, 14 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION 15 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 */ 17 18 /* $Id: int.h,v 1.11 2001/01/09 21:58:39 bwelling Exp $ */ 19 20 #ifndef ISC_INT_H 21 #define ISC_INT_H 1 22 23 typedef char isc_int8_t; 24 typedef unsigned char isc_uint8_t; 25 typedef short isc_int16_t; 26 typedef unsigned short isc_uint16_t; 27 typedef int isc_int32_t; 28 typedef unsigned int isc_uint32_t; 29 typedef long long isc_int64_t; 30 typedef unsigned long long isc_uint64_t; 31 32 #define ISC_INT8_MIN -128 33 #define ISC_INT8_MAX 127 34 #define ISC_UINT8_MAX 255 35 36 #define ISC_INT16_MIN -32768 37 #define ISC_INT16_MAX 32767 38 #define ISC_UINT16_MAX 65535 39 40 /* 41 * Note that "int" is 32 bits on all currently supported Unix-like operating 42 * systems, but "long" can be either 32 bits or 64 bits, thus the 32 bit 43 * constants are not qualified with "L". 44 */ 45 #define ISC_INT32_MIN -2147483648 46 #define ISC_INT32_MAX 2147483647 47 #define ISC_UINT32_MAX 4294967295U 48 49 #define ISC_INT64_MIN -9223372036854775808LL 50 #define ISC_INT64_MAX 9223372036854775807LL 51 #define ISC_UINT64_MAX 18446744073709551615ULL 52 53 #endif /* ISC_INT_H */ 54