Skip to content

Commit cd3eda5

Browse files
committed
Add C O OU and CN const expressions
1 parent 431e86a commit cd3eda5

File tree

2 files changed

+24
-8
lines changed

2 files changed

+24
-8
lines changed

src/utility/SElementArduinoCloudCertificate.cpp

+17-8
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,15 @@ static void hexStringToBytes(String in, byte out[], int length) {
3434
}
3535
}
3636

37+
/******************************************************************************
38+
* STATIC MEMBER DEFINITIONS
39+
******************************************************************************/
40+
41+
const char constexpr SElementArduinoCloudCertificate::SEACC_ISSUER_COUNTRY_NAME[];
42+
const char constexpr SElementArduinoCloudCertificate::SEACC_ISSUER_ORGANIZATION_NAME[];
43+
const char constexpr SElementArduinoCloudCertificate::SEACC_ISSUER_ORGANIZATIONAL_UNIT_NAME[];
44+
const char constexpr SElementArduinoCloudCertificate::SEACC_ISSUER_COMMON_NAME[];
45+
3746
/******************************************************************************
3847
* PUBLIC MEMBER FUNCTIONS
3948
******************************************************************************/
@@ -97,10 +106,10 @@ int SElementArduinoCloudCertificate::read(SecureElement & se, ECP256Certificate
97106
}
98107

99108
cert.setSubjectCommonName(deviceId);
100-
cert.setIssuerCountryName("US");
101-
cert.setIssuerOrganizationName("Arduino LLC US");
102-
cert.setIssuerOrganizationalUnitName("IT");
103-
cert.setIssuerCommonName("Arduino");
109+
cert.setIssuerCountryName(SEACC_ISSUER_COUNTRY_NAME);
110+
cert.setIssuerOrganizationName(SEACC_ISSUER_ORGANIZATION_NAME);
111+
cert.setIssuerOrganizationalUnitName(SEACC_ISSUER_ORGANIZATIONAL_UNIT_NAME);
112+
cert.setIssuerCommonName(SEACC_ISSUER_COMMON_NAME);
104113

105114
if (!cert.setPublicKey(publicKey, ECP256_CERT_PUBLIC_KEY_LENGTH)) {
106115
return 0;
@@ -157,10 +166,10 @@ int SElementArduinoCloudCertificate::rebuild(SecureElement & se, ECP256Certifica
157166
}
158167

159168
cert.setSubjectCommonName(deviceId);
160-
cert.setIssuerCountryName("US");
161-
cert.setIssuerOrganizationName("Arduino LLC US");
162-
cert.setIssuerOrganizationalUnitName("IT");
163-
cert.setIssuerCommonName("Arduino");
169+
cert.setIssuerCountryName(SEACC_ISSUER_COUNTRY_NAME);
170+
cert.setIssuerOrganizationName(SEACC_ISSUER_ORGANIZATION_NAME);
171+
cert.setIssuerOrganizationalUnitName(SEACC_ISSUER_ORGANIZATIONAL_UNIT_NAME);
172+
cert.setIssuerCommonName(SEACC_ISSUER_COMMON_NAME);
164173
cert.setSignature(signatureBytes, sizeof(signatureBytes));
165174
cert.setAuthorityKeyId(authorityKeyIdentifierBytes, sizeof(authorityKeyIdentifierBytes));
166175
cert.setSerialNumber(serialNumberBytes, sizeof(serialNumberBytes));

src/utility/SElementArduinoCloudCertificate.h

+7
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,13 @@ class SElementArduinoCloudCertificate : public SElementCertificate
3434
const String & authorityKeyIdentifier, const String & signature,
3535
const SElementArduinoCloudSlot keySlot = SElementArduinoCloudSlot::Key);
3636

37+
private:
38+
39+
static const char constexpr SEACC_ISSUER_COUNTRY_NAME[] = "US";
40+
static const char constexpr SEACC_ISSUER_ORGANIZATION_NAME[] = "Arduino LLC US";
41+
static const char constexpr SEACC_ISSUER_ORGANIZATIONAL_UNIT_NAME[] = "IT";
42+
static const char constexpr SEACC_ISSUER_COMMON_NAME[] = "Arduino";
43+
3744
};
3845

3946
#endif /* SECURE_ELEMENT_ARDUINO_CLOUD_CERTIFICATE_H_ */

0 commit comments

Comments
 (0)