EXIT() may mean return(). That's confusing, so let's have it really mean
exit() in whatever way works for the intended platform, and define OPENSSL_EXIT() to have the old meaning (the name is of course because it's only used in the openssl program)
This commit is contained in:
parent
4707991520
commit
1c3e4a3660
@ -361,7 +361,7 @@ end:
|
||||
if (osk != NULL) sk_free(osk);
|
||||
OBJ_cleanup();
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static int do_generate(BIO *bio, char *genstr, char *genconf, BUF_MEM *buf)
|
||||
|
@ -1652,7 +1652,7 @@ err:
|
||||
NCONF_free(conf);
|
||||
OBJ_cleanup();
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static void lookup_fail(char *name, char *tag)
|
||||
|
@ -203,6 +203,6 @@ end:
|
||||
if (ssl != NULL) SSL_free(ssl);
|
||||
if (STDout != NULL) BIO_free_all(STDout);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
|
@ -377,7 +377,7 @@ end:
|
||||
X509_STORE_free(store);
|
||||
}
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static X509_CRL *load_crl(char *infile, int format)
|
||||
|
@ -280,7 +280,7 @@ end:
|
||||
if (crl != NULL) X509_CRL_free(crl);
|
||||
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -365,7 +365,7 @@ end:
|
||||
if(sigbuf) OPENSSL_free(sigbuf);
|
||||
if (bmd != NULL) BIO_free(bmd);
|
||||
apps_shutdown();
|
||||
EXIT(err);
|
||||
OPENSSL_EXIT(err);
|
||||
}
|
||||
|
||||
int do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, int binout,
|
||||
|
@ -333,6 +333,6 @@ end:
|
||||
if (out != NULL) BIO_free_all(out);
|
||||
if (dh != NULL) DH_free(dh);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
#endif
|
||||
|
@ -519,7 +519,7 @@ end:
|
||||
if (out != NULL) BIO_free_all(out);
|
||||
if (dh != NULL) DH_free(dh);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
/* dh_cb is identical to dsa_cb in apps/dsaparam.c */
|
||||
|
@ -314,6 +314,6 @@ end:
|
||||
if(passin) OPENSSL_free(passin);
|
||||
if(passout) OPENSSL_free(passout);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
#endif
|
||||
|
@ -372,7 +372,7 @@ end:
|
||||
if (out != NULL) BIO_free_all(out);
|
||||
if (dsa != NULL) DSA_free(dsa);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static void MS_CALLBACK dsa_cb(int p, int n, void *arg)
|
||||
|
@ -390,6 +390,6 @@ end:
|
||||
if (passout)
|
||||
OPENSSL_free(passout);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
#endif
|
||||
|
@ -679,7 +679,7 @@ end:
|
||||
if (group != NULL)
|
||||
EC_GROUP_free(group);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
int ecparam_print_var(BIO *out, BIGNUM *in, const char *var,
|
||||
|
@ -586,7 +586,7 @@ end:
|
||||
if (b64 != NULL) BIO_free(b64);
|
||||
if(pass) OPENSSL_free(pass);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
int set_hex(char *in, unsigned char *out, int size)
|
||||
|
@ -516,5 +516,5 @@ end:
|
||||
sk_pop_free(post_cmds, identity);
|
||||
if (bio_out != NULL) BIO_free_all(bio_out);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
@ -122,5 +122,5 @@ int MAIN(int argc, char **argv)
|
||||
}
|
||||
}
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
@ -198,7 +198,7 @@ end:
|
||||
if (out != NULL) BIO_free_all(out);
|
||||
if (dh != NULL) DH_free(dh);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static void MS_CALLBACK dh_cb(int p, int n, void *arg)
|
||||
|
@ -246,6 +246,6 @@ end:
|
||||
if (dsa != NULL) DSA_free(dsa);
|
||||
if(passout) OPENSSL_free(passout);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
#endif
|
||||
|
@ -258,7 +258,7 @@ err:
|
||||
if (ret != 0)
|
||||
ERR_print_errors(bio_err);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static void MS_CALLBACK genrsa_cb(int p, int n, void *arg)
|
||||
|
@ -102,7 +102,7 @@ int MAIN(int argc, char **argv)
|
||||
BIO_printf (bio_err, "-in file input file\n");
|
||||
BIO_printf (bio_err, "-out file output file\n");
|
||||
BIO_printf (bio_err, "-toseq output NS Sequence file\n");
|
||||
EXIT(1);
|
||||
OPENSSL_EXIT(1);
|
||||
}
|
||||
|
||||
if (infile) {
|
||||
@ -162,6 +162,6 @@ end:
|
||||
BIO_free_all(out);
|
||||
NETSCAPE_CERT_SEQUENCE_free(seq);
|
||||
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
|
@ -899,7 +899,7 @@ end:
|
||||
SSL_CTX_free(ctx);
|
||||
}
|
||||
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static int add_ocsp_cert(OCSP_REQUEST **req, X509 *cert, X509 *issuer,
|
||||
|
@ -358,7 +358,7 @@ end:
|
||||
BIO_free(bio_err);
|
||||
bio_err=NULL;
|
||||
}
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
#define LIST_STANDARD_COMMANDS "list-standard-commands"
|
||||
|
@ -292,7 +292,7 @@ err:
|
||||
if (out)
|
||||
BIO_free_all(out);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
|
||||
@ -505,6 +505,6 @@ err:
|
||||
int MAIN(int argc, char **argv)
|
||||
{
|
||||
fputs("Program not available.\n", stderr)
|
||||
EXIT(1);
|
||||
OPENSSL_EXIT(1);
|
||||
}
|
||||
#endif
|
||||
|
@ -651,7 +651,7 @@ int MAIN(int argc, char **argv)
|
||||
if(passin) OPENSSL_free(passin);
|
||||
if(passout) OPENSSL_free(passout);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
int dump_certs_keys_p12 (BIO *out, PKCS12 *p12, char *pass,
|
||||
|
@ -301,5 +301,5 @@ end:
|
||||
if (in != NULL) BIO_free(in);
|
||||
if (out != NULL) BIO_free_all(out);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
@ -213,5 +213,5 @@ err:
|
||||
if (out)
|
||||
BIO_free_all(out);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
@ -1150,7 +1150,7 @@ end:
|
||||
if (ec_params != NULL) EC_KEY_free(ec_params);
|
||||
#endif
|
||||
apps_shutdown();
|
||||
EXIT(ex);
|
||||
OPENSSL_EXIT(ex);
|
||||
}
|
||||
|
||||
static int make_REQ(X509_REQ *req, EVP_PKEY *pkey, char *subj, int attribs,
|
||||
|
@ -369,7 +369,7 @@ end:
|
||||
if(passin) OPENSSL_free(passin);
|
||||
if(passout) OPENSSL_free(passout);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
#else /* !OPENSSL_NO_RSA */
|
||||
|
||||
|
@ -917,7 +917,7 @@ end:
|
||||
bio_c_out=NULL;
|
||||
}
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
|
||||
|
@ -946,7 +946,7 @@ end:
|
||||
bio_s_out=NULL;
|
||||
}
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static void print_stats(BIO *bio, SSL_CTX *ssl_ctx)
|
||||
|
@ -642,7 +642,7 @@ end:
|
||||
tm_ctx=NULL;
|
||||
}
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
|
@ -273,7 +273,7 @@ end:
|
||||
if (out != NULL) BIO_free_all(out);
|
||||
if (x != NULL) SSL_SESSION_free(x);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static SSL_SESSION *load_sess_id(char *infile, int format)
|
||||
|
@ -2316,7 +2316,7 @@ end:
|
||||
#endif
|
||||
|
||||
apps_shutdown();
|
||||
EXIT(mret);
|
||||
OPENSSL_EXIT(mret);
|
||||
}
|
||||
|
||||
static void print_message(const char *s, long num, int length)
|
||||
|
@ -295,5 +295,5 @@ end:
|
||||
EVP_PKEY_free(pkey);
|
||||
if(passin) OPENSSL_free(passin);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
@ -232,7 +232,7 @@ end:
|
||||
sk_X509_pop_free(untrusted, X509_free);
|
||||
sk_X509_pop_free(trusted, X509_free);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static int check(X509_STORE *ctx, char *file, STACK_OF(X509) *uchain, STACK_OF(X509) *tchain, int purpose, ENGINE *e)
|
||||
|
@ -212,5 +212,5 @@ int MAIN(int argc, char **argv)
|
||||
if (dir) printf("%s\n",SSLeay_version(SSLEAY_DIR));
|
||||
end:
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
@ -1029,7 +1029,7 @@ end:
|
||||
sk_ASN1_OBJECT_pop_free(reject, ASN1_OBJECT_free);
|
||||
if (passin) OPENSSL_free(passin);
|
||||
apps_shutdown();
|
||||
EXIT(ret);
|
||||
OPENSSL_EXIT(ret);
|
||||
}
|
||||
|
||||
static ASN1_INTEGER *load_serial(char *CAfile, char *serialfile, int create)
|
||||
|
30
e_os.h
30
e_os.h
@ -243,10 +243,11 @@ extern "C" {
|
||||
# define _kbhit kbhit
|
||||
# endif
|
||||
|
||||
# if defined(WIN16) && !defined(MONOLITH) && defined(SSLEAY) && defined(_WINEXITNOPERSIST)
|
||||
# define EXIT(n) do { if (n == 0) _wsetexit(_WINEXITNOPERSIST); return(n); } while(0)
|
||||
# if defined(WIN16) && defined(SSLEAY) && defined(_WINEXITNOPERSIST)
|
||||
# define EXIT(n) _wsetexit(_WINEXITNOPERSIST)
|
||||
# define OPENSSL_EXIT(n) do { if (n == 0) EXIT(n); return(n); } while(0)
|
||||
# else
|
||||
# define EXIT(n) return(n)
|
||||
# define EXIT(n) return(n)
|
||||
# endif
|
||||
# define LIST_SEPARATOR_CHAR ';'
|
||||
# ifndef X_OK
|
||||
@ -302,18 +303,13 @@ extern "C" {
|
||||
the status is tagged as an error, which I believe is what is wanted here.
|
||||
-- Richard Levitte
|
||||
*/
|
||||
# if !defined(MONOLITH) || defined(OPENSSL_C)
|
||||
# define EXIT(n) do { int __VMS_EXIT = n; \
|
||||
# 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); \
|
||||
return(__VMS_EXIT); } while(0)
|
||||
# else
|
||||
# define EXIT(n) return(n)
|
||||
# endif
|
||||
exit(__VMS_EXIT); } while(0)
|
||||
# define NO_SYS_PARAM_H
|
||||
# else
|
||||
/* !defined VMS */
|
||||
@ -344,11 +340,7 @@ extern "C" {
|
||||
# define RFILE ".rnd"
|
||||
# define LIST_SEPARATOR_CHAR ':'
|
||||
# define NUL_DEV "/dev/null"
|
||||
# ifndef MONOLITH
|
||||
# define EXIT(n) do { exit(n); return(n); } while(0)
|
||||
# else
|
||||
# define EXIT(n) return(n)
|
||||
# endif
|
||||
# define EXIT(n) exit(n)
|
||||
# endif
|
||||
|
||||
# define SSLeay_getpid() getpid()
|
||||
@ -475,6 +467,14 @@ extern char *sys_errlist[]; extern int sys_nerr;
|
||||
(((errnum)<0 || (errnum)>=sys_nerr) ? NULL : sys_errlist[errnum])
|
||||
#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.
|
||||
|
Loading…
x
Reference in New Issue
Block a user