]> www.wagner.pp.ru Git - openssl-gost/engine.git/blobdiff - gost_ctl.c
tcl_tests: ca.try: Ignore openssl crl exit status for 'corrupted CRL' test
[openssl-gost/engine.git] / gost_ctl.c
index 8e3c1c62462adcfbcaba428cdbba676b2cdb8ec9..60280b1c1322830c37cf9f78ef8b6f109ff537f2 100644 (file)
 #include "gost_lcl.h"
 
 static char *gost_params[GOST_PARAM_MAX + 1] = { NULL };
-static const char *gost_envnames[] = { "CRYPT_PARAMS", "GOST_PBE_HMAC" };
-
-const ENGINE_CMD_DEFN gost_cmds[] = {
-    {GOST_CTRL_CRYPT_PARAMS,
-     "CRYPT_PARAMS",
-     "OID of default GOST 28147-89 parameters",
-     ENGINE_CMD_FLAG_STRING},
-    {GOST_CTRL_PBE_PARAMS,
-     "PBE_PARAMS",
-     "Shortname of default digest alg for PBE",
-     ENGINE_CMD_FLAG_STRING},
-    {0, NULL, NULL, 0}
-};
+static const char *gost_envnames[] =
+    { "CRYPT_PARAMS", "GOST_PBE_HMAC", "GOST_PK_FORMAT" };
 
 void gost_param_free()
 {
@@ -44,8 +33,9 @@ int gost_control_func(ENGINE *e, int cmd, long i, void *p, void (*f) (void))
 {
     int param = cmd - ENGINE_CMD_BASE;
     int ret = 0;
-    if (param < 0 || param > GOST_PARAM_MAX)
+    if (param < 0 || param > GOST_PARAM_MAX) {
         return -1;
+    }
     ret = gost_set_default_param(param, p);
     return ret;
 }
@@ -53,7 +43,7 @@ int gost_control_func(ENGINE *e, int cmd, long i, void *p, void (*f) (void))
 const char *get_gost_engine_param(int param)
 {
     char *tmp;
-    if (param < 0 || param > GOST_PARAM_MAX)
+    if (param < 0 || param >= GOST_PARAM_MAX)
         return NULL;
     if (gost_params[param] != NULL) {
         return gost_params[param];
@@ -70,14 +60,16 @@ const char *get_gost_engine_param(int param)
 int gost_set_default_param(int param, const char *value)
 {
     const char *tmp;
-    if (param < 0 || param > GOST_PARAM_MAX)
+    if (param < 0 || param >= GOST_PARAM_MAX)
         return 0;
     tmp = getenv(gost_envnames[param]);
+
     /*
      * if there is value in the environment, use it, else -passed string *
      */
-    if (!tmp)
+    if (!tmp) {
         tmp = value;
+    }
     OPENSSL_free(gost_params[param]);
     gost_params[param] = BUF_strdup(tmp);