mirror of
https://github.com/espressif/openthread.git
synced 2026-08-22 02:19:52 +00:00
[key-manager] remove default master key (#5998)
When initializing, we should use randomly generated network parameters instead of default ones, to eliminate the possibility of unintentional use of default credentials.
This commit is contained in:
@@ -175,4 +175,13 @@ proc get_rloc16 {} {
|
||||
return $rval
|
||||
}
|
||||
|
||||
proc setup_default_network {} {
|
||||
send "channel 11\n"
|
||||
expect "Done"
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
send "masterkey 00112233445566778899aabbccddeeff\n"
|
||||
expect "Done"
|
||||
}
|
||||
|
||||
set timeout 10
|
||||
|
||||
@@ -29,50 +29,61 @@
|
||||
|
||||
source "tests/scripts/expect/_common.exp"
|
||||
|
||||
proc setup_two_nodes {{childmode {r}} {should_spawn_node true}} {
|
||||
set JOINER_PSK "J01NME"
|
||||
|
||||
proc setup_two_nodes {{childmode "r"} {should_spawn_node true}} {
|
||||
# Sets up a Thread network with 2 nodes, spawn_1 as the leader and spawn_2
|
||||
# as a child.
|
||||
set psk "J01NME"
|
||||
|
||||
if {$should_spawn_node} {
|
||||
spawn_node 2
|
||||
} else {
|
||||
switch_node 2
|
||||
}
|
||||
send "eui64\n"
|
||||
expect -re {([0-9a-f]{16})}
|
||||
set eui64 $expect_out(1,string)
|
||||
expect "Done"
|
||||
|
||||
# Sets up a Thread network with node 1 as the leader.
|
||||
if {$should_spawn_node} {
|
||||
spawn_node 1
|
||||
} else {
|
||||
switch_node 1
|
||||
}
|
||||
setup_leader
|
||||
setup_node 2 $childmode "child"
|
||||
}
|
||||
|
||||
send "commissioner start\n"
|
||||
proc setup_node {node {mode "r"} {role "child"}} {
|
||||
switch_node $node
|
||||
send "eui64\n"
|
||||
expect "eui64"
|
||||
expect -re {([0-9a-f]{16})}
|
||||
set eui64 $expect_out(1,string)
|
||||
expect "Done"
|
||||
expect "Commissioner: active"
|
||||
send "commissioner joiner add $eui64 $psk\n"
|
||||
|
||||
switch_node 1
|
||||
send "commissioner state\n"
|
||||
expect {
|
||||
"disabled" {
|
||||
expect "Done"
|
||||
send "commissioner start\n"
|
||||
expect "Done"
|
||||
expect "Commissioner: active"
|
||||
}
|
||||
"active" {
|
||||
expect "Done"
|
||||
}
|
||||
}
|
||||
send "commissioner joiner add $eui64 $::JOINER_PSK\n"
|
||||
expect "Done"
|
||||
wait_for "netdata steeringdata check $eui64" "Done"
|
||||
send "channel\n"
|
||||
expect -re {(\d+)}
|
||||
set channel $expect_out(1,string)
|
||||
expect "Done"
|
||||
|
||||
switch_node 2
|
||||
send "mode $childmode\n"
|
||||
switch_node $node
|
||||
send "mode $mode\n"
|
||||
expect "Done"
|
||||
send "ifconfig up\n"
|
||||
expect "Done"
|
||||
send "joiner start $psk\n"
|
||||
send "joiner start $::JOINER_PSK\n"
|
||||
expect "Done"
|
||||
wait_for "" "Join success"
|
||||
send "thread start\n"
|
||||
expect "Done"
|
||||
wait_for "state" "child"
|
||||
wait_for "state" $role
|
||||
expect "Done"
|
||||
|
||||
switch_node 1
|
||||
send "commissioner joiner remove $eui64\n"
|
||||
expect "Done"
|
||||
}
|
||||
|
||||
@@ -28,30 +28,15 @@
|
||||
#
|
||||
|
||||
source "tests/scripts/expect/_common.exp"
|
||||
source "tests/scripts/expect/_multinode.exp"
|
||||
|
||||
set max_node 15
|
||||
spawn_node 1
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
send "ifconfig up\n"
|
||||
expect "Done"
|
||||
send "thread start\n"
|
||||
expect "Done"
|
||||
wait_for "state" "leader"
|
||||
expect "Done"
|
||||
setup_leader
|
||||
|
||||
for {set i 2} {$i <= $max_node} {incr i} {
|
||||
spawn_node $i
|
||||
send "mode r\n"
|
||||
expect "Done"
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
send "ifconfig up\n"
|
||||
expect "Done"
|
||||
send "thread start\n"
|
||||
expect "Done"
|
||||
wait_for "state" "child"
|
||||
expect "Done"
|
||||
setup_node $i
|
||||
}
|
||||
|
||||
set spawn_id $spawn_ids(1)
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
source "tests/scripts/expect/_common.exp"
|
||||
|
||||
spawn_node 1
|
||||
setup_default_network
|
||||
|
||||
set timeout 1
|
||||
|
||||
@@ -57,6 +58,7 @@ set extaddr1 [get_extaddr]
|
||||
get_rloc16
|
||||
|
||||
spawn_node 2 cli
|
||||
setup_default_network
|
||||
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
@@ -74,6 +76,7 @@ sleep 3
|
||||
get_rloc16
|
||||
|
||||
spawn_node 3 cli
|
||||
setup_default_network
|
||||
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
@@ -99,6 +102,7 @@ set extaddr3 [get_extaddr]
|
||||
get_rloc16
|
||||
|
||||
spawn_node 4 cli
|
||||
setup_default_network
|
||||
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
|
||||
@@ -190,14 +190,7 @@ try {
|
||||
puts "Many children, queued child-to-child packets"
|
||||
|
||||
spawn_node 1 "rcp" "spinel+hdlc_uart://$host_pty"
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
send "ifconfig up\n"
|
||||
expect "Done"
|
||||
send "thread start\n"
|
||||
expect "Done"
|
||||
wait_for "state" "leader"
|
||||
expect "Done"
|
||||
setup_leader
|
||||
send "ipaddr mleid\n"
|
||||
expect "ipaddr mleid"
|
||||
expect -re {(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4})}
|
||||
@@ -211,15 +204,8 @@ try {
|
||||
set max_children 15
|
||||
for {set i 2} {$i <= $max_children + 1} {incr i} {
|
||||
spawn_node $i
|
||||
send "mode -\n"
|
||||
expect "Done"
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
send "ifconfig up\n"
|
||||
expect "Done"
|
||||
send "thread start\n"
|
||||
expect "Done"
|
||||
wait_for "state" "child"
|
||||
setup_node $i "-"
|
||||
switch_node $i
|
||||
send "ipaddr mleid\n"
|
||||
expect "ipaddr mleid"
|
||||
expect -re {(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4})}
|
||||
|
||||
@@ -37,11 +37,7 @@
|
||||
source "tests/scripts/expect/_common.exp"
|
||||
|
||||
spawn_node 1
|
||||
|
||||
set timeout 1
|
||||
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
setup_default_network
|
||||
|
||||
send "ifconfig up\n"
|
||||
expect "Done"
|
||||
@@ -55,9 +51,7 @@ expect "Done"
|
||||
set extaddr1 [get_extaddr]
|
||||
|
||||
spawn_node 2 cli
|
||||
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
setup_default_network
|
||||
|
||||
send "ifconfig up\n"
|
||||
expect "Done"
|
||||
@@ -69,9 +63,7 @@ wait_for "state" "router"
|
||||
sleep 3
|
||||
|
||||
spawn_node 3 cli
|
||||
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
setup_default_network
|
||||
|
||||
send "macfilter addr add ${extaddr1}\n"
|
||||
expect "Done"
|
||||
@@ -91,9 +83,7 @@ sleep 4
|
||||
set extaddr3 [get_extaddr]
|
||||
|
||||
spawn_node 4 cli
|
||||
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
setup_default_network
|
||||
|
||||
send "mode rn\n"
|
||||
expect "Done"
|
||||
|
||||
@@ -53,7 +53,12 @@ expect "Done"
|
||||
send "udp bind :: 1234\n"
|
||||
expect "Done"
|
||||
|
||||
send "udp connect fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234\n"
|
||||
send "dataset active\n"
|
||||
expect -re {Mesh Local Prefix: ([0-9a-f:]*)::\/64}
|
||||
set prefix $expect_out(1,string)
|
||||
expect "Done"
|
||||
|
||||
send "udp connect $prefix:bb1:ebd6:ad10:f33 1234\n"
|
||||
expect "Done"
|
||||
|
||||
send "udp connect :: 1\n"
|
||||
|
||||
@@ -28,37 +28,23 @@
|
||||
#
|
||||
|
||||
source "tests/scripts/expect/_common.exp"
|
||||
source "tests/scripts/expect/_multinode.exp"
|
||||
|
||||
spawn_node 1
|
||||
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
send "ifconfig up\n"
|
||||
expect "Done"
|
||||
send "thread start\n"
|
||||
expect "Done"
|
||||
wait_for "state" "leader"
|
||||
spawn_node 2 mtd
|
||||
send "csl period 5000\n"
|
||||
expect "Done"
|
||||
|
||||
setup_two_nodes "-" false
|
||||
|
||||
switch_node 1
|
||||
send "ipaddr mleid\n"
|
||||
expect -re {(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4})}
|
||||
set addr $expect_out(1,string)
|
||||
expect "Done"
|
||||
|
||||
spawn_node 2 mtd
|
||||
|
||||
send "panid 0xface\n"
|
||||
expect "Done"
|
||||
send "mode -\n"
|
||||
expect "Done"
|
||||
send "csl period 5000\n"
|
||||
expect "Done"
|
||||
send "ifconfig up\n"
|
||||
expect "Done"
|
||||
send "thread start\n"
|
||||
expect "Done"
|
||||
wait_for "state" "child"
|
||||
expect "Done"
|
||||
switch_node 2
|
||||
send "ping $addr\n"
|
||||
expect "16 bytes from $addr: icmp_seq=1"
|
||||
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
# POSSIBILITY OF SUCH DAMAGE.
|
||||
#
|
||||
|
||||
import binascii
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
@@ -157,6 +158,7 @@ class TestCase(NcpSupportMixin, unittest.TestCase):
|
||||
if node.is_host:
|
||||
continue
|
||||
|
||||
self.nodes[i].set_masterkey(binascii.hexlify(config.DEFAULT_MASTER_KEY).decode())
|
||||
self.nodes[i].set_panid(params['panid'])
|
||||
self.nodes[i].set_mode(params['mode'])
|
||||
|
||||
@@ -184,6 +186,8 @@ class TestCase(NcpSupportMixin, unittest.TestCase):
|
||||
self.nodes[i].set_timeout(params['timeout'])
|
||||
|
||||
if 'active_dataset' in params:
|
||||
if 'master_key' not in params['active_dataset']:
|
||||
params['active_dataset']['master_key'] = binascii.hexlify(config.DEFAULT_MASTER_KEY).decode()
|
||||
self.nodes[i].set_active_dataset(params['active_dataset']['timestamp'],
|
||||
panid=params['active_dataset'].get('panid'),
|
||||
channel=params['active_dataset'].get('channel'),
|
||||
|
||||
Reference in New Issue
Block a user