Skip to content
This repository was archived by the owner on Dec 20, 2023. It is now read-only.

Commit 0e332b5

Browse files
committed
Updated Security Profiles Status Codes.
Updated status codes in the Security profile associated with Certificate Provisioning Protocol.
1 parent 7627fe1 commit 0e332b5

File tree

4 files changed

+15
-9
lines changed

4 files changed

+15
-9
lines changed

src/lib/profiles/security/WeaveCertProvisioning.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -580,7 +580,7 @@ void WeaveCertProvEngine::HandleResponse(ExchangeContext * ec, const IPPacketInf
580580
outParam.Clear();
581581
inParam.Source = client;
582582

583-
if (statusReport.mStatusCode == Security::kStatusCode_NoNewCertRequired)
583+
if (statusReport.mStatusCode == Security::kStatusCode_NoNewOperationalCertRequired)
584584
{
585585
inParam.ResponseReceived.ReplaceCert = false;
586586

src/lib/profiles/security/WeaveSecurity.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,9 +109,10 @@ enum
109109
kStatusCode_InternalKeyError = 16, // The receiver of the Weave message encountered key error.
110110
kStatusCode_NoCommonKeyExportConfiguration = 17, // No common key export protocol configuration supported.
111111
kStatusCode_UnauthorizedKeyExportRequest = 18, // An unauthorized key export request.
112-
kStatusCode_ServiceCommunicationError = 19, /**< The device could not complete certificate provisioning because it encountered an error when communicating with the service. */
113-
kStatusCode_UnauthorizedGetCertRequest = 20, /**< An unauthorized get certificate request. */
114-
kStatusCode_NoNewCertRequired = 21, /**< No new certificate required. */
112+
kStatusCode_NoNewOperationalCertRequired = 19, // No new operational certificate required.
113+
kStatusCode_OperationalNodeIdInUse = 20, // The specified operational node Id is already used by another Weave node (indication of node id collision).
114+
kStatusCode_InvalidOperationalNodeId = 21, // The specified operational node Id is invalid.
115+
kStatusCode_InvalidOperationalCertificate = 22, // The specified operational certificate is invalid.
115116
};
116117

117118
// Weave Key Error Message Size

src/lib/support/StatusReportStr.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -267,9 +267,10 @@ NL_DLL_EXPORT const char *StatusReportStr(uint32_t profileId, uint16_t statusCod
267267
case Security::kStatusCode_InternalKeyError : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] Internal key error"; break;
268268
case Security::kStatusCode_NoCommonKeyExportConfiguration : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] No common key export configuration"; break;
269269
case Security::kStatusCode_UnauthorizedKeyExportRequest : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] Unauthorized key export request"; break;
270-
case Security::kStatusCode_ServiceCommunicationError : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] Service communication error"; break;
271-
case Security::kStatusCode_UnauthorizedGetCertRequest : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] Unauthorized get certificate request"; break;
272-
case Security::kStatusCode_NoNewCertRequired : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] No new certificate required"; break;
270+
case Security::kStatusCode_NoNewOperationalCertRequired : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] No new operational certificate required"; break;
271+
case Security::kStatusCode_OperationalNodeIdInUse : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] Operational node Id collision"; break;
272+
case Security::kStatusCode_InvalidOperationalNodeId : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] Invalid operational node Id"; break;
273+
case Security::kStatusCode_InvalidOperationalCertificate : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ] Invalid operational certificate"; break;
273274
default : fmt = "[ Security(%08" PRIX32 "):%" PRIu16 " ]"; break;
274275
}
275276
break;

src/test-apps/TestStatusReportStr.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ struct Profile_Status {
6969
WeaveProfileId id;
7070
const char *fmt;
7171
uint8_t statusCount;
72-
uint16_t statusCodes[21];
72+
uint16_t statusCodes[23];
7373
};
7474

7575
static struct Profile_Status sContext[] = {
@@ -204,7 +204,7 @@ static struct Profile_Status sContext[] = {
204204
{
205205
kWeaveProfile_Security,
206206
"[ Security(%08" PRIX32 "):%" PRIu16 " ]",
207-
19,
207+
23,
208208
{
209209
Security::kStatusCode_SessionAborted,
210210
Security::kStatusCode_PASESupportsOnlyConfig1,
@@ -225,6 +225,10 @@ static struct Profile_Status sContext[] = {
225225
Security::kStatusCode_InternalKeyError,
226226
Security::kStatusCode_NoCommonKeyExportConfiguration,
227227
Security::kStatusCode_UnauthorizedKeyExportRequest,
228+
Security::kStatusCode_NoNewOperationalCertRequired,
229+
Security::kStatusCode_OperationalNodeIdInUse,
230+
Security::kStatusCode_InvalidOperationalNodeId,
231+
Security::kStatusCode_InvalidOperationalCertificate,
228232
}
229233
},
230234
{

0 commit comments

Comments
 (0)