⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wwwsys.h

📁 firtext搜索引擎源码
💻 H
📖 第 1 页 / 共 3 页
字号:
less than 10. It works.*/#ifdef VMS#include "HTVMSUtils.h"#define CACHE_FILE_PREFIX	"SYS$LOGIN:Z_"#define DEFAULT_SUFFIXES	"._"#define HAVE_CUSERID#ifdef WIN_TCP#define NETREAD(s,b,l)	((s)>10 ? netread((s),(b),(l)) : read((s),(b),(l)))#define NETWRITE(s,b,l)	((s)>10 ? netwrite((s),(b),(l)) : write((s),(b),(l)))#define NETCLOSE(s) 	((s)>10 ? netclose(s) : close(s))#endif /* WIN_TCP */#ifdef MULTINET#undef NETCLOSE#undef NETREAD#undef NETWRITE#define NETREAD(s,b,l)	((s)>10 ? socket_read((s),(b),(l)) : read((s),(b),(l)))#define NETWRITE(s,b,l)	((s)>10 ? socket_write((s),(b),(l)) : \				write((s),(b),(l)))#define NETCLOSE(s) 	((s)>10 ? socket_close(s) : close(s))#define IOCTL(s,c,a)	socket_ioctl(s,c,a);#endif /* MULTINET */#ifdef DECNET#define DNP_OBJ 80	/* This one doesn't look busy, but we must check */			/* That one was for decnet */#undef SELECT		/* not supported */#define NETREAD(s,b,l)	((s)>10 ? recv((s),(b),(l),0) : read((s),(b),(l)))#define NETWRITE(s,b,l)	((s)>10 ? send((s),(b),(l),0) : write((s),(b),(l)))#define NETCLOSE(s) 	((s)>10 ? socket_close(s) : close(s))#undef HAVE_GETHOSTNAME			/* Decnet doesn't have a name server */#endif /* Decnet */#undef HAVE_GETDOMAINNAME         /*	Certainly this works for UCX and Multinet; not tried for Wollongong*/#ifdef MULTINET#include <time.h>#ifdef __TIME_T#define __TYPES#define __TYPES_LOADED#endif /* __TIME_T */#include <multinet_root:[multinet.include.sys]types.h>#include <multinet_root:[multinet.include]errno.h>#ifdef __TYPES#define __TIME_T#endif /* __TYPE */#ifdef __TIME_LOADED#define __TIME#endif /* __TIME_LOADED */#include <multinet_root:[multinet.include.sys]time.h>#else /* not MULTINET */#include <types.h>#include <errno.h>#include <time.h>#endif /* not MULTINET */#include string#ifndef STDIO_H#include <stdio>#define STDIO_H#endif#include file#ifndef DECNET  /* Why is it used at all ? Types conflict with "types.h> */#include unixio#endif#define INCLUDES_DONE#ifdef MULTINET  /* Include from standard Multinet directories */#include <multinet_root:[multinet.include.sys]socket.h>#ifdef __TIME_LOADED  /* defined by sys$library:time.h */#define __TIME  /* to avoid double definitions in next file */#endif#include <multinet_root:[multinet.include.netinet]in.h>#include <multinet_root:[multinet.include.arpa]inet.h>#include <multinet_root:[multinet.include]netdb.h>#include <multinet_root:[multinet.include.sys]ioctl.h>#else  /* not multinet */#ifdef DECNET#include <types.h>  /* for socket.h */#include <socket.h>#include <dn>#include <dnetdb>#else /* UCX or WIN */#ifdef CADDR_T#define __CADDR_T#endif /* problem with xlib.h inclusion */#include <socket.h>#include <in.h>#include <inet.h>#include <netdb.h>#include <ucx$inetdef.h>#endif  /* not DECNET */#endif  /* of Multinet or other TCP includes */#define TCP_INCLUDES_DONE#ifdef UCX#define SIMPLE_TELNET#endif/*On VMS directory browsing is available through a separate copy of dirent.c.The definition of R_OK seem to be missing from the system include files...*/#define USE_DIRENT#define GOT_READ_DIR#include <dirent.h>#define DIR struct dirent#define R_OK 4/*On VMS machines, the linker needs to be told to put global data sectionsinto a data segment using these storage classes. (MarkDonszelmann)*/#ifdef VAXC#define GLOBALDEF globaldef#define GLOBALREF globalref#endif /*  VAXC */#endif	/* vms *//*On non-VMS machines, the GLOBALDEF and GLOBALREF storage types default tonormal C storage types.*/#ifndef GLOBALREF#define GLOBALDEF#define GLOBALREF extern#endif/*On non-VMS machines STAT should be stat, unless that was overriddensomewhere above. On VMS machines STAT is a function that convertsdirectories and devices so that you can stat them.*/#ifdef VMStypedef unsigned long mode_t;#define HT_STAT		HTStat#define HT_LSTAT	HTStat#else#ifndef HT_STAT#define HT_STAT		stat#endif#ifndef HT_LSTAT#define HT_LSTAT	lstat#endif#endif /* non VMS *//*(  Dynamic Memory)Replace memory allocation and free C RTL functions with VAXC$xxx_OPT alternativesfor VAXC (but not DECC) on VMS. This makes a big performance difference.(Foteos Macrides). Also have a look at the DynamicMemory Module for how to handle malloc andcalloc.*/#ifdef VMS#include <stdio.h>#include <stdlib.h>#include <unixlib.h>#include <ctype.h>#if defined(VAXC) && !defined(__DECC)#define malloc	VAXC$MALLOC_OPT#define calloc	VAXC$CALLOC_OPT#define free	VAXC$FREE_OPT#define cfree	VAXC$CFREE_OPT#define realloc	VAXC$REALLOC_OPT#endif /* VAXC but not DECC */#define unlink remove#define gmtime localtime#include <stat.h>#define S_ISDIR(m)      (((m)&S_IFMT) == S_IFDIR)#define S_ISREG(m)      (((m)&S_IFMT) == S_IFREG)#define putenv HTVMS_putenv#endif /* VMS *//*(  Strftime and other time stuff)*/#ifdef VMS#ifndef DECC#undef  HAVE_STRFTIME#endif#undef  HAVE_MKTIME#undef  HAVE_TIMEGM#define NO_GMTOFF#undef  HAVE_TIMEZONE#endif/*(  Definition of Errno)*/#ifdef VMS#ifndef __DECCextern int uerrno;	/* Deposit of error info (as per errno.h) */extern volatile noshare int socket_errno; /* socket VMS error info                                           (used for translation of vmserrno) */extern volatile noshare int vmserrno;	/* Deposit of VMS error info */extern volatile noshare int errno;  /* noshare to avoid PSECT conflict */#define ERRNO_DONE#endif /* not DECC */#endif /* VMS *//*  !  Platform Independent Stuff!Here we use all the knowledge we got above....  Include Files.This file includes all system header files that are needed, iff they exist.Their existance is discovered by configure.*//* stdio.h */#ifdef HAVE_STDIO_H#include <stdio.h>#endif/* types.h */#ifdef HAVE_SYS_TYPES_H#include <sys/types.h>#else#ifdef HAVE_TYPES_H#include <types.h>#endif#endif/* unistd.h */#ifdef HAVE_UNISTD_H#include <unistd.h>#else#ifdef HAVE_SYS_UNISTD_H#include <sys/unistd.h>#endif#endif/* fcntl.h */#ifdef HAVE_FCNTL_H#include <fcntl.h>#else#ifdef HAVE_SYS_FCNTL_H#include <sys/fcntl.h>#endif#endif/* sys/machine.h */#ifdef HAVE_SYS_MACHINE_H#include <sys/machine.h>#endif/* limits.h */#ifdef HAVE_SYS_LIMITS_H#include <sys/limits.h>#else#ifdef HAVE_LIMITS_H#include <limits.h>#endif#endif/* stat.h */#ifdef HAVE_SYS_STAT_H#include <sys/stat.h>#else#ifdef HAVE_STAT_H#include <stat.h>#endif#endif/* Patch for problems in glibc6 */#if defined(__GLIBC__)#undef S_IFMT#undef S_IFDIR#define S_IFMT __S_IFMT#define S_IFDIR __S_IFDIR#endif/* in.h */#ifdef HAVE_NETINET_IN_H#include <netinet/in.h>#else#ifdef HAVE_IN_H#include <in.h>#endif#endif/* tcp.h */#ifdef HAVE_NETINET_TCP_H#include <netinet/tcp.h>#else#ifdef HAVE_TCP_H#include <tcp.h>#endif#endif/* file.h */#ifdef HAVE_SYS_FILE_H#include <sys/file.h>#endif/* systeminfo.h */#ifdef HAVE_SYS_SYSTEMINFO_H#include <sys/systeminfo.h>#endif/* ioctl.h */#ifdef HAVE_SYS_IOCTL_H#include <sys/ioctl.h>#endif/* termios.h */#ifdef HAVE_TERMIOS_H#include <termios.h>#endif/* time.h */#ifdef TIME_WITH_SYS_TIME#include <sys/time.h>#include <time.h>#else#ifdef HAVE_SYS_TIME_H#include <sys/time.h>#else#ifdef HAVE_TIME_H#include <time.h>#endif#endif#endif/* string{,s}.h */#ifdef HAVE_STRING_H#include <string.h>#else#ifdef HAVE_STRINGS_H#include <strings.h>#endif#endif/* syslog.h */#ifdef HAVE_SYSLOG_H#include <syslog.h>#else#ifdef HAVE_SYS_SYSLOG_H#include <sys/socket.h>#endif#endif/* socket.h */#ifdef HAVE_SYS_SOCKET_H#include <sys/socket.h>#else#ifdef HAVE_SOCKET_H#include <socket.h>#endif#endif/* socket.ext.h */#ifdef HAVE_SOCKET_EXT_H#include <socket.ext.h>#endif/* appkit.h */#ifdef HAVE_APPKIT_APPKIT_H#include <appkit/appkit.h>#else#ifdef HAVE_APPKIT_H#include <appkit.h>#endif#endif/* dn.h */#ifdef HAVE_DN_H#include <dn.h>#endif/* ipc.h */#ifdef HAVE_SYS_IPC_H#include <sys/ipc.h>#endif/* errno.h */#ifdef HAVE_ERRNO_H#include <errno.h>#else#ifdef HAVE_SYS_ERRNO_H#include <sys/errno.h>#else#ifdef HAVE_NET_ERRNO_H#include <net/errno.h>#endif#endif#endif/* pwd.h */#ifdef HAVE_PWD_H#include <pwd.h>#endif/* grp.h */#ifdef HAVE_GRP_H#include <grp.h>#endif/* inet.h */#ifdef HAVE_ARPA_INET_H#include <arpa/inet.h>#else#ifdef HAVE_INET_H#include <inet.h>#endif#endif/* netdb.h */#ifdef HAVE_NETDB_H#include <netdb.h>#endif/* manifest.h */#ifdef HAVE_MANIFEST_H#include <manifest.h>#endif/* bsdtypes.h */#ifdef HAVE_BSDTYPES_H#include <bsdtypes.h>#endif/* stdefs.h */#ifdef HAVE_STDEFS_H#include <stdefs.h>#endif/* bsdtime.h */#ifdef HAVE_BSDTIME_H#include <bsdtime.h>#endif/* select.h */#ifdef HAVE_SYS_SELECT_H#include <sys/select.h>#else#ifdef HAVE_SELECT_H#include <select.h>#endif#endif/* dnetdb.h */#ifdef HAVE_DNETDB_H#include <dnetdb.h>#endif/* ucx$inetdef.h */#ifdef HAVE_UCX_INETDEF_H#include <ucx$inetdef.h>#endif/* libc.h */#ifdef HAVE_LIBC_H#include <libc.h>#endif/* stdlib.h */#ifdef HAVE_STDLIB_H#include <stdlib.h>#endif/* malloc.h */#ifdef HAVE_MALLOC_H#include <malloc.h>#endif/* memory.h */#ifdef HAVE_MEMORY_H#include <memory.h>#endif/* unixlib.h */#ifdef HAVE_UNIXLIB_H#include <unixlib.h>#endif/* direct.h */#ifdef HAVE_DIRECT_H#include <direct.h>#endif/* ctype.h */#ifdef HAVE_CTYPE_H#include <ctype.h>#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -