Remove redundant ifdef.
[openssl.git] / apps / s_time.c
index 7571c208d4b7b1082f74ac92e256ee9097d8bf7d..a529e2a1190df6888acc17ad7d1575ec96732e41 100644 (file)
@@ -59,7 +59,7 @@
 #define NO_SHUTDOWN
 
 /*-----------------------------------------
-   cntime - SSL client connection timer program
+   s_time - SSL client connection timer program
    Written and donated by Larry Streepy <streepy@healthcare.com>
   -----------------------------------------*/
 
 #include <stdlib.h>
 #include <string.h>
 
+#if defined(NO_RSA) && !defined(NO_SSL2)
+#define NO_SSL2
+#endif
+
 #ifdef NO_STDIO
 #define APPS_WIN16
 #endif
-#include "x509.h"
-#include "ssl.h"
-#include "pem.h"
 #define USE_SOCKETS
+#include <openssl/x509.h>
+#include <openssl/ssl.h>
+#include <openssl/pem.h>
 #include "apps.h"
 #include "s_apps.h"
-#include "err.h"
+#include <openssl/err.h>
 #ifdef WIN32_STUFF
 #include "winmain.h"
 #include "wintext.h"
 #endif
 
-#ifndef MSDOS
+#if !defined(MSDOS) && (!defined(VMS) || defined(__DECC))
 #define TIMES
 #endif
 
-#ifndef VMS
 #ifndef _IRIX
 #include <time.h>
 #endif
 #include <sys/types.h>
 #include <sys/times.h>
 #endif
-#else /* VMS */
-#include <types.h>
-struct tms {
-       time_t tms_utime;
-       time_t tms_stime;
-       time_t tms_uchild;      /* I dunno...  */
-       time_t tms_uchildsys;   /* so these names are a guess :-) */
-       }
+
+/* Depending on the VMS version, the tms structure is perhaps defined.
+   The __TMS macro will show if it was.  If it wasn't defined, we should
+   undefine TIMES, since that tells the rest of the program how things
+   should be handled.                          -- Richard Levitte */
+#if defined(VMS) && defined(__DECC) && !defined(__TMS)
+#undef TIMES
 #endif
+
 #ifndef TIMES
 #include <sys/timeb.h>
 #endif
@@ -111,7 +114,8 @@ struct tms {
 #include <sys/select.h>
 #endif
 
-#ifdef sun
+#if defined(sun) || defined(__ultrix)
+#define _POSIX_SOURCE
 #include <limits.h>
 #include <sys/param.h>
 #endif
@@ -120,11 +124,7 @@ struct tms {
 */
 #ifndef HZ
 #ifndef CLK_TCK
-#ifndef VMS
 #define HZ      100.0
-#else /* VMS */
-#define HZ      100.0
-#endif
 #else /* CLK_TCK */
 #define HZ ((double)CLK_TCK)
 #endif
@@ -133,6 +133,7 @@ struct tms {
 #undef PROG
 #define PROG s_time_main
 
+#undef ioctl
 #define ioctl ioctlsocket
 
 #define SSL_CONNECT_NAME       "localhost:4433"
@@ -150,18 +151,10 @@ struct tms {
 extern int verify_depth;
 extern int verify_error;
 
-#ifndef NOPROTO
 static void s_time_usage(void);
 static int parseArgs( int argc, char **argv );
 static SSL *doConnection( SSL *scon );
 static void s_time_init(void);
-#else
-static void s_time_usage();
-static int parseArgs();
-static SSL *doConnection();
-static void s_time_init();
-#endif
-
 
 /***********************************************************************
  * Static data declarations
@@ -189,7 +182,7 @@ static int t_nbio=0;
 static int exitNow = 0;                /* Set when it's time to exit main */
 #endif
 
-static void s_time_init()
+static void s_time_init(void)
        {
        host=SSL_CONNECT_NAME;
        t_cert_file=NULL;
@@ -217,19 +210,19 @@ static void s_time_init()
 /***********************************************************************
  * usage - display usage message
  */
-static void s_time_usage()
+static void s_time_usage(void)
 {
        static char umsg[] = "\
 -time arg     - max number of seconds to collect data, default %d\n\
 -verify arg   - turn on peer certificate verification, arg == depth\n\
 -cert arg     - certificate file to use, PEM format assumed\n\
--key arg      - RSA file to use, PEM format assumed, in cert file if\n\
-                not specified but cert fill is.\n\
+-key arg      - RSA file to use, PEM format assumed, key is in cert file\n\
+                file if not specified by this option\n\
 -CApath arg   - PEM format directory of CA's\n\
 -CAfile arg   - PEM format file of CA's\n\
--cipher       - prefered cipher to use, play with 'ssleay ciphers'\n\n";
+-cipher       - prefered cipher to use, play with 'openssl ciphers'\n\n";
 
-       printf( "usage: client <args>\n\n" );
+       printf( "usage: s_time <args>\n\n" );
 
        printf("-connect host:port - host:port to connect to (default is %s)\n",SSL_CONNECT_NAME);
 #ifdef FIONBIO
@@ -249,9 +242,7 @@ static void s_time_usage()
  *
  * Returns 0 if ok, -1 on bad args
  */
-static int parseArgs(argc,argv)
-int argc;
-char **argv;
+static int parseArgs(int argc, char **argv)
 {
     int badop = 0;
 
@@ -376,8 +367,7 @@ bad:
 #define START  0
 #define STOP   1
 
-static double tm_Time_F(s)
-int s;
+static double tm_Time_F(int s)
        {
        static double ret;
 #ifdef TIMES
@@ -411,10 +401,7 @@ int s;
  * MAIN - main processing area for client
  *                     real name depends on MONOLITH
  */
-int
-MAIN(argc,argv)
-int argc;
-char **argv;
+int MAIN(int argc, char **argv)
        {
        double totalTime = 0.0;
        int nConn = 0;
@@ -638,9 +625,7 @@ end:
  * Returns:
  *             SSL *   = the connection pointer.
  */
-static SSL *
-doConnection(scon)
-SSL *scon;
+static SSL *doConnection(SSL *scon)
        {
        BIO *conn;
        SSL *serverCon;
@@ -679,7 +664,13 @@ SSL *scon;
                        width=i+1;
                        FD_ZERO(&readfds);
                        FD_SET(i,&readfds);
-                       select(width,&readfds,NULL,NULL,NULL);
+                       /* Note: under VMS with SOCKETSHR the 2nd 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 *).
+                        */
+                       select(width,(void *)&readfds,NULL,NULL,NULL);
                        continue;
                        }
                break;