?? telnetd.h
字號:
/* * Copyright (c) 1989, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)telnetd.h 8.1 (Berkeley) 6/4/93 */#include <err.h>#include <stdio.h>#include <string.h>#include <stdlib.h>#define HAVE_STDARG_H#define HAVE_NETDB_H#define HAVE_SYS_STAT_H#define HAVE_SYSLOG_H#define HAVE_UTMP_H#define HAVE_SYS_TYPES_H#define HAVE_SYS_SOCKET_H#define HAVE_FCNTL_H#define HAVE_SYS_IOCTL_H#define HAVE_UNISTD_H#define HAVE_SYS_UTSNAME_H#define HAVE_UNAME#define HAVE_UTIL_H#define HAVE_OPENPTY#ifdef HAVE_SYS_TYPES_H#include <sys/types.h>#endif#ifdef HAVE_SYS_PARAM_H#include <sys/param.h>#endif#ifdef HAVE_SYS_SOCKET_H#include <sys/socket.h>#endif#ifdef TIME_WITH_SYS_TIME#include <sys/time.h>#include <time.h>#elif defined(HAVE_SYS_TIME_H)#include <sys/time.h>#else#include <time.h>#endif#ifdef HAVE_SYS_RESOURCE_H#include <sys/resource.h>#endif /* HAVE_SYS_RESOURCE_H */#ifdef HAVE_SYS_WAIT_H#include <sys/wait.h>#endif#ifdef HAVE_FCNTL_H#include <fcntl.h>#endif#ifdef HAVE_SYS_FILE_H#include <sys/file.h>#endif#ifdef HAVE_SYS_STAT_H#include <sys/stat.h>#endif/* including both <sys/ioctl.h> and <termios.h> in SunOS 4 generates a lot of warnings */#if defined(HAVE_SYS_IOCTL_H) && SunOS != 40#include <sys/ioctl.h>#endif#ifdef HAVE_SYS_FILIO_H#include <sys/filio.h>#endif#ifdef HAVE_NETINET_IN_H#include <netinet/in.h>#endif#ifdef HAVE_NETINET_IN6_H#include <netinet/in6.h>#endif#ifdef HAVE_NETINET6_IN6_H#include <netinet6/in6.h>#endif#ifdef HAVE_ARPA_INET_H#include <arpa/inet.h>#endif#include <signal.h>#include <errno.h>#ifdef HAVE_NETDB_H#include <netdb.h>#endif#ifdef HAVE_SYSLOG_H#include <syslog.h>#endif#include <ctype.h>#ifdef HAVE_UNISTD_H#include <unistd.h>#endif#include <termios.h>#ifdef HAVE_PTY_H#include <pty.h>#endif#include "defs.h"#ifndef _POSIX_VDISABLE# ifdef VDISABLE# define _POSIX_VDISABLE VDISABLE# else# define _POSIX_VDISABLE ((unsigned char)'\377')# endif#endif#ifdef HAVE_SYS_PTY_H#include <sys/pty.h>#endif#ifdef HAVE_SYS_SELECT_H#include <sys/select.h>#endif#ifdef HAVE_SYS_PTYIO_H#include <sys/ptyio.h>#endif#ifdef HAVE_SYS_UTSNAME_H#include <sys/utsname.h>#endif#ifdef HAVE_PATHS_H#include <paths.h>#endif#ifdef HAVE_ARPA_TELNET_H#include <arpa/telnet.h>#endif#ifdef HAVE_STDARG_H#include <stdarg.h>#endif#include "ext.h"#ifdef SOCKS#include <socks.h>/* This doesn't belong here. */struct tm *localtime(const time_t *);struct hostent *gethostbyname(const char *);#endif#ifdef KRB4#include <kerberosIV/krb.h>#endif#ifdef AUTHENTICATION#include <auth.h>#include <misc.h>#ifdef ENCRYPTION#include <encrypt.h>#endif#endif#ifdef HAVE_LIBUTIL_H#include <libutil.h>#endif/* Don't use the system login, use our version instead *//* BINDIR should be defined somewhere else... */#ifndef BINDIR#define BINDIR "/usr/bin"#endif#undef _PATH_LOGIN#define _PATH_LOGIN BINDIR "/login"/* fallbacks */#ifndef _PATH_DEV#define _PATH_DEV "/dev/"#endif#ifndef _PATH_TTY#define _PATH_TTY "/dev/tty"#endif /* _PATH_TTY */#ifdef DIAGNOSTICS#define DIAG(a,b) if (diagnostic & (a)) b#else#define DIAG(a,b)#endif/* other external variables */extern char **environ;/* prototypes *//* appends data to nfrontp and advances */int output_data (const char *format, ...)#ifdef __GNUC____attribute__ ((format (printf, 1, 2)))#endif;void esetenv(const char *, const char *, int); void mini_inetd(int);void socket_set_reuseaddr (int, int);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -