#include <openssl/x509.h>
#include <openssl/pem.h>
#include <openssl/ssl.h>
-#define SSLEAY /* turn off a few special case MONOLITH macros */
#define USE_SOCKETS /* needed for the _O_BINARY defs in the MS world */
-#define SSLEAY_SRC
+#define OPENSSL_C /* tells apps.h to use complete apps_startup() */
#include "apps.h"
+#include "progs.h"
#include "s_apps.h"
#include <openssl/err.h>
#endif
*/
-#ifndef NOPROTO
static unsigned long MS_CALLBACK hash(FUNCTION *a);
static int MS_CALLBACK cmp(FUNCTION *a,FUNCTION *b);
static LHASH *prog_init(void );
static int do_cmd(LHASH *prog,int argc,char *argv[]);
-#else
-static unsigned long MS_CALLBACK hash();
-static int MS_CALLBACK cmp();
-static LHASH *prog_init();
-static int do_cmd();
-#endif
-
LHASH *config=NULL;
char *default_config_file=NULL;
arg.data=NULL;
arg.count=0;
- /* SSLeay_add_ssl_algorithms(); is called in apps_startup() */
- apps_startup();
-
#if defined(DEBUG) && !defined(WINDOWS) && !defined(MSDOS)
#ifdef SIGBUS
signal(SIGBUS,sig_stop);
#endif
#endif
+ CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
+
+ apps_startup();
+
if (bio_err == NULL)
if ((bio_err=BIO_new(BIO_s_file())) != NULL)
BIO_set_fp(bio_err,stderr,BIO_NOCLOSE|BIO_FP_TEXT);
- CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
-
ERR_load_crypto_strings();
/* Lets load up our environment a little */
if (p == NULL)
{
strcpy(config_name,X509_get_default_cert_area());
- strcat(config_name,"/lib/");
+#ifndef VMS
+ strcat(config_name,"/");
+#endif
strcat(config_name,OPENSSL_CONF);
p=config_name;
}
program_name(Argv[0],pname,PROG_NAME_SIZE);
f.name=pname;
- fp=(FUNCTION *)lh_retrieve(prog,(char *)&f);
+ fp=(FUNCTION *)lh_retrieve(prog,&f);
if (fp != NULL)
{
Argv[0]=pname;
}
if (ret != 0)
BIO_printf(bio_err,"error in %s\n",argv[0]);
- BIO_flush(bio_err);
+ (void)BIO_flush(bio_err);
}
BIO_printf(bio_err,"bad exit\n");
ret=1;
EVP_cleanup();
ERR_free_strings();
+#ifdef LEVITTE_DEBUG
+ CRYPTO_push_info("Just to make sure I get a memory leak I can see :-)");
+ (void)Malloc(1024);
+ CRYPTO_pop_info();
+#endif
+
CRYPTO_mem_leaks(bio_err);
if (bio_err != NULL)
{
if ((argc <= 0) || (argv[0] == NULL))
{ ret=0; goto end; }
f.name=argv[0];
- fp=(FUNCTION *)lh_retrieve(prog,(char *)&f);
+ fp=(FUNCTION *)lh_retrieve(prog,&f);
if (fp != NULL)
{
ret=fp->func(argc,argv);
if ((ret=lh_new(hash,cmp)) == NULL) return(NULL);
for (f=functions; f->name != NULL; f++)
- lh_insert(ret,(char *)f);
+ lh_insert(ret,f);
return(ret);
}
{
return(lh_strhash(a->name));
}
-
-#undef SSLEAY