Commit 47ca8338 authored by Richard Levitte's avatar Richard Levitte
Browse files

Add the possibility to display and use MODULESDIR



This adds the flag OPENSSL_MODULES_DIR for OpenSSL_version(), and the
flag '-m' for 'openssl version'.

Reviewed-by: default avatarPaul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/8709)
parent 71ef78d7
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -33,7 +33,7 @@

typedef enum OPTION_choice {
    OPT_ERR = -1, OPT_EOF = 0, OPT_HELP,
    OPT_B, OPT_D, OPT_E, OPT_F, OPT_O, OPT_P, OPT_V, OPT_A, OPT_R
    OPT_B, OPT_D, OPT_E, OPT_M, OPT_F, OPT_O, OPT_P, OPT_V, OPT_A, OPT_R
} OPTION_CHOICE;

const OPTIONS version_options[] = {
@@ -42,6 +42,7 @@ const OPTIONS version_options[] = {
    {"b", OPT_B, '-', "Show build date"},
    {"d", OPT_D, '-', "Show configuration directory"},
    {"e", OPT_E, '-', "Show engines directory"},
    {"m", OPT_M, '-', "Show modules directory"},
    {"f", OPT_F, '-', "Show compiler flags used"},
    {"o", OPT_O, '-', "Show some internal datatype options"},
    {"p", OPT_P, '-', "Show target build platform"},
@@ -64,7 +65,7 @@ int version_main(int argc, char **argv)
{
    int ret = 1, dirty = 0, seed = 0;
    int cflags = 0, version = 0, date = 0, options = 0, platform = 0, dir = 0;
    int engdir = 0;
    int engdir = 0, moddir = 0;
    char *prog;
    OPTION_CHOICE o;

@@ -89,6 +90,9 @@ opthelp:
        case OPT_E:
            dirty = engdir = 1;
            break;
        case OPT_M:
            dirty = moddir = 1;
            break;
        case OPT_F:
            dirty = cflags = 1;
            break;
@@ -105,7 +109,8 @@ opthelp:
            dirty = version = 1;
            break;
        case OPT_A:
            seed = options = cflags = version = date = platform = dir = engdir
            seed = options = cflags = version = date = platform
                = dir = engdir = moddir
                = 1;
            break;
        }
@@ -155,6 +160,8 @@ opthelp:
        printf("%s\n", OpenSSL_version(OPENSSL_DIR));
    if (engdir)
        printf("%s\n", OpenSSL_version(OPENSSL_ENGINES_DIR));
    if (moddir)
        printf("%s\n", OpenSSL_version(OPENSSL_MODULES_DIR));
    if (seed) {
        printf("Seeding source:");
#ifdef OPENSSL_RAND_SEED_RTDSC
+6 −0
Original line number Diff line number Diff line
@@ -69,6 +69,12 @@ const char *OpenSSL_version(int t)
        return "ENGINESDIR: \"" ENGINESDIR "\"";
#else
        return "ENGINESDIR: N/A";
#endif
    case OPENSSL_MODULES_DIR:
#ifdef MODULESDIR
        return "MODULESDIR: \"" MODULESDIR "\"";
#else
        return "MODULESDIR: N/A";
#endif
    }
    return "not available";
+1 −0
Original line number Diff line number Diff line
@@ -163,6 +163,7 @@ const char *OpenSSL_version(int type);
# define OPENSSL_ENGINES_DIR            5
# define OPENSSL_VERSION_STRING         6
# define OPENSSL_FULL_VERSION_STRING    7
# define OPENSSL_MODULES_DIR            8

int OPENSSL_issetugid(void);