3 * Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA
6 * Redistribution and use in source and binary forms are permitted only
7 * as authorized by the OpenLDAP Public License. A copy of this
8 * license is available at http://www.OpenLDAP.org/license.html or
9 * in file LICENSE in the top-level directory of the distribution.
15 #if defined( LDAP_INT4_TYPE ) && defined( LDAP_INT2_TYPE )
16 /* cross compilers should define LDAP_INT{2,4}_TYPE in CPPFLAS */
17 typedef LDAP_INT4_TYPE LDAP_INT4;
18 typedef signed LDAP_INT4_TYPE LDAP_SINT4;
19 typedef unsigned LDAP_INT4_TYPE LDAP_UINT4;
21 typedef LDAP_INT2_TYPE LDAP_INT2;
22 typedef signed LDAP_INT2_TYPE LDAP_SINT2;
23 typedef unsigned LDAP_INT2_TYPE LDAP_UINT2;
26 /* use autoconf defines to provide sized typedefs */
28 typedef long LDAP_INT4;
29 typedef signed long LDAP_SINT4;
30 typedef unsigned long LDAP_UINT4;
31 # elif SIZEOF_INT == 4
32 typedef int LDAP_INT4;
33 typedef signed int LDAP_SINT4;
34 typedef unsigned int LDAP_UINT4;
38 # if SIZEOF_SHORT == 2
39 typedef short LDAP_INT2;
40 typedef signed short LDAP_SINT2;
41 typedef unsigned short LDAP_UINT2;
42 # elif SIZEOF_INT == 2
43 typedef int LDAP_INT2;
44 typedef signed int LDAP_SINT2;
45 typedef unsigned int LDAP_UINT2;
50 /* cross compilers should define BYTE_ORDER in CPPFLAGS */
53 * Definitions for byte order, according to byte significance from low
56 #define LITTLE_ENDIAN 1234 /* LSB first: i386, vax */
57 #define BIG_ENDIAN 4321 /* MSB first: 68000, ibm, net */
58 #define PDP_ENDIAN 3412 /* LSB first in word, MSW first in long */
60 /* assume autoconf's AC_C_BIGENDIAN has been ran */
61 /* if it hasn't, we assume (maybe falsely) the order is LITTLE ENDIAN */
62 # ifdef WORDS_BIGENDIAN
63 # define BYTE_ORDER BIG_ENDIAN
65 # define BYTE_ORDER LITTLE_ENDIAN
68 #endif /* BYTE_ORDER */
70 #endif /* _AC_BYTES_H */