Skip to content

Commit 780e9af

Browse files
author
Arto Kinnunen
committed
Squashed 'features/nanostack/sal-stack-nanostack/' changes from 513a38e..c5ee9e4
c5ee9e4 Remove content from unit tests f7ca82a Merge branch 'release_internal' into release_external b400a6a Fix for pr ARMmbed#1984 (ARMmbed#1987) 30d25bc Fix compiler warnings (ARMmbed#1986) d46d7b3 Prioritise thread control messages (ARMmbed#1984) e59dbd8 Update domain address lifetime (ARMmbed#1985) 8a5cb75 Merge pull request ARMmbed#1980 from ARMmbed/sync_with_MbedOS bd6feab Update coding style ff14e80 (via Mbed OS) nanostack: icmpv6: fix build warning f5e3423 (via Mbed OS) Require dependencies from nanostack mbed_lib.json 3aec837 Restore ws_management_api.h to the latest version cd7ae3f (via Mbed OS) Review changes corrected 4f23008 (via Mbed OS) This is a initial version of Wi-Sun interface implementation. To get Wi-Sun mesh network working, also nanostack with Wi-Sun support is needed. ws_empty_functions.c and ws_management_api.h are temporary included here, so that wisun_tasklet will compiled without problems. They will replaced with the official versions with next nanostack release. e029444 Merge pull request ARMmbed#1981 from ARMmbed/iotthd-3111 d7e8aea Path control size from 5->7. a5fe76f randomise challenge tlv for parent request retries. (ARMmbed#1977) a1c8277 Merge pull request ARMmbed#1978 from ARMmbed/IOTTHD-3219 62f8b41 Fix compiler warnings 1ec7a84 Fix issues found by coverity 5fe7120 Merge pull request ARMmbed#1974 from ARMmbed/iotthd-3100 51358f9 Removed Unncessary debug print. 136d1b1 Merge pull request ARMmbed#1973 from ARMmbed/IOTTHD-3018 4e557ae DHCPv6 update: 85b33e1 Update BBR prefix assignment (ARMmbed#1972) 899b2c5 DHCPv6 client and server update: 9009eaf Update copyright year to test files 6a56318 Update copyright year to Nanostack files a83472e Added Wi-Sun certificate and security test interfaces 7f4ebf1 Corrected compiler warnings 52e4c3f Added supplicant PAE NVM storage 92df57b Added key data access functions to key storage 5972bc3 Merge pull request ARMmbed#1959 from ARMmbed/ws_eapol_ie_update 98af118 Merge pull request ARMmbed#1965 from ARMmbed/IOTTHD-3193 fc76d1e Merge pull request ARMmbed#1963 from ARMmbed/rename_socket_h ba3a649 Added WS flagging to EAP header parser 048f14a Rename address.h 5739b4a Fixed aro registration error 887d931 Rename socket.h to ns_socket.h 7ebaa8e Add Nanostack configuration for WS (ARMmbed#1961) ed87161 Code style fix. e20028a Fix compiler warnings (ARMmbed#1957) b86f885 EAPOL data flow IE update 65472de Fixed Function protype typo. f539287 Added support for write/READ EA-IE header IE Element's ce72b55 Merge pull request ARMmbed#1958 from ARMmbed/tls_conf_err 1e8b18c Added handling for mbed TLS configuration error bdfea40 WS: Use common channel number calc function 4802aae Merge pull request ARMmbed#1930 from ARMmbed/IOTTHD-3027 2b8c846 PAE BR address write/read interface 9777ad1 Remove yotta references (ARMmbed#1954) af8890b Merge pull request ARMmbed#1949 from ARMmbed/eapol_eap_and_tls c546d4f WS: Fixed EU domain channel numbers in neighbor class cff6f0b WS: Missing return value fix ebcdba5 Changed EAP-TLS identity to anonymous 34d2f15 Corrected defects and coding style 79c7157 WS: Default domain config update 0724863 Merge branch 'master' into IOTTHD-3027 65ccc41 WS: RF config set in own functions 76d235e MAC: Fixed virtual driver warnings 88641c1 Updates to PAEs and other security protocols f57138f Security key storage and certificate info updates b7177c5 TLS security protocol and mbed TLS security protocol library 9c9e3c9 EAP-TLS protocol implementation 9c5fc92 WS: Fixed code style acce0dd Added empty function for test 4b28192 Added support for ARO registration failure 9d251fa Added empty function fr new interface 61f520f Added api to configure network size parameters 4d26258 Flagged mbed TLS KW header and corrected bool definitions 3d903fa Corrected NIST AES KW flagging 2f4e099 Removed temporary KW functions and corrected ut and style 6481549 Added GKH MIC validation and encryption cc3ce58 Moved 4WH functions to library and added constants 650771c Added unit test to NIST AES KW library 6a82e7d added parent priority handling. (ARMmbed#1942) 7b7f1c1 Merge pull request ARMmbed#1945 from ARMmbed/fix_synch_parent_warn 38b28e2 Fix coverity error (ARMmbed#1943) c4afedc thread_mle_message_handler: fix build warning (ARMmbed#1940) a5be64a Follow Mbed OS coding style (ARMmbed#1941) 6298cef Sync mbed_lib.json with Mbed OS (ARMmbed#1935) afe3ec6 Added Wi-Sun flagging to eapol helper 28d10d6 Merge pull request ARMmbed#1901 from ARMmbed/kmp_pae_init 3f56121 Disabled EAPOL flags 97f07a9 Tuned EAPOL timers for small networks 6e063b6 added Wi-SUN neighbor table management to Wi-SUN 7f4c61d Corrected KMP api start on authenticator 91ca2e6 Corrected KMP timer active check and security protocol address get 65d983f If mbedtls NIST AES KW is not enabled defined it as null algorithm 16dbe27 Added unit test stub for PAE controller a524936 Moved EAPOL relay port and IP address configuration to bootstrap 68fa4f6 Added extra debug info flags to new security libraries c4411ea Removed extra memory frees from KMP socket and eapol if and fixed KMP comments 8088a86 Added and fixed security protocols comments cc32457 Modified PAEs to use protocol core timer function call 03469f3 Modified PAE entities to be bound to interface 369c8a0 Added 4WH integrity protection and encryption ebae1d5 Added HMAC-SHA1, IEEE 802.11 PRF and NIST AES KW libraries 2d50887 Corrected Wi-SUN security component initializations 8a8b6ef Added configuration flags for supplicant and authenticator PAEs and EAPOL relay 3868ff1 PAE and security protocols timer support c61066a Corrected GKH to set eapol-KEY message group key negotation bit correctly dfe52d9 Added 4WH,GKH and EAP-TLS module and modified kmp service 782f3fb Relay message flow optimization bbd6ee1 Integrate EAPOL new encode and decode functionality 1802ee7 EAPOL message parser and write helper function. da15653 EAPOL relay and KMP changes fad633f EAPOL relay cc97054 Unicast Shedule update a099524 EAPOL authtentication start fix 3f32a7a Fix valgrind uninitilaized data use. 6e9f6a4 Corrected memory errors and some compiler warnings c5f1af3 Initial EAPOL changes e48aa79 WS: Use Tack in Ack wait time 59a65ea Change FHSS timing defaults be06ecb FHSS WS: Fixed synch parent warning a3aa38b Thread extension commission updates (ARMmbed#1870) 3e89d0a Multicast registrations update (ARMmbed#1931) e18055a MAC: Update symbol rate when RF configuration changed 9eada28 WS: Store RF configuration 35145a3 MAC: RF configuration delivery implemented d6b2bbc Merge pull request ARMmbed#1928 from ARMmbed/IOTTHD-3028 80683e2 MAC/WS: Implemented Ack wait duration set 0e9ead2 Remove excess tracing (ARMmbed#1927) ae210cd Merge pull request ARMmbed#1923 from ARMmbed/IOTTHD-3080 17fad47 Merge pull request ARMmbed#1924 from ARMmbed/IOTTHD-1608 6fd6bd5 Update thread neighbor table initialisation (ARMmbed#1926) c09d38a Merge pull request ARMmbed#1925 from ARMmbed/fix_protocol_if_fhss 9ac5301 MAC MLME: Removed BEA TX trace which was causing stack overflow 5dee7b1 FHSS: Use debug callback in TX/RX slot switch f779fad WS/Protocol: Fixed getting interface pointer using FHSS api 4177fa4 Prevalidate CoAP msg source address 5451b1a FHSS unit tests: Updated timestamp callback a2997b1 FHSS: Removed debug trace which was causing crash 3b6a921 FHSS: Debug callback update ec1c41d FHSS: Use given TX time in synch calculation f0c0f66 MAC: Write FHSS synch info with tx time 78ea0eb FHSS: Debug callbacks added c4ef759 MAC: Write FHSS synch info before calling PHY TX function 9cca341 FHSS: Use timestamp delivered by MAC be46564 Add CoAP message validation 883eb46 Add callback for CoAP message prevalidation (ARMmbed#1918) 59bbe31 Merge pull request ARMmbed#1917 from ARMmbed/IOTTHD-3029 ac4a76e Fixed promiscuous/sniffer mode bc2fb64 FHSS WS: time convert to support negative values 7dce509 FHSS WS: Clock drift compensation implemented ac7c90a Fix Thread resolution client initialisation (ARMmbed#1915) b744186 Set the default unicast channel function as Direct Hash 612c4b5 Update DHCP to follow Wi-SUN specification eeb5168 IPv6 route metrics update (ARMmbed#1912) 1debcca Fix compilation warnings noticed in mbed-os (ARMmbed#1909) 0a18231 Change ARO routes to be direct route instead of on-link 7fb321e Merge pull request ARMmbed#1906 from ARMmbed/parent_update_fix b5afc35 Fixed missing broadcast synch information loose with default zeroes. 3dbc874 Add missing closing bracket 0d746f0 Changed Wi-SUN HW type to match specification 2804bf4 Enabled roaming and routing between multiple Wi-SUN BR git-subtree-dir: features/nanostack/sal-stack-nanostack git-subtree-split: c5ee9e4
1 parent 7781856 commit 780e9af

