includes.h revision 58531
1/*
2 *
3 * includes.h
4 *
5 * Author: Tatu Ylonen <ylo@cs.hut.fi>
6 *
7 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
8 *                    All rights reserved
9 *
10 * Created: Thu Mar 23 16:29:37 1995 ylo
11 *
12 * This file includes most of the needed system headers.
13 *
14 * $FreeBSD: head/crypto/openssh/includes.h 58531 2000-03-24 15:39:37Z brian $
15 */
16
17#ifndef INCLUDES_H
18#define INCLUDES_H
19
20#define RCSID(msg) \
21static /**/const char *const rcsid[] = { (char *)rcsid, "\100(#)" msg }
22
23#include <sys/types.h>
24#include <sys/socket.h>
25#include <sys/select.h>
26#include <sys/param.h>
27#include <sys/ioctl.h>
28#include <sys/stat.h>
29#include <sys/wait.h>
30#include <sys/time.h>
31#include <sys/un.h>
32#include <sys/resource.h>
33#include <machine/endian.h>
34
35#include <netinet/in.h>
36#include <netinet/in_systm.h>
37#include <netinet/tcp.h>
38#include <netinet/ip.h>
39#include <arpa/inet.h>
40#include <netdb.h>
41
42#include <stdio.h>
43#include <ctype.h>
44#include <errno.h>
45#include <fcntl.h>
46#include <signal.h>
47#include <termios.h>
48#include <stdlib.h>
49#include <string.h>
50#include <stdarg.h>
51#include <pwd.h>
52#include <grp.h>
53#include <unistd.h>
54#include <time.h>
55#include <paths.h>
56#include <dirent.h>
57
58#include "version.h"
59
60/* Define this to be the path of the xauth program. */
61#define XAUTH_PATH "/usr/X11R6/bin/xauth"
62
63/*
64 * Define this to use pipes instead of socketpairs for communicating with the
65 * client program.  Socketpairs do not seem to work on all systems.
66 * Although pipes are bi-directional in FreeBSD, using pipes here will
67 * make <stdin> uni-directional !
68 */
69/* #define USE_PIPES 1 */
70
71#if defined(__FreeBSD__) && __FreeBSD__ <= 3
72/*
73 * Data types.
74 */
75typedef u_char          sa_family_t;
76typedef u_int32_t       socklen_t;
77
78/*
79 * bsd-api-new-02a: protocol-independent placeholder for socket addresses
80 */
81#define	_SS_MAXSIZE	128
82#define	_SS_ALIGNSIZE	(sizeof(int64_t))
83#define	_SS_PAD1SIZE	(_SS_ALIGNSIZE - sizeof(u_char) * 2)
84#define	_SS_PAD2SIZE	(_SS_MAXSIZE - sizeof(u_char) * 2 - \
85				_SS_PAD1SIZE - _SS_ALIGNSIZE)
86
87struct sockaddr_storage {
88	u_char		ss_len;		/* address length */
89	sa_family_t	ss_family;	/* address family */
90	char		__ss_pad1[_SS_PAD1SIZE];
91	int64_t		__ss_align;	/* force desired structure storage alignment */
92	char		__ss_pad2[_SS_PAD2SIZE];
93};
94#endif
95
96#endif				/* INCLUDES_H */
97