@@ -149,6 +149,7 @@ void GenericThreadStackManagerImpl_OpenThread<ImplClass>::_ProcessThreadActivity
149
149
template <class ImplClass >
150
150
bool GenericThreadStackManagerImpl_OpenThread<ImplClass>::_HaveRouteToAddress(const Inet::IPAddress & destAddr)
151
151
{
152
+ VerifyOrReturnValue (mOTInst , false );
152
153
bool res = false ;
153
154
154
155
// Lock OpenThread
@@ -233,6 +234,7 @@ void GenericThreadStackManagerImpl_OpenThread<ImplClass>::_OnPlatformEvent(const
233
234
template <class ImplClass >
234
235
bool GenericThreadStackManagerImpl_OpenThread<ImplClass>::_IsThreadEnabled(void )
235
236
{
237
+ VerifyOrReturnValue (mOTInst , false );
236
238
otDeviceRole curRole;
237
239
238
240
Impl ()->LockThreadStack ();
@@ -245,6 +247,7 @@ bool GenericThreadStackManagerImpl_OpenThread<ImplClass>::_IsThreadEnabled(void)
245
247
template <class ImplClass >
246
248
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_SetThreadEnabled(bool val)
247
249
{
250
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
248
251
otError otErr = OT_ERROR_NONE;
249
252
250
253
Impl ()->LockThreadStack ();
@@ -279,6 +282,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_SetThreadEnable
279
282
template <class ImplClass >
280
283
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_SetThreadProvision(ByteSpan netInfo)
281
284
{
285
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
282
286
otError otErr = OT_ERROR_FAILED;
283
287
otOperationalDatasetTlvs tlvs;
284
288
@@ -305,6 +309,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_SetThreadProvis
305
309
template <class ImplClass >
306
310
bool GenericThreadStackManagerImpl_OpenThread<ImplClass>::_IsThreadProvisioned(void )
307
311
{
312
+ VerifyOrReturnValue (mOTInst , false );
308
313
bool provisioned;
309
314
310
315
Impl ()->LockThreadStack ();
@@ -317,6 +322,7 @@ bool GenericThreadStackManagerImpl_OpenThread<ImplClass>::_IsThreadProvisioned(v
317
322
template <class ImplClass >
318
323
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetThreadProvision(Thread::OperationalDataset & dataset)
319
324
{
325
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
320
326
VerifyOrReturnError (Impl ()->IsThreadProvisioned (), CHIP_ERROR_INCORRECT_STATE);
321
327
otOperationalDatasetTlvs datasetTlv;
322
328
@@ -336,6 +342,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetThreadProvis
336
342
template <class ImplClass >
337
343
bool GenericThreadStackManagerImpl_OpenThread<ImplClass>::_IsThreadAttached(void )
338
344
{
345
+ VerifyOrReturnValue (mOTInst , false );
339
346
otDeviceRole curRole;
340
347
341
348
Impl ()->LockThreadStack ();
@@ -380,6 +387,7 @@ template <class ImplClass>
380
387
CHIP_ERROR
381
388
GenericThreadStackManagerImpl_OpenThread<ImplClass>::_StartThreadScan(NetworkCommissioning::ThreadDriver::ScanCallback * callback)
382
389
{
390
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
383
391
CHIP_ERROR error = CHIP_NO_ERROR;
384
392
#if CHIP_CONFIG_ENABLE_ICD_SERVER
385
393
otLinkModeConfig linkMode;
@@ -488,6 +496,7 @@ void GenericThreadStackManagerImpl_OpenThread<ImplClass>::_OnNetworkScanFinished
488
496
template <class ImplClass >
489
497
ConnectivityManager::ThreadDeviceType GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetThreadDeviceType(void )
490
498
{
499
+ VerifyOrReturnValue (mOTInst , ConnectivityManager::kThreadDeviceType_NotSupported );
491
500
ConnectivityManager::ThreadDeviceType deviceType;
492
501
493
502
Impl ()->LockThreadStack ();
@@ -524,6 +533,7 @@ template <class ImplClass>
524
533
CHIP_ERROR
525
534
GenericThreadStackManagerImpl_OpenThread<ImplClass>::_SetThreadDeviceType(ConnectivityManager::ThreadDeviceType deviceType)
526
535
{
536
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
527
537
CHIP_ERROR err = CHIP_NO_ERROR;
528
538
otLinkModeConfig linkMode;
529
539
@@ -612,6 +622,7 @@ GenericThreadStackManagerImpl_OpenThread<ImplClass>::_SetThreadDeviceType(Connec
612
622
template <class ImplClass >
613
623
bool GenericThreadStackManagerImpl_OpenThread<ImplClass>::_HaveMeshConnectivity(void )
614
624
{
625
+ VerifyOrReturnValue (mOTInst , false );
615
626
bool res;
616
627
otDeviceRole curRole;
617
628
@@ -660,6 +671,7 @@ bool GenericThreadStackManagerImpl_OpenThread<ImplClass>::_HaveMeshConnectivity(
660
671
template <class ImplClass >
661
672
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetAndLogThreadStatsCounters(void )
662
673
{
674
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
663
675
CHIP_ERROR err = CHIP_NO_ERROR;
664
676
otError otErr;
665
677
otOperationalDataset activeDataset;
@@ -754,6 +766,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetAndLogThread
754
766
template <class ImplClass >
755
767
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetAndLogThreadTopologyMinimal(void )
756
768
{
769
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
757
770
CHIP_ERROR err = CHIP_NO_ERROR;
758
771
759
772
#if CHIP_PROGRESS_LOGGING
@@ -822,6 +835,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetAndLogThread
822
835
template <class ImplClass >
823
836
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetAndLogThreadTopologyFull()
824
837
{
838
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
825
839
CHIP_ERROR err = CHIP_NO_ERROR;
826
840
827
841
#if CHIP_PROGRESS_LOGGING
@@ -991,6 +1005,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetAndLogThread
991
1005
template <class ImplClass >
992
1006
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetPrimary802154MACAddress(uint8_t * buf)
993
1007
{
1008
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
994
1009
const otExtAddress * extendedAddr = otLinkGetExtendedAddress (mOTInst );
995
1010
memcpy (buf, extendedAddr, sizeof (otExtAddress));
996
1011
return CHIP_NO_ERROR;
@@ -999,6 +1014,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetPrimary80215
999
1014
template <class ImplClass >
1000
1015
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetExternalIPv6Address(chip::Inet::IPAddress & addr)
1001
1016
{
1017
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
1002
1018
const otNetifAddress * otAddresses = otIp6GetUnicastAddresses (mOTInst );
1003
1019
1004
1020
// Look only for the global unicast addresses, not internally assigned by Thread.
@@ -1034,6 +1050,7 @@ void GenericThreadStackManagerImpl_OpenThread<ImplClass>::_ResetThreadNetworkDia
1034
1050
template <class ImplClass >
1035
1051
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_GetPollPeriod(uint32_t & buf)
1036
1052
{
1053
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
1037
1054
Impl ()->LockThreadStack ();
1038
1055
buf = otLinkGetPollPeriod (mOTInst );
1039
1056
Impl ()->UnlockThreadStack ();
@@ -1121,6 +1138,7 @@ bool GenericThreadStackManagerImpl_OpenThread<ImplClass>::IsThreadInterfaceUpNoL
1121
1138
template <class ImplClass >
1122
1139
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_SetPollingInterval(System::Clock::Milliseconds32 pollingInterval)
1123
1140
{
1141
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
1124
1142
CHIP_ERROR err = CHIP_NO_ERROR;
1125
1143
Impl ()->LockThreadStack ();
1126
1144
@@ -1173,6 +1191,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_SetPollingInter
1173
1191
template <class ImplClass >
1174
1192
void GenericThreadStackManagerImpl_OpenThread<ImplClass>::_ErasePersistentInfo(void )
1175
1193
{
1194
+ VerifyOrReturn (mOTInst );
1176
1195
ChipLogProgress (DeviceLayer, " Erasing Thread persistent info..." );
1177
1196
Impl ()->LockThreadStack ();
1178
1197
otThreadSetEnabled (mOTInst , false );
@@ -1205,6 +1224,7 @@ void GenericThreadStackManagerImpl_OpenThread<ImplClass>::OnJoinerComplete(otErr
1205
1224
template <class ImplClass >
1206
1225
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_JoinerStart(void )
1207
1226
{
1227
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
1208
1228
CHIP_ERROR error = CHIP_NO_ERROR;
1209
1229
1210
1230
Impl ()->LockThreadStack ();
@@ -1254,6 +1274,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_JoinerStart(voi
1254
1274
template <class ImplClass >
1255
1275
void GenericThreadStackManagerImpl_OpenThread<ImplClass>::_UpdateNetworkStatus()
1256
1276
{
1277
+ VerifyOrReturn (mOTInst );
1257
1278
// Thread is not enabled, then we are not trying to connect to the network.
1258
1279
VerifyOrReturn (ThreadStackMgrImpl ().IsThreadEnabled () && mpStatusChangeCallback != nullptr );
1259
1280
@@ -1636,6 +1657,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_RemoveInvalidSr
1636
1657
template <class ImplClass >
1637
1658
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_ClearAllSrpHostAndServices()
1638
1659
{
1660
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
1639
1661
CHIP_ERROR error = CHIP_NO_ERROR;
1640
1662
Impl ()->LockThreadStack ();
1641
1663
if (!mIsSrpClearAllRequested )
@@ -1684,6 +1706,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_SetupSrpHost(co
1684
1706
template <class ImplClass >
1685
1707
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_ClearSrpHost(const char * aHostName)
1686
1708
{
1709
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
1687
1710
CHIP_ERROR error = CHIP_NO_ERROR;
1688
1711
1689
1712
Impl ()->LockThreadStack ();
@@ -1798,6 +1821,7 @@ CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::FromOtDnsRespons
1798
1821
template <class ImplClass >
1799
1822
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::ResolveAddress(intptr_t context, otDnsAddressCallback callback)
1800
1823
{
1824
+ VerifyOrReturnError (ThreadStackMgrImpl ().OTInstance (), CHIP_ERROR_INCORRECT_STATE);
1801
1825
DnsResult * dnsResult = reinterpret_cast <DnsResult *>(context);
1802
1826
1803
1827
ThreadStackMgrImpl ().LockThreadStack ();
@@ -1952,6 +1976,7 @@ template <class ImplClass>
1952
1976
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_DnsBrowse(const char * aServiceName, DnsBrowseCallback aCallback,
1953
1977
void * aContext)
1954
1978
{
1979
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
1955
1980
CHIP_ERROR error = CHIP_NO_ERROR;
1956
1981
1957
1982
Impl ()->LockThreadStack ();
@@ -2062,6 +2087,7 @@ template <class ImplClass>
2062
2087
CHIP_ERROR GenericThreadStackManagerImpl_OpenThread<ImplClass>::_DnsResolve(const char * aServiceName, const char * aInstanceName,
2063
2088
DnsResolveCallback aCallback, void * aContext)
2064
2089
{
2090
+ VerifyOrReturnError (mOTInst , CHIP_ERROR_INCORRECT_STATE);
2065
2091
CHIP_ERROR error = CHIP_NO_ERROR;
2066
2092
2067
2093
Impl ()->LockThreadStack ();
0 commit comments