config changes
Fork of nRF51822 by
Revision 603:b1616eaf8206, committed 2016-01-11
- Comitter:
- vcoubard
- Date:
- Mon Jan 11 10:19:37 2016 +0000
- Parent:
- 602:e7ba21c2c943
- Child:
- 604:0f5c8725146c
- Commit message:
- Synchronized with git rev 12e6c9ec
Author: Andres Amaya Garcia
Make setWhitelist check errors before changing state
Changed in this revision
source/nRF5xGap.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/source/nRF5xGap.cpp Mon Jan 11 10:19:37 2016 +0000 +++ b/source/nRF5xGap.cpp Mon Jan 11 10:19:37 2016 +0000 @@ -659,12 +659,16 @@ return BLE_ERROR_PARAM_OUT_OF_RANGE; } - whitelistAddressesSize = 0; + /* Test for invalid parameters before we change the internal state */ for (uint8_t i = 0; i < whitelistIn.size; ++i) { if (whitelistIn.addresses[i].type == BLEProtocol::AddressType_t::RANDOM_PRIVATE_NON_RESOLVABLE) { /* This is not allowed because it is completely meaningless */ return BLE_ERROR_INVALID_PARAM; } + } + + whitelistAddressesSize = 0; + for (uint8_t i = 0; i < whitelistIn.size; ++i) { memcpy(&whitelistAddresses[whitelistAddressesSize], &whitelistIn.addresses[i], sizeof(BLEProtocol::Address_t)); whitelistAddressesSize++; }