aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKangping <wgtdkp@google.com>2023-11-08 16:21:21 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-11-08 16:21:21 +0000
commitf0b410e931804f1702c721b0c5dd566cdcc41298 (patch)
tree8b0dbe041825ccbf20adf27efddd47d39b477f0a
parentd80d0926b50b4991cc2017e03feebf44f64ca104 (diff)
parente1f515553c9f22f2fb603fcdfc8efd713d28366f (diff)
downloadopenthread-f0b410e931804f1702c721b0c5dd566cdcc41298.tar.gz
[dataset] returns OT_ERROR_REJECTED when MGMT_SET is rejected by leader (#9582) am: e1f515553c
Original change: https://android-review.googlesource.com/c/platform/external/openthread/+/2817256 Change-Id: I4c1dd2d0296a5fcdbf42b02dcd4ed9dbb9f5a6e5 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--src/core/meshcop/dataset_manager.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/core/meshcop/dataset_manager.cpp b/src/core/meshcop/dataset_manager.cpp
index 043f88c2a..e236fcc57 100644
--- a/src/core/meshcop/dataset_manager.cpp
+++ b/src/core/meshcop/dataset_manager.cpp
@@ -312,15 +312,18 @@ void DatasetManager::HandleMgmtSetResponse(Coap::Message *aMessage, const Ip6::M
OT_UNUSED_VARIABLE(aMessageInfo);
Error error;
- uint8_t state;
+ uint8_t state = StateTlv::kPending;
SuccessOrExit(error = aError);
VerifyOrExit(Tlv::Find<StateTlv>(*aMessage, state) == kErrorNone && state != StateTlv::kPending,
error = kErrorParse);
+ if (state == StateTlv::kReject)
+ {
+ error = kErrorRejected;
+ }
exit:
- LogInfo("MGMT_SET finished: %s",
- error == kErrorNone ? StateTlv::StateToString(static_cast<StateTlv::State>(state)) : ErrorToString(error));
+ LogInfo("MGMT_SET finished: %s", error == kErrorNone ? "Accepted" : ErrorToString(error));
mMgmtPending = false;