X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=apps%2Fs_socket.c;h=888b66df18ea1d9e8a7ed05fb11f94abe6a67877;hp=1d8587f1f5c11853684ca5e952d1997ad5180c1a;hb=cd3c54e50f0f0b3839bb70fabbe222e389732146;hpb=7d7d2cbcb02206f3393681f2bce198e11e2e185b diff --git a/apps/s_socket.c b/apps/s_socket.c index 1d8587f1f5..888b66df18 100644 --- a/apps/s_socket.c +++ b/apps/s_socket.c @@ -56,20 +56,21 @@ * [including the GNU Public Licence.] */ +#include +#include +#include +#include +#include + /* With IPv6, it looks like Digital has mixed up the proper order of recursive header file inclusion, resulting in the compiler complaining that u_int isn't defined, but only if _POSIX_C_SOURCE is defined, which is needed to have fileno() declared correctly... So let's define u_int */ -#if defined(__DECC) && !defined(__U_INT) +#if defined(VMS) && defined(__DECC) && !defined(__U_INT) #define __U_INT typedef unsigned int u_int; #endif -#include -#include -#include -#include -#include #define USE_SOCKETS #define NON_MAIN #include "apps.h" @@ -78,12 +79,12 @@ typedef unsigned int u_int; #include "s_apps.h" #include +#ifdef VMS #if (__VMS_VER < 70000000) /* FIONBIO used as a switch to enable ioctl, and that isn't in VMS < 7.0 */ #undef FIONBIO #endif -#ifdef VMS /* for vfork() */ -#include +#include /* for vfork() */ #endif static struct hostent *GetHostByName(char *name); @@ -255,7 +256,9 @@ int nbio_init_client_ip(int *sock, unsigned char ip[4], int port) if (*sock <= 0) { +#ifdef FIONBIO unsigned long l=1; +#endif s=socket(AF_INET,SOCK_STREAM,SOCKET_PROTOCOL); if (s == INVALID_SOCKET) { perror("socket"); return(0); } @@ -387,7 +390,7 @@ redoit: memset((char *)&from,0,sizeof(from)); len=sizeof(from); - /* Note: under VMS with SOCKETSHR the third parameter is currently + /* Note: under VMS with SOCKETSHR the fourth parameter is currently * of type (int *) whereas under other systems it is (void *) if * you don't have a cast it will choke the compiler: if you do * have a cast then you can either go for (int *) or (void *). @@ -492,7 +495,7 @@ int host_ip(char *str, unsigned char ip[4]) unsigned int in[4]; int i; - if (sscanf(str,"%d.%d.%d.%d",&(in[0]),&(in[1]),&(in[2]),&(in[3])) == 4) + if (sscanf(str,"%u.%u.%u.%u",&(in[0]),&(in[1]),&(in[2]),&(in[3])) == 4) { for (i=0; i<4; i++) if (in[i] > 255)