]> andersk Git - openssh.git/blobdiff - defines.h
- (djm) Define BROKEN_REALPATH for AIX, patch from
[openssh.git] / defines.h
index e20eed8ef86687ac58d64b3def64dc122642e67c..3f2b8de51c4f2aa8784985ccfc228bd9719a6452 100644 (file)
--- a/defines.h
+++ b/defines.h
@@ -3,48 +3,6 @@
 
 /* $Id$ */
 
-/* Necessary headers */
-
-#include <sys/types.h> /* For [u]intxx_t */
-#include <sys/socket.h> /* For SHUT_XXXX */
-#include <sys/param.h> /* For MAXPATHLEN and roundup() */
-#include <netinet/in_systm.h> /* For typedefs */
-#include <netinet/in.h> /* For IPv6 macros */
-#include <netinet/ip.h> /* For IPTOS macros */
-#ifdef HAVE_SYS_UN_H
-# include <sys/un.h> /* For SUN_LEN */
-#endif
-#ifdef HAVE_SYS_BITYPES_H
-# include <sys/bitypes.h> /* For u_intXX_t */
-#endif
-#ifdef HAVE_PATHS_H
-# include <paths.h> /* For _PATH_XXX */
-#endif
-#ifdef HAVE_LIMITS_H
-# include <limits.h> /* For PATH_MAX */
-#endif
-#ifdef HAVE_SYS_TIME_H
-# include <sys/time.h> /* For timersub */
-#endif
-#ifdef HAVE_MAILLOCK_H
-# include <maillock.h> /* For _PATH_MAILDIR */
-#endif
-#ifdef HAVE_SYS_CDEFS_H
-# include <sys/cdefs.h> /* For __P() */
-#endif
-#ifdef HAVE_SYS_SYSMACROS_H
-# include <sys/sysmacros.h> /* For MIN, MAX, etc */
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h> /* For S_* constants and macros */
-#endif
-#ifdef HAVE_NEXT
-#  include <libc.h>
-#endif
-
-#include <unistd.h> /* For STDIN_FILENO, etc */
-#include <termios.h> /* Struct winsize */
-#include <fcntl.h> /* For O_NONBLOCK */
 
 /* Constants */
 
@@ -126,6 +84,27 @@ enum
 # define S_IRWXO                       0000007 /* read, write, execute */
 #endif /* S_IXUSR */
 
+#if !defined(MAP_ANON) && defined(MAP_ANONYMOUS)
+#define MAP_ANON MAP_ANONYMOUS
+#endif
+
+#ifndef MAP_FAILED
+# define MAP_FAILED ((void *)-1)
+#endif
+
+/* *-*-nto-qnx doesn't define this constant in the system headers */
+#ifdef MISSING_NFDBITS
+# define       NFDBITS (8 * sizeof(unsigned long))
+#endif
+
+/*
+SCO Open Server 3 has INADDR_LOOPBACK defined in rpc/rpc.h but
+including rpc/rpc.h breaks Solaris 6
+*/
+#ifndef INADDR_LOOPBACK
+#define INADDR_LOOPBACK ((ulong)0x7f000001)
+#endif
+
 /* Types */
 
 /* If sys/types.h does not supply intXX_t, supply them ourselves */
@@ -146,7 +125,11 @@ typedef char int8_t;
 typedef short int int16_t;
 # else
 #  ifdef _CRAY
+#   if (SIZEOF_SHORT_INT == 4)
+typedef short int16_t;
+#   else
 typedef long  int16_t;
+#   endif
 #  else
 #   error "16 bit int type not found."
 #  endif /* _CRAY */
@@ -179,7 +162,11 @@ typedef unsigned char u_int8_t;
 typedef unsigned short int u_int16_t;
 #  else
 #   ifdef _CRAY
+#    if (SIZEOF_SHORT_INT == 4)
+typedef unsigned short u_int16_t;
+#    else
 typedef unsigned long  u_int16_t;
+#    endif
 #   else
 #    error "16 bit int type not found."
 #   endif
@@ -206,7 +193,6 @@ typedef long int int64_t;
 #  if (SIZEOF_LONG_LONG_INT == 8)
 typedef long long int int64_t;
 #   define HAVE_INT64_T 1
-#   define HAVE_LONG_LONG_INT
 #  endif
 # endif
 #endif
@@ -221,11 +207,14 @@ typedef unsigned long long int u_int64_t;
 #  endif
 # endif
 #endif
+#if !defined(HAVE_LONG_LONG_INT) && (SIZEOF_LONG_LONG_INT == 8)
+# define HAVE_LONG_LONG_INT 1
+#endif
 
-#ifndef HAVE_SOCKLEN_T
-typedef unsigned int socklen_t;
-# define HAVE_SOCKLEN_T
-#endif /* HAVE_SOCKLEN_T */
+#ifndef HAVE_U_CHAR
+typedef unsigned char u_char;
+# define HAVE_U_CHAR
+#endif /* HAVE_U_CHAR */
 
 #ifndef HAVE_SIZE_T
 typedef unsigned int size_t;
@@ -252,6 +241,11 @@ typedef int pid_t;
 # define HAVE_PID_T
 #endif /* HAVE_PID_T */
 
+#ifndef HAVE_SIG_ATOMIC_T
+typedef int sig_atomic_t;
+# define HAVE_SIG_ATOMIC_T
+#endif /* HAVE_SIG_ATOMIC_T */
+
 #ifndef HAVE_MODE_T
 typedef int mode_t;
 # define HAVE_MODE_T
@@ -278,6 +272,11 @@ struct winsize {
 };
 #endif
 
+/* *-*-nto-qnx does not define this type in the system headers */
+#ifdef MISSING_FD_MASK
+ typedef unsigned long int     fd_mask;
+#endif
+
 /* Paths */
 
 #ifndef _PATH_BSHELL
@@ -334,6 +333,16 @@ struct winsize {
 #define _PATH_XAUTH XAUTH_PATH
 #endif /* XAUTH_PATH */
 
+/* derived from XF4/xc/lib/dps/Xlibnet.h */
+#ifndef X_UNIX_PATH
+#  ifdef __hpux
+#    define X_UNIX_PATH "/var/spool/sockets/X11/%u"
+#  else
+#    define X_UNIX_PATH "/tmp/.X11-unix/X%u"
+#  endif
+#endif /* X_UNIX_PATH */
+#define _PATH_UNIX_X X_UNIX_PATH
+
 #ifndef _PATH_TTY
 # define _PATH_TTY "/dev/tty"
 #endif
@@ -379,13 +388,41 @@ struct winsize {
 # define __attribute__(x)
 #endif /* !defined(__GNUC__) || (__GNUC__ < 2) */
 
-#ifndef SUN_LEN
-#define SUN_LEN(su) \
-       (sizeof(*(su)) - sizeof((su)->sun_path) + strlen((su)->sun_path))
-#endif /* SUN_LEN */
+/* *-*-nto-qnx doesn't define this macro in the system headers */
+#ifdef MISSING_HOWMANY
+# define howmany(x,y)  (((x)+((y)-1))/(y))
+#endif
+
+#ifndef ALIGNBYTES
+#define ALIGNBYTES     (sizeof(int) - 1)
+#endif
+#ifndef ALIGN
+#define ALIGN(p)       (((u_int)(p) + ALIGNBYTES) &~ ALIGNBYTES)
+#endif
+#ifndef __CMSG_ALIGN
+#define        __CMSG_ALIGN(len)       ALIGN(len)
+#endif
+
+/* Length of the contents of a control message of length len */
+#ifndef CMSG_LEN
+#define        CMSG_LEN(len)   (__CMSG_ALIGN(sizeof(struct cmsghdr)) + (len))
+#endif
+
+/* Length of the space taken up by a padded control message of length len */
+#ifndef CMSG_SPACE
+#define        CMSG_SPACE(len) (__CMSG_ALIGN(sizeof(struct cmsghdr)) + __CMSG_ALIGN(len))
+#endif
 
 /* Function replacement / compatibility hacks */
 
+#if !defined(HAVE_GETADDRINFO) && (defined(HAVE_OGETADDRINFO) || defined(HAVE_NGETADDRINFO))
+# define HAVE_GETADDRINFO
+#endif
+
+#ifndef HAVE_GETOPT_OPTRESET
+#define getopt(ac, av, o)  BSDgetopt(ac, av, o)
+#endif
+
 /* In older versions of libpam, pam_strerror takes a single argument */
 #ifdef HAVE_OLD_PAM
 # define PAM_STRERROR(a,b) pam_strerror((b))
@@ -413,14 +450,6 @@ struct winsize {
 # define memmove(s1, s2, n) bcopy((s2), (s1), (n))
 #endif /* !defined(HAVE_MEMMOVE) && defined(HAVE_BCOPY) */
 
-#if !defined(HAVE_ATEXIT) && defined(HAVE_ON_EXIT)
-# define atexit(a, NULL) on_exit(a, NULL)
-#else
-# if defined(HAVE_XATEXIT)
-#  define atexit(a) xatexit(a)
-# endif /* defined(HAVE_XATEXIT) */
-#endif /* !defined(HAVE_ATEXIT) && defined(HAVE_ON_EXIT) */
-
 #if defined(HAVE_VHANGUP) && !defined(HAVE_DEV_PTMX)
 #  define USE_VHANGUP
 #endif /* defined(HAVE_VHANGUP) && !defined(HAVE_DEV_PTMX) */
@@ -429,11 +458,22 @@ struct winsize {
 # define getpgrp() getpgrp(0)
 #endif
 
+/* OPENSSL_free() is Free() in versions before OpenSSL 0.9.6 */
+#if !defined(OPENSSL_VERSION_NUMBER) || (OPENSSL_VERSION_NUMBER < 0x0090600f)
+# define OPENSSL_free(x) Free(x)
+#endif
+
+#if defined(HAVE___func__)
+#  define __FUNCTION__ __func__
+#elif !defined(HAVE___FUNCTION__)
+#  define __FUNCTION__ ""
+#endif
+
 /*
  * Define this to use pipes instead of socketpairs for communicating with the
  * client program.  Socketpairs do not seem to work on all systems.
  *
- * configure.in sets this for a few OS's which are known to have problems
+ * configure.ac sets this for a few OS's which are known to have problems
  * but you may need to set it yourself
  */
 /* #define USE_PIPES 1 */
@@ -442,27 +482,6 @@ struct winsize {
  ** login recorder definitions
  **/
 
-/* preprocess */
-
-#ifdef HAVE_UTMP_H
-#  ifdef HAVE_TIME_IN_UTMP
-#    include <time.h>
-#  endif
-#  include <utmp.h>
-#endif
-#ifdef HAVE_UTMPX_H
-#  ifdef HAVE_TV_IN_UTMPX
-#    include <sys/time.h>
-#  endif
-#  include <utmpx.h>
-#endif
-#ifdef HAVE_LASTLOG_H
-#  include <lastlog.h>
-#endif
-#ifdef HAVE_PATHS_H
-#  include <paths.h>
-#endif
-
 /* FIXME: put default paths back in */
 #ifndef UTMP_FILE
 #  ifdef _PATH_UTMP
This page took 0.042711 seconds and 4 git commands to generate.