File tree

277 files changed

+23625
-445
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

277 files changed

+23625
-445
lines changed

.gitignore

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
.settings/
2-
.yotta.json
32
*.dep
43
*.htm
54
*.crf
@@ -66,8 +65,7 @@ cscope.files
6665
!debugger.ini
6766
*Log.txt
6867
*.mpw
69-
yotta_modules
70-
yotta_targets
7168
build
7269
html
7370
site
71+

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ clean-extra: $(CLEANTESTDIRS)
109109
# 3. TBD: importing to mbed OS
110110

111111
TARGET_DIR:=release
112-
CONFIGURATIONS_TO_BUILD:=lowpan_border_router lowpan_host lowpan_router nanostack_full thread_border_router thread_router thread_end_device ethernet_host
112+
CONFIGURATIONS_TO_BUILD:=lowpan_border_router lowpan_host lowpan_router nanostack_full thread_border_router thread_router thread_end_device ethernet_host ws_border_router ws_router
113113
TOOLCHAINS_TO_BUILD:=GCC ARM ARMC6 IAR
114114
CORES_TO_BUILD:=Cortex-M0 Cortex-M3
115115

mbed_lib.json

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,25 @@
11
{
22
"name": "nanostack",
3+
"requires": ["nanostack-eventloop", "coap-service"],
34
"config": {
4-
"configuration": "nanostack_full"
5+
"configuration": {
6+
"help": "Build time configuration. Refer to Handbook for valid values. Default: full stack",
7+
"value": "nanostack_full"
8+
}
59
},
6-
"macros": ["NS_USE_EXTERNAL_MBED_TLS"]
10+
"macros": ["NS_USE_EXTERNAL_MBED_TLS"],
11+
"target_overrides": {
12+
"KW24D": {
13+
"nanostack.configuration": "lowpan_router"
14+
},
15+
"NCS36510": {
16+
"nanostack.configuration": "lowpan_router"
17+
},
18+
"TB_SENSE_12": {
19+
"nanostack.configuration": "lowpan_router"
20+
},
21+
"KW41Z": {
22+
"nanostack.configuration": "lowpan_router"
23+
}
24+
}
725
}

nanostack/dhcp_service_api.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013-2017, Arm Limited and affiliates.
2+
* Copyright (c) 2013-2018, Arm Limited and affiliates.
33
* SPDX-License-Identifier: Apache-2.0
44
*
55
* Licensed under the Apache License, Version 2.0 (the "License");

nanostack/ethernet_mac_api.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2016-2017, Arm Limited and affiliates.
2+
* Copyright (c) 2016-2018, Arm Limited and affiliates.
33
* SPDX-License-Identifier: Apache-2.0
44
*
55
* Licensed under the Apache License, Version 2.0 (the "License");

nanostack/mlme.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,7 @@ typedef enum {
264264
macAutoRequestKeyIndex = 0x7b, /*<The index of the key used for automatic data*/
265265
macDefaultKeySource = 0x7c, /*<Default key source*/
266266
//NON standard extension
267+
macRfConfiguration = 0xfb, /*<RF channel configuration parameters*/
267268
macAcceptByPassUnknowDevice = 0xfc, /*< Accept data trough MAC if packet is data can be authenticated by group key nad MIC. Security enforsment point must be handled carefully these packets */
268269
macLoadBalancingBeaconTx = 0xfd, /*< Trig Beacon from load balance module periodic */
269270
macLoadBalancingAcceptAnyBeacon = 0xfe, /*<Beacon accept state control from other network. Value size bool, data true=Enable, false=disable .*/

nanostack/multicast_api.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2012-2017, Arm Limited and affiliates.
2+
* Copyright (c) 2012-2018, Arm Limited and affiliates.
33
* SPDX-License-Identifier: Apache-2.0
44
*
55
* Licensed under the Apache License, Version 2.0 (the "License");

nanostack/net_address_extension.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013-2017, Arm Limited and affiliates.
2+
* Copyright (c) 2013-2018, Arm Limited and affiliates.
33
* SPDX-License-Identifier: Apache-2.0
44
*
55
* Licensed under the Apache License, Version 2.0 (the "License");

nanostack/net_interface.h

Lines changed: 58 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2014-2018, Arm Limited and affiliates.
2+
* Copyright (c) 2014-2019, Arm Limited and affiliates.
33
* SPDX-License-Identifier: Apache-2.0
44
*
55
* Licensed under the Apache License, Version 2.0 (the "License");
@@ -235,6 +235,18 @@ typedef struct {
235235
const uint8_t *key_chain[4]; /**< Certificate private key. */
236236
} arm_certificate_chain_entry_s;
237237

238+
/** Certificate structure. */
239+
typedef struct {
240+
const uint8_t *cert; /**< Certificate pointer. */
241+
uint16_t cert_len; /**< Certificate length. */
242+
} arm_certificate_entry_s;
243+
244+
/** Certificate Revocation List structure. */
245+
typedef struct {
246+
const uint8_t *crl; /**< Certificate Revocation List pointer. */
247+
uint16_t crl_len; /**< Certificate Revocation List length. */
248+
} arm_cert_revocation_list_entry_s;
249+
238250
/** Structure for the network keys used by net_network_key_get */
239251
typedef struct ns_keys_t
240252

@@ -880,12 +892,56 @@ extern int8_t arm_net_route_delete(const uint8_t *prefix, uint8_t prefix_len, co
880892
extern int8_t arm_nwk_6lowpan_border_router_nd_context_load(int8_t interface_id, uint8_t *contex_data); //NVM
881893

882894
/**
883-
* Set certificate chain for PANA
895+
* Set certificate chain
896+
*
884897
* \param chain_info Certificate chain.
885898
* \return 0 on success, negative on failure.
886899
*/
887900
extern int8_t arm_network_certificate_chain_set(const arm_certificate_chain_entry_s *chain_info);
888901

902+
/**
903+
* Add trusted certificate
904+
*
905+
* This is used to add trusted root or intermediate certificate in addition to those
906+
* added using certificate chain set call. Function can be called several times to add
907+
* more than one certificate.
908+
*
909+
* \param cert Certificate.
910+
* \return 0 on success, negative on failure.
911+
*/
912+
extern int8_t arm_network_trusted_certificate_add(const arm_certificate_entry_s *cert);
913+
914+
/**
915+
* Remove trusted certificate
916+
*
917+
* This is used to remove trusted root or intermediate certificate.
918+
*
919+
* \param cert Certificate.
920+
* \return 0 on success, negative on failure.
921+
*/
922+
extern int8_t arm_network_trusted_certificate_remove(const arm_certificate_entry_s *cert);
923+
924+
/**
925+
* Add Certificate Revocation List
926+
*
927+
* This is used to add Certificate Revocation List (CRL). Function can be called several
928+
* times to add more than one Certificate Revocation List.
929+
*
930+
* \param crl Certificate revocation list
931+
* \return 0 on success, negative on failure.
932+
*/
933+
extern int8_t arm_network_certificate_revocation_list_add(const arm_cert_revocation_list_entry_s *crl);
934+
935+
/**
936+
* Remove Certificate Revocation List
937+
*
938+
* This is used to remove Certificate Revocation List.
939+
*
940+
* \param crl Certificate revocation list
941+
* \return 0 on success, negative on failure.
942+
*/
943+
extern int8_t arm_network_certificate_revocation_list_remove(const arm_cert_revocation_list_entry_s *crl);
944+
889945
/**
890946
* \brief Add PSK key to TLS library.
891947
*

nanostack/net_load_balance_api.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2016-2017, Arm Limited and affiliates.
2+
* Copyright (c) 2016-2018, Arm Limited and affiliates.
33
* SPDX-License-Identifier: Apache-2.0
44
*
55
* Licensed under the Apache License, Version 2.0 (the "License");

nanostack/net_nvm_api.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013-2017, Arm Limited and affiliates.
2+
* Copyright (c) 2013-2018, Arm Limited and affiliates.
33
* SPDX-License-Identifier: Apache-2.0
44
*
55
* Licensed under the Apache License, Version 2.0 (the "License");

nanostack/net_thread_test.h

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2014-2018, Arm Limited and affiliates.
2+
* Copyright (c) 2014-2019, Arm Limited and affiliates.
33
* SPDX-License-Identifier: BSD-3-Clause
44
*
55
* Redistribution and use in source and binary forms, with or without
@@ -530,6 +530,30 @@ int thread_test_mle_message_send(int8_t interface_id, uint8_t *dst_address, uint
530530
* \return <0 Failure
531531
*/
532532
int thread_test_extension_name_set(int8_t interface_id, char extension_name[16]);
533+
534+
/**
535+
* \brief Set multicast addresses per message.
536+
*
537+
* \param value Number of addresses per message (valid range 1-15)
538+
*
539+
* \return 0 OK
540+
* \return <0 Failure
541+
*/
542+
int8_t thread_test_mcast_address_per_message_set(uint8_t value);
543+
544+
/**
545+
* Thread router parent priority set.
546+
*
547+
* This function is used to set parent priority in connectivity TLV.
548+
*
549+
* \param interface_id Network interface ID.
550+
* \param parent_priority value to be set (0x40 High, 0x00 Medium, 0xC0 Low, 0x80 Do not use) .
551+
*
552+
* \return 0, Set OK.
553+
* \return <0 Set Fail.
554+
*/
555+
int thread_test_parent_priority_set(int8_t interface_id, uint8_t parent_priority);
556+
533557
#ifdef __cplusplus
534558
}
535559
#endif

nanostack/net_ws_test.h

Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,157 @@
1+
/*
2+
* Copyright (c) 2014-2019, Arm Limited and affiliates.
3+
* SPDX-License-Identifier: Apache-2.0
4+
*
5+
* Licensed under the Apache License, Version 2.0 (the "License");
6+
* you may not use this file except in compliance with the License.
7+
* You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*/
17+
18+
#ifndef NET_WS_TEST_H_
19+
#define NET_WS_TEST_H_
20+
21+
/* Prevent this file being inserted in public Doxygen generated file
22+
* this is not part of our external API. */
23+
#ifndef DOXYGEN
24+
25+
/**
26+
* \file net_ws_test.h
27+
* \brief Wi-SUN Library Test API.
28+
*
29+
* \warning NOTICE! This is test API must not be used externally.
30+
*
31+
* \warning This file is not part of the version number control and can change any time.
32+
*
33+
*/
34+
35+
36+
#ifdef __cplusplus
37+
extern "C" {
38+
#endif
39+
40+
#include "ns_types.h"
41+
42+
/**
43+
* \brief Set Pan size.
44+
*
45+
* Pan size is reported to advertisement. Using this function
46+
* actual value can be overridden.
47+
*
48+
* Set pan_size to 0xffff to stop override
49+
*
50+
* \param interface_id Network Interface
51+
* \param pan_size Pan size reported in advertisements
52+
*
53+
* \return 0 OK
54+
* \return <0 Failure
55+
*/
56+
int ws_test_pan_size_set(int8_t interface_id, uint16_t pan_size);
57+
58+
/**
59+
* \brief Set maximum child count.
60+
*
61+
* Maximum amount of children allowed for this device
62+
*
63+
* Values above MAC neighbor table - RPL parents - temporary entries will cause undefined behaviour
64+
*
65+
* Set child count to 0xffff to stop override
66+
*
67+
* \param interface_id Network Interface
68+
* \param child_count Pan size reported in advertisements
69+
*
70+
* \return 0 OK
71+
* \return <0 Failure
72+
*/
73+
int ws_test_max_child_count_set(int8_t interface_id, uint16_t child_count);
74+
75+
/**
76+
* Sets Group Transient Keys.
77+
*
78+
* Sets Group Transient Keys (GTKs). Up to four GTKs can be set (GTKs from index
79+
* 0 to 3). At least one GTK must be set. GTKs provided in this function call are
80+
* compared to current GTKs on node or border router GTK storage. If GTK is new
81+
* or modified it is updated to GTK storage. If GTK is same as previous one, no
82+
* changes are made. If GTK is NULL then it is removed from GTK storage. When a
83+
* new GTK is inserted or GTK is modified, GTK lifetime is set to default. If GTKs
84+
* are set to border router after bootstrap, border router initiates GTK update
85+
* to network.
86+
*
87+
* \param interface_id Network interface ID.
88+
* \param gtk GTK array, if GTK is not set, pointer for the index shall be NULL.
89+
*
90+
* \return 0 GTKs are set
91+
* \return <0 GTK set has failed
92+
*/
93+
int ws_test_gtk_set(int8_t interface_id, uint8_t *gtk[4]);
94+
95+
/**
96+
* Sets index of active key.
97+
*
98+
* Sets index of active Group Transient Key (GTK) to border router. If index is
99+
* set after bootstrap, initiates dissemination of new key index to network.
100+
*
101+
* \param interface_id Network interface ID.
102+
* \param index Key index
103+
*
104+
* \return 0 Active key index has been set
105+
* \return <0 Active key index set has failed
106+
*/
107+
int ws_test_active_key_set(int8_t interface_id, uint8_t index);
108+
109+
/**
110+
* Sets lifetime for keys
111+
*
112+
* Sets Group Transient Key (GTK), Pairwise Master Key (PMK) and
113+
* Pairwise Transient Key (PTK) lifetimes.
114+
*
115+
* \param interface_id Network interface ID.
116+
* \param gtk_lifetime GTK lifetime in minutes
117+
* \param pmk_lifetime PMK lifetime in minutes
118+
* \param ptk_lifetime PTK lifetime in minutes
119+
*
120+
* \return 0 Lifetimes are set
121+
* \return <0 Lifetime set has failed
122+
*/
123+
int ws_test_key_lifetime_set(
124+
int8_t interface_id,
125+
uint32_t gtk_lifetime,
126+
uint32_t pmk_lifetime,
127+
uint32_t ptk_lifetime
128+
);
129+
130+
/**
131+
* Sets time configurations for GTK keys
132+
*
133+
* Sets GTK Revocation Lifetime Reduction and GTK New Activation Time values
134+
* as parts of the GTK lifetime (e.g. value 3 is 1/3 * lifetime). Sets GTK
135+
* maximum mismatch time in minutes.
136+
*
137+
* \param interface_id Network interface ID.
138+
* \param revocat_lifetime_reduct GTK Revocation Lifetime Reduction (1 / value * GTK lifetime)
139+
* \param new_activation_time GTK New Activation Time (1 / value * GTK lifetime)
140+
* \param max_mismatch GTK maximum mismatch in minutes
141+
*
142+
* \return 0 Lifetimes are set
143+
* \return <0 Lifetime set has failed.
144+
*/
145+
int ws_test_gtk_time_settings_set(
146+
int8_t interface_id,
147+
uint8_t revocat_lifetime_reduct,
148+
uint8_t new_activation_time,
149+
uint32_t max_mismatch
150+
);
151+
152+
#ifdef __cplusplus
153+
}
154+
#endif
155+
156+
#endif /* DOXYGEN */
157+
#endif /* NET_THREAD_TEST_H_ */

nanostack/ns_mdns_api.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2017, Arm Limited and affiliates.
2+
* Copyright (c) 2017-2018, Arm Limited and affiliates.
33
* SPDX-License-Identifier: Apache-2.0
44
*
55
* Licensed under the Apache License, Version 2.0 (the "License");

nanostack/ns_sha256.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2006-2017, Arm Limited and affiliates.
2+
* Copyright (c) 2006-2018, Arm Limited and affiliates.
33
* SPDX-License-Identifier: Apache-2.0
44
*
55
* Licensed under the Apache License, Version 2.0 (the "License");

0 commit comments

Comments
 (0)