#endif
/* Used to checking reference counts, most while doing perl5 stuff :-) */
-# ifdef REF_PRINT
-# undef REF_PRINT
-# define REF_PRINT(a,b) fprintf(stderr,"%08X:%4d:%s\n",(int)b,b->references,a)
+# if defined(OPENSSL_NO_STDIO)
+# if defined(REF_DEBUG)
+# error "REF_DEBUG requires stdio"
+# endif
+# if defined(REF_PRINT)
+# error "REF_PRINT requires stdio"
+# endif
# endif
-# if defined(OPENSSL_NO_STDIO) && defined(REF_CHECK)
-# error "Cannot have REF_CHECK with no-stdio"
+
+# if defined(REF_DEBUG)
+# define REF_ASSERT_ISNT(test) \
+ (void)((test) ? (OpenSSLDie(__FILE__, __LINE__, "refcount error"), 1) : 0)
+# else
+# define REF_ASSERT_ISNT(i)
# endif
-# if defined(OPENSSL_NO_STDIO) && defined(REF_PRINT)
-# error "Cannot have REF_PRINT with no-stdio"
+# ifdef REF_PRINT
+# define REF_PRINT_COUNT(a, b) \
+ fprintf(stderr, "%p:%4d:%s\n", b, b->references, a)
+# else
+# define REF_PRINT_COUNT(a, b)
# endif
+# define osslargused(x) (void)x
+
# ifndef DEVRANDOM
/*
* set this to a comma-separated list of 'random' device files to try out. My
# ifdef OPENSSL_NO_SOCK
# define OpenSSL_Write(a,b,c) (-1)
# define OpenSSL_Read(a,b,c) (-1)
-# define SHUTDOWN(fd) close(fd)
-# define SHUTDOWN2(fd) close(fd)
# elif !defined(__DJGPP__)
# if defined(_WIN32_WCE) && _WIN32_WCE<410
# define getservbyname _masked_declaration_getservbyname
# endif
# define OpenSSL_Write(a,b,c) send((a),(b),(c),0)
# define OpenSSL_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 OpenSSL_Write(a,b,c) write_s(a,b,c,0)
# define OpenSSL_Read(a,b,c) read_s(a,b,c)
-# define SHUTDOWN(fd) close_s(fd)
-# define SHUTDOWN2(fd) close_s(fd)
# endif
# elif defined(OPENSSL_SYS_NETWARE)
* configured for BSD
*/
# if defined(NETWARE_BSDSOCK)
+# include <netdb.h>
# include <sys/socket.h>
# include <netinet/in.h>
# include <sys/time.h>
# endif
# define OpenSSL_Write(a,b,c) send((a),(b),(c),0)
# define OpenSSL_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
# endif
# include <netinet/in.h>
# include <arpa/inet.h>
+# include <netinet/tcp.h>
# endif
# ifdef OPENSSL_SYS_AIX
# define OpenSSL_Read(a,b,c) read((a),(b),(c))
# define OpenSSL_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 */