Skip to content

Commit

Permalink
fix: Security policy check for empty private key to improve error mes…
Browse files Browse the repository at this point in the history
…sage
  • Loading branch information
Pro committed Aug 30, 2019
1 parent 960e39f commit 7d6bb77
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 0 deletions.
6 changes: 6 additions & 0 deletions plugins/securityPolicies/ua_securitypolicy_basic128rsa15.c
Original file line number Diff line number Diff line change
Expand Up @@ -659,6 +659,12 @@ policyContext_newContext_sp_basic128rsa15(UA_SecurityPolicy *securityPolicy,
if(securityPolicy == NULL)
return UA_STATUSCODE_BADINTERNALERROR;

if (localPrivateKey.length == 0) {
UA_LOG_ERROR(securityPolicy->logger, UA_LOGCATEGORY_SECURITYPOLICY,
"Can not initialize security policy. Private key is empty.");
return UA_STATUSCODE_BADINVALIDARGUMENT;
}

Basic128Rsa15_PolicyContext *pc = (Basic128Rsa15_PolicyContext *)
UA_malloc(sizeof(Basic128Rsa15_PolicyContext));
securityPolicy->policyContext = (void *)pc;
Expand Down
6 changes: 6 additions & 0 deletions plugins/securityPolicies/ua_securitypolicy_basic256.c
Original file line number Diff line number Diff line change
Expand Up @@ -610,6 +610,12 @@ policyContext_newContext_sp_basic256(UA_SecurityPolicy *securityPolicy,
if(securityPolicy == NULL)
return UA_STATUSCODE_BADINTERNALERROR;

if (localPrivateKey.length == 0) {
UA_LOG_ERROR(securityPolicy->logger, UA_LOGCATEGORY_SECURITYPOLICY,
"Can not initialize security policy. Private key is empty.");
return UA_STATUSCODE_BADINVALIDARGUMENT;
}

Basic256_PolicyContext *pc = (Basic256_PolicyContext *)
UA_malloc(sizeof(Basic256_PolicyContext));
securityPolicy->policyContext = (void *)pc;
Expand Down
6 changes: 6 additions & 0 deletions plugins/securityPolicies/ua_securitypolicy_basic256sha256.c
Original file line number Diff line number Diff line change
Expand Up @@ -650,6 +650,12 @@ policyContext_newContext_sp_basic256sha256(UA_SecurityPolicy *securityPolicy,
if(securityPolicy == NULL)
return UA_STATUSCODE_BADINTERNALERROR;

if (localPrivateKey.length == 0) {
UA_LOG_ERROR(securityPolicy->logger, UA_LOGCATEGORY_SECURITYPOLICY,
"Can not initialize security policy. Private key is empty.");
return UA_STATUSCODE_BADINVALIDARGUMENT;
}

Basic256Sha256_PolicyContext *pc = (Basic256Sha256_PolicyContext *)
UA_malloc(sizeof(Basic256Sha256_PolicyContext));
securityPolicy->policyContext = (void *)pc;
Expand Down

0 comments on commit 7d6bb77

Please sign in to comment.