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

📄 e_os.h

📁 一个命令行格式的MD5计算工具
💻 H
📖 第 1 页 / 共 2 页
字号:
#      include <unixlib.h>#    endif#    define OPENSSL_CONF	"openssl.cnf"#    define SSLEAY_CONF		OPENSSL_CONF#    define RFILE		".rnd"#    define LIST_SEPARATOR_CHAR ','#    define NUL_DEV		"NLA0:"  /* We don't have any well-defined random devices on VMS, yet... */#    undef DEVRANDOM  /* We need to do this since VMS has the following coding on status codes:     Bits 0-2: status type: 0 = warning, 1 = success, 2 = error, 3 = info ...               The important thing to know is that odd numbers are considered	       good, while even ones are considered errors.     Bits 3-15: actual status number     Bits 16-27: facility number.  0 is considered "unknown"     Bits 28-31: control bits.  If bit 28 is set, the shell won't try to                 output the message (which, for random codes, just looks ugly)     So, what we do here is to change 0 to 1 to get the default success status,     and everything else is shifted up to fit into the status number field, and     the status is tagged as an error, which I believe is what is wanted here.     -- Richard Levitte  */#    define EXIT(n)		do { int __VMS_EXIT = n; \                                     if (__VMS_EXIT == 0) \				       __VMS_EXIT = 1; \				     else \				       __VMS_EXIT = (n << 3) | 2; \                                     __VMS_EXIT |= 0x10000000; \				     exit(__VMS_EXIT); } while(0)#    define NO_SYS_PARAM_H#  elif defined(OPENSSL_SYS_NETWARE)#    include <fcntl.h>#    include <unistd.h>#    define NO_SYS_TYPES_H#    undef  DEVRANDOM#    ifdef NETWARE_CLIB#      define getpid GetThreadID#    endif#    define NO_SYSLOG#    define _setmode setmode#    define _kbhit kbhit#    define _O_TEXT O_TEXT#    define _O_BINARY O_BINARY#    define OPENSSL_CONF   "openssl.cnf"#    define SSLEAY_CONF    OPENSSL_CONF#    define RFILE    ".rnd"#    define LIST_SEPARATOR_CHAR ';'#    define EXIT(n)  { if (n) printf("ERROR: %d\n", (int)n); exit(n); }#  else     /* !defined VMS */#    ifdef OPENSSL_SYS_MPE#      define NO_SYS_PARAM_H#    endif#    ifdef OPENSSL_UNISTD#      include OPENSSL_UNISTD#    else#      include <unistd.h>#    endif#    ifndef NO_SYS_TYPES_H#      include <sys/types.h>#    endif#    if defined(NeXT) || defined(OPENSSL_SYS_NEWS4)#      define pid_t int /* pid_t is missing on NEXTSTEP/OPENSTEP                         * (unless when compiling with -D_POSIX_SOURCE,                         * which doesn't work for us) */#    endif#    if defined(NeXT) || defined(OPENSSL_SYS_NEWS4) || defined(OPENSSL_SYS_SUNOS)#      define ssize_t int /* ditto */#    endif#    ifdef OPENSSL_SYS_NEWS4 /* setvbuf is missing on mips-sony-bsd */#      define setvbuf(a, b, c, d) setbuffer((a), (b), (d))       typedef unsigned long clock_t;#    endif#    define OPENSSL_CONF	"openssl.cnf"#    define SSLEAY_CONF		OPENSSL_CONF#    define RFILE		".rnd"#    define LIST_SEPARATOR_CHAR ':'#    define NUL_DEV		"/dev/null"#    define EXIT(n)		exit(n)#  endif#  define SSLeay_getpid()	getpid()#endif/*************/#ifdef USE_SOCKETS#  if defined(WINDOWS) || defined(MSDOS)      /* windows world */#    ifdef OPENSSL_NO_SOCK#      define SSLeay_Write(a,b,c)	(-1)#      define SSLeay_Read(a,b,c)	(-1)#      define SHUTDOWN(fd)		close(fd)#      define SHUTDOWN2(fd)		close(fd)#    elif !defined(__DJGPP__)#      include <winsock.h>extern HINSTANCE _hInstance;#      ifdef _WIN64/* * Even though sizeof(SOCKET) is 8, it's safe to cast it to int, because * the value constitutes an index in per-process table of limited size * and not a real pointer. */#        define socket(d,t,p)	((int)socket(d,t,p))#        define accept(s,f,l)	((int)accept(s,f,l))#      endif#      define SSLeay_Write(a,b,c)	send((a),(b),(c),0)#      define SSLeay_Read(a,b,c)	recv((a),(b),(c),0)#      define SHUTDOWN(fd)		{ shutdown((fd),0); closesocket(fd); }#      define SHUTDOWN2(fd)		{ shutdown((fd),2); closesocket(fd); }#    else#      define SSLeay_Write(a,b,c)	write_s(a,b,c,0)#      define SSLeay_Read(a,b,c)	read_s(a,b,c)#      define SHUTDOWN(fd)		close_s(fd)#      define SHUTDOWN2(fd)		close_s(fd)#    endif#  elif defined(MAC_OS_pre_X)#    include "MacSocket.h"#    define SSLeay_Write(a,b,c)		MacSocket_send((a),(b),(c))#    define SSLeay_Read(a,b,c)		MacSocket_recv((a),(b),(c),true)#    define SHUTDOWN(fd)		MacSocket_close(fd)#    define SHUTDOWN2(fd)		MacSocket_close(fd)#  elif defined(OPENSSL_SYS_NETWARE)         /* NetWare uses the WinSock2 interfaces by default, but can be configured for BSD         */#      if defined(NETWARE_BSDSOCK)#        include <sys/socket.h>#        include <netinet/in.h>#        include <sys/time.h>#        include <sys/select.h>#        define INVALID_SOCKET (int)(~0)#      else#        include <novsock2.h>#      endif#      define SSLeay_Write(a,b,c)   send((a),(b),(c),0)#      define SSLeay_Read(a,b,c) recv((a),(b),(c),0)#      define SHUTDOWN(fd)    { shutdown((fd),0); closesocket(fd); }#      define SHUTDOWN2(fd)      { shutdown((fd),2); closesocket(fd); }#  else#    ifndef NO_SYS_PARAM_H#      include <sys/param.h>#    endif#    ifdef OPENSSL_SYS_VXWORKS#      include <time.h> #    elif !defined(OPENSSL_SYS_MPE)#      include <sys/time.h> /* Needed under linux for FD_XXX */#    endif#    include <netdb.h>#    if defined(OPENSSL_SYS_VMS_NODECC)#      include <socket.h>#      include <in.h>#      include <inet.h>#    else#      include <sys/socket.h>#      ifdef FILIO_H#        include <sys/filio.h> /* Added for FIONBIO under unixware */#      endif#      include <netinet/in.h>#      include <arpa/inet.h>#    endif#    if defined(NeXT) || defined(_NEXT_SOURCE)#      include <sys/fcntl.h>#      include <sys/types.h>#    endif#    ifdef OPENSSL_SYS_AIX#      include <sys/select.h>#    endif#    ifdef __QNX__#      include <sys/select.h>#    endif#    if defined(sun)#      include <sys/filio.h>#    else#      ifndef VMS#        include <sys/ioctl.h>#      else	 /* ioctl is only in VMS > 7.0 and when socketshr is not used */#        if !defined(TCPIP_TYPE_SOCKETSHR) && defined(__VMS_VER) && (__VMS_VER > 70000000)#          include <sys/ioctl.h>#        endif#      endif#    endif#    ifdef VMS#      include <unixio.h>#      if defined(TCPIP_TYPE_SOCKETSHR)#        include <socketshr.h>#      endif#    endif#    define SSLeay_Read(a,b,c)     read((a),(b),(c))#    define SSLeay_Write(a,b,c)    write((a),(b),(c))#    define SHUTDOWN(fd)    { shutdown((fd),0); closesocket((fd)); }#    define SHUTDOWN2(fd)   { shutdown((fd),2); closesocket((fd)); }#    ifndef INVALID_SOCKET#    define INVALID_SOCKET	(-1)#    endif /* INVALID_SOCKET */#  endif#endif#if defined(__ultrix)#  ifndef ssize_t#    define ssize_t int #  endif#endif#if defined(sun) && !defined(__svr4__) && !defined(__SVR4)  /* include headers first, so our defines don't break it */#include <stdlib.h>#include <string.h>  /* bcopy can handle overlapping moves according to SunOS 4.1.4 manpage */# define memmove(s1,s2,n) bcopy((s2),(s1),(n))# define strtoul(s,e,b) ((unsigned long int)strtol((s),(e),(b)))extern char *sys_errlist[]; extern int sys_nerr;# define strerror(errnum) \	(((errnum)<0 || (errnum)>=sys_nerr) ? NULL : sys_errlist[errnum])  /* Being signed SunOS 4.x memcpy breaks ASN1_OBJECT table lookup */#include "crypto/o_str.h"# define memcmp OPENSSL_memcmp#endif#ifndef OPENSSL_EXIT# if defined(MONOLITH) && !defined(OPENSSL_C)#  define OPENSSL_EXIT(n) return(n)# else#  define OPENSSL_EXIT(n) do { EXIT(n); return(n); } while(0)# endif#endif/***********************************************//* do we need to do this for getenv. * Just define getenv for use under windows */#ifdef WIN16/* How to do this needs to be thought out a bit more.... *//*char *GETENV(char *);#define Getenv	GETENV*/#define Getenv	getenv#else#define Getenv getenv#endif#define DG_GCC_BUG	/* gcc < 2.6.3 on DGUX */#ifdef sgi#define IRIX_CC_BUG	/* all version of IRIX I've tested (4.* 5.*) */#endif#ifdef OPENSSL_SYS_SNI#define IRIX_CC_BUG	/* CDS++ up to V2.0Bsomething suffered from the same bug.*/#endif#if defined(OPENSSL_SYS_WINDOWS)#  define strcasecmp _stricmp#  define strncasecmp _strnicmp#elif defined(OPENSSL_SYS_VMS)/* VMS below version 7.0 doesn't have strcasecmp() */#  include "o_str.h"#  define strcasecmp OPENSSL_strcasecmp#  define strncasecmp OPENSSL_strncasecmp#  define OPENSSL_IMPLEMENTS_strncasecmp#elif defined(OPENSSL_SYS_OS2) && defined(__EMX__)#  define strcasecmp stricmp#  define strncasecmp strnicmp#elif defined(OPENSSL_SYS_NETWARE) && defined(NETWARE_CLIB)#  define strcasecmp stricmp#  define strncasecmp strnicmp#else#  ifdef NO_STRINGS_H    int	strcasecmp();    int	strncasecmp();#  else#    include <strings.h>#  endif /* NO_STRINGS_H */#endif#if defined(OPENSSL_SYS_OS2) && defined(__EMX__)# include <io.h># include <fcntl.h># define NO_SYSLOG#endif/* vxworks */#if defined(OPENSSL_SYS_VXWORKS)#include <ioLib.h>#include <tickLib.h>#include <sysLib.h>#define TTY_STRUCT int#define sleep(a) taskDelay((a) * sysClkRateGet())#include <vxWorks.h>#include <sockLib.h>#include <taskLib.h>#define getpid taskIdSelf/* NOTE: these are implemented by helpers in database app! * if the database is not linked, we need to implement them * elswhere */struct hostent *gethostbyname(const char *name);struct hostent *gethostbyaddr(const char *addr, int length, int type);struct servent *getservbyname(const char *name, const char *proto);#endif/* end vxworks */#ifdef  __cplusplus}#endif#endif

⌨️ 快捷键说明

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