1/* 2 * Dropbear - a SSH2 server 3 * 4 * Copyright (c) 2002,2003 Matt Johnston 5 * All rights reserved. 6 * 7 * Permission is hereby granted, free of charge, to any person obtaining a copy 8 * of this software and associated documentation files (the "Software"), to deal 9 * in the Software without restriction, including without limitation the rights 10 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 * copies of the Software, and to permit persons to whom the Software is 12 * furnished to do so, subject to the following conditions: 13 * 14 * The above copyright notice and this permission notice shall be included in 15 * all copies or substantial portions of the Software. 16 * 17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 23 * SOFTWARE. */ 24 25#ifndef _INCLUDES_H_ 26#define _INCLUDES_H_ 27 28 29#include "config.h" 30#include "options.h" 31#include "debug.h" 32 33#include <sys/types.h> 34#include <sys/ioctl.h> 35#include <sys/param.h> /* required for BSD4_4 define */ 36#include <sys/socket.h> 37#include <sys/stat.h> 38#include <sys/time.h> 39#include <sys/un.h> 40#include <sys/wait.h> 41#include <sys/resource.h> 42 43#include <stdio.h> 44#include <errno.h> 45#include <fcntl.h> 46#include <grp.h> 47#include <limits.h> 48#include <pwd.h> 49#include <signal.h> 50#include <stdlib.h> 51#include <string.h> 52#include <termios.h> 53#include <unistd.h> 54#include <syslog.h> 55#include <netdb.h> 56#include <ctype.h> 57#include <stdarg.h> 58#include <dirent.h> 59 60#ifdef HAVE_UTMP_H 61#include <utmp.h> 62#endif 63 64#ifdef HAVE_UTMPX_H 65#include <utmpx.h> 66#endif 67 68#ifdef HAVE_PATHS_H 69#include <paths.h> 70#endif 71 72#ifdef HAVE_LASTLOG_H 73#include <lastlog.h> 74#endif 75 76#ifdef HAVE_NETINET_IN_H 77#include <netinet/in.h> 78#endif 79 80#include <arpa/inet.h> 81 82/* netbsd 1.6 needs this to be included before netinet/ip.h for some 83 * undocumented reason */ 84#ifdef HAVE_NETINET_IN_SYSTM_H 85#include <netinet/in_systm.h> 86#endif 87 88#include <netinet/ip.h> 89 90#ifdef HAVE_NETINET_TCP_H 91#include <netinet/tcp.h> 92#endif 93 94#ifdef HAVE_INTTYPES_H 95#include <inttypes.h> 96#endif 97 98#ifdef HAVE_LIBUTIL_H 99#include <libutil.h> 100#endif 101 102#ifdef HAVE_CRYPT_H 103#include <crypt.h> 104#endif 105 106#ifndef DISABLE_ZLIB 107#include <zlib.h> 108#endif 109 110#ifdef HAVE_UTIL_H 111#include <util.h> 112#endif 113 114#ifdef HAVE_SHADOW_H 115#include <shadow.h> 116#endif 117 118#ifdef HAVE_LIBGEN_H 119#include <libgen.h> 120#endif 121 122#include "libtomcrypt/src/headers/tomcrypt.h" 123#include "libtommath/tommath.h" 124 125#include "compat.h" 126#include "fake-rfc2553.h" 127 128#ifndef HAVE_UINT16_T 129#ifndef HAVE_U_INT16_T 130typedef unsigned short u_int16_t; 131#endif /* HAVE_U_INT16_T */ 132typedef u_int16_t uint16_t; 133#endif /* HAVE_UINT16_T */ 134 135#ifndef LOG_AUTHPRIV 136#define LOG_AUTHPRIV LOG_AUTH 137#endif 138 139/* so we can avoid warnings about unused params (ie in signal handlers etc) */ 140#ifdef UNUSED 141#elif defined(__GNUC__) 142# define UNUSED(x) UNUSED_ ## x __attribute__((unused)) 143#elif defined(__LCLINT__) 144# define UNUSED(x) /*@unused@*/ x 145#else 146# define UNUSED(x) x 147#endif 148 149#endif /* _INCLUDES_H_ */ 150