mirror of
https://github.com/espressif/openthread.git
synced 2026-07-20 11:04:06 +00:00
[meshcop] generate PSKc from passphrase (#4766)
This commit is contained in:
+15
-1
@@ -1740,7 +1740,21 @@ void Interpreter::ProcessPskc(uint8_t aArgsLength, char *aArgs[])
|
||||
{
|
||||
otPskc pskc;
|
||||
|
||||
VerifyOrExit(Hex2Bin(aArgs[0], pskc.m8, sizeof(pskc)) == OT_PSKC_MAX_SIZE, error = OT_ERROR_INVALID_ARGS);
|
||||
if (aArgsLength == 1)
|
||||
{
|
||||
VerifyOrExit(Hex2Bin(aArgs[0], pskc.m8, sizeof(pskc)) == sizeof(pskc), error = OT_ERROR_INVALID_ARGS);
|
||||
}
|
||||
else if (!strcmp(aArgs[0], "-p"))
|
||||
{
|
||||
SuccessOrExit(error = otDatasetGeneratePskc(
|
||||
aArgs[1], reinterpret_cast<const otNetworkName *>(otThreadGetNetworkName(mInstance)),
|
||||
otThreadGetExtendedPanId(mInstance), &pskc));
|
||||
}
|
||||
else
|
||||
{
|
||||
ExitNow(error = OT_ERROR_INVALID_ARGS);
|
||||
}
|
||||
|
||||
SuccessOrExit(error = otThreadSetPskc(mInstance, &pskc));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user