Browse Source

px5g-wolfssl: Fix certificate signature

Certificate signature algorithm was being set after call to
`wc_MakeCert`, resulting in a mismatch between specified signature in
certificate and the actual signature type.

Signed-off-by: Jeffrey Elms <[email protected]>
[fix commit subject, use COMMITCOUNT]
Signed-off-by: Paul Spooren <[email protected]>
Jeffrey Elms 4 years ago
parent
commit
ff2087d9a9
2 changed files with 3 additions and 3 deletions
  1. 1 1
      package/utils/px5g-wolfssl/Makefile
  2. 2 2
      package/utils/px5g-wolfssl/px5g-wolfssl.c

+ 1 - 1
package/utils/px5g-wolfssl/Makefile

@@ -5,7 +5,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=px5g-wolfssl
-PKG_RELEASE:=1
+PKG_RELEASE:=$(COMMITCOUNT)
 PKG_LICENSE:=GPL-2.0-or-later
 
 PKG_USE_MIPS16:=0

+ 2 - 2
package/utils/px5g-wolfssl/px5g-wolfssl.c

@@ -232,8 +232,10 @@ int selfsigned(WC_RNG *rng, char **arg) {
           subject, fstr, tstr);
 
   if (type == EC_KEY_TYPE) {
+    newCert.sigType = CTC_SHA256wECDSA;
     ret = wc_MakeCert(&newCert, derBuf, sizeof(derBuf), NULL, &ecKey, rng);
   } else {
+    newCert.sigType = CTC_SHA256wRSA;
     ret = wc_MakeCert(&newCert, derBuf, sizeof(derBuf), &rsaKey, NULL, rng);
   }
   if (ret <= 0) {
@@ -242,11 +244,9 @@ int selfsigned(WC_RNG *rng, char **arg) {
   }
 
   if (type == EC_KEY_TYPE) {
-    newCert.sigType = CTC_SHA256wECDSA;
     ret = wc_SignCert(newCert.bodySz, newCert.sigType, derBuf, sizeof(derBuf),
                       NULL, &ecKey, rng);
   } else {
-    newCert.sigType = CTC_SHA256wRSA;
     ret = wc_SignCert(newCert.bodySz, newCert.sigType, derBuf, sizeof(derBuf),
                       &rsaKey, NULL, rng);
   }