diff --git a/client-server/exchange-tls12.c b/client-server/exchange-tls12.c index a063ccc..97eedc1 100644 --- a/client-server/exchange-tls12.c +++ b/client-server/exchange-tls12.c @@ -248,8 +248,10 @@ int main(int argc, char *argv[]) err = connect_client(engine_id, ca_path, chain_file, cert_file, key_file, cipher_list, ip_address, port_number); } + sleep(2); return (err); done: + sleep(2); cleanup_openssl(); return (err); } diff --git a/engine_atecc/engine_atecc_binder.c b/engine_atecc/engine_atecc_binder.c index 9690c79..2603d83 100644 --- a/engine_atecc/engine_atecc_binder.c +++ b/engine_atecc/engine_atecc_binder.c @@ -239,7 +239,7 @@ int eccx08_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f)()) { int rc = 0; eccx08_debug("eccx08_ctrl()\n"); - if (cmd < ENGINE_CMD_BASE) { + if ((cmd < ENGINE_CMD_BASE) || (cmd >= ECCX08_CMD_MAX)) { // if cmd < ENGINE_CMD_BASE this is being called by OpenSSL. // In this case no work to do so just return. return (1); diff --git a/engine_atecc/engine_meth/ecc_meth.h b/engine_atecc/engine_meth/ecc_meth.h index 7d5ab70..9c04983 100644 --- a/engine_atecc/engine_meth/ecc_meth.h +++ b/engine_atecc/engine_meth/ecc_meth.h @@ -66,6 +66,7 @@ #define ECCX08_CMD_GET_ROOT_CERT (ENGINE_CMD_BASE + 6) #define ECCX08_CMD_EXTRACT_ALL_CERTS (ENGINE_CMD_BASE + 7) #define ECCX08_CMD_GET_PRIV_KEY (ENGINE_CMD_BASE + 8) +#define ECCX08_CMD_MAX (ENGINE_CMD_BASE + 9) #define ECCX08_SLOT8_ENC_STORE_LEN (416)