Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Try multiple transports in SetUpCodePairer. #16802

Merged

Conversation

bzbarsky-apple
Copy link
Contributor

When a device gets removed from a fabric and then factory reset, we
can get into a situation where it's only listening over BLE but there
are stale DNS-SD records for it. In that case we should try BLE once
we discover that doing PASE over IP does not work.

Fixes #16728

Problem

See above.

Change overview

See above.

Testing

Followed the steps to reproduce from #16728 and verified that once the IP PASE setup times out we connect to the m5stack over BLE and commission it.

@github-actions
Copy link

github-actions bot commented Mar 29, 2022

PR #16802: Size comparison from 1456eb1 to c328a64

Increases above 0.2%:

platform target config section 1456eb1 c328a64 change % change
linux tv-app debug .bss 164288 164736 448 0.3
Increases (3 builds for linux)
platform target config section 1456eb1 c328a64 change % change
linux chip-tool debug (read only) 10305813 10307237 1424 0.0
.text 8994117 8995541 1424 0.0
chip-tool-ipv6only arm64 (read only) 9918924 9919932 1008 0.0
.text 8360884 8361892 1008 0.0
tv-app debug (read only) 2698417 2699345 928 0.0
(read/write) 247520 247968 448 0.2
.bss 164288 164736 448 0.3
.text 2317410 2318338 928 0.0
Full report (27 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 1456eb1 c328a64 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 606578 606578 0 0.0
.app_xip_area 513348 513348 0 0.0
.bss 75976 75976 0 0.0
.data 604 604 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 564134 564134 0 0.0
.app_xip_area 472432 472432 0 0.0
.bss 74480 74480 0 0.0
.data 568 568 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 576394 576394 0 0.0
.app_xip_area 475044 475044 0 0.0
.bss 83808 83808 0 0.0
.data 508 508 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 927680 927680 0 0.0
(read/write) 129112 129112 0 0.0
.bss 127112 127112 0 0.0
.data 1996 1996 0 0.0
.text 927672 927672 0 0.0
BRD4161A+rpc (read only) 956688 956688 0 0.0
(read/write) 145064 145064 0 0.0
.bss 142888 142888 0 0.0
.data 2176 2176 0 0.0
.text 956680 956680 0 0.0
window-app BRD4161A (read only) 857164 857164 0 0.0
(read/write) 127072 127072 0 0.0
.bss 125200 125200 0 0.0
.data 1872 1872 0 0.0
.text 857156 857156 0 0.0
esp32 all-clusters-app c3devkit (read only) 968194 968194 0 0.0
(read/write) 1394706 1394706 0 0.0
.dram0.bss 62416 62416 0 0.0
.dram0.data 14204 14204 0 0.0
.flash.rodata 199176 199176 0 0.0
.flash.text 968194 968194 0 0.0
.iram0.text 62016 62016 0 0.0
m5stack (read only) 1023895 1023895 0 0.0
(read/write) 462468 462468 0 0.0
.dram0.bss 67944 67944 0 0.0
.dram0.data 34024 34024 0 0.0
.flash.rodata 228664 228664 0 0.0
.flash.text 1018511 1018511 0 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 705168 705168 0 0.0
.bss 77968 77968 0 0.0
.data 1876 1876 0 0.0
.text 619524 619524 0 0.0
lock k32w061+release (read/write) 704284 704284 0 0.0
.bss 77944 77944 0 0.0
.data 1916 1916 0 0.0
.text 618624 618624 0 0.0
linux all-clusters-app debug (read only) 2536025 2536025 0 0.0
(read/write) 143352 143352 0 0.0
.bss 57408 57408 0 0.0
.data 1280 1280 0 0.0
.data.rel.ro 78920 78920 0 0.0
.dynamic 592 592 0 0.0
.got 4184 4184 0 0.0
.init 27 27 0 0.0
.init_array 944 944 0 0.0
.rodata 216549 216549 0 0.0
.text 2155650 2155650 0 0.0
bridge-app debug+rpc (read only) 1769757 1769757 0 0.0
(read/write) 89520 89520 0 0.0
.bss 44520 44520 0 0.0
.data 1984 1984 0 0.0
.data.rel.ro 37936 37936 0 0.0
.dynamic 592 592 0 0.0
.got 3928 3928 0 0.0
.init 27 27 0 0.0
.init_array 544 544 0 0.0
.rodata 144940 144940 0 0.0
.text 1509461 1509461 0 0.0
chip-tool debug (read only) 10305813 10307237 1424 0.0
(read/write) 356424 356424 0 0.0
.bss 22464 22464 0 0.0
.data 1072 1072 0 0.0
.data.rel.ro 326792 326792 0 0.0
.dynamic 608 608 0 0.0
.got 4824 4824 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 525429 525429 0 0.0
.text 8994117 8995541 1424 0.0
chip-tool-ipv6only arm64 (read only) 9918924 9919932 1008 0.0
(read/write) 475361 475361 0 0.0
.bss 40737 40737 0 0.0
.data 1144 1144 0 0.0
.data.rel.ro 373512 373512 0 0.0
.dynamic 560 560 0 0.0
.got 56168 56168 0 0.0
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 500628 500628 0 0.0
.text 8360884 8361892 1008 0.0
door-lock-app debug (read only) 2022385 2022385 0 0.0
(read/write) 116896 116896 0 0.0
.bss 47648 47648 0 0.0
.data 992 992 0 0.0
.data.rel.ro 62840 62840 0 0.0
.dynamic 592 592 0 0.0
.got 4128 4128 0 0.0
.init 27 27 0 0.0
.init_array 664 664 0 0.0
.rodata 181532 181532 0 0.0
.text 1691042 1691042 0 0.0
lighting-app debug+rpc (read only) 2198737 2198737 0 0.0
(read/write) 123888 123888 0 0.0
.bss 48928 48928 0 0.0
.data 1472 1472 0 0.0
.data.rel.ro 67928 67928 0 0.0
.dynamic 608 608 0 0.0
.got 4176 4176 0 0.0
.init 27 27 0 0.0
.init_array 744 744 0 0.0
.rodata 175388 175388 0 0.0
.text 1864178 1864178 0 0.0
ota-provider-app debug (read only) 1962777 1962777 0 0.0
(read/write) 112688 112688 0 0.0
.bss 47584 47584 0 0.0
.data 1256 1256 0 0.0
.data.rel.ro 58184 58184 0 0.0
.dynamic 608 608 0 0.0
.got 4384 4384 0 0.0
.init 27 27 0 0.0
.init_array 616 616 0 0.0
.rodata 167307 167307 0 0.0
.text 1643602 1643602 0 0.0
ota-requestor-app debug (read only) 1990017 1990017 0 0.0
(read/write) 115912 115912 0 0.0
.bss 48512 48512 0 0.0
.data 1480 1480 0 0.0
.data.rel.ro 60440 60440 0 0.0
.dynamic 592 592 0 0.0
.got 4192 4192 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 163492 163492 0 0.0
.text 1673650 1673650 0 0.0
shell debug (read only) 2450793 2450793 0 0.0
(read/write) 147368 147368 0 0.0
.bss 67304 67304 0 0.0
.data 800 800 0 0.0
.data.rel.ro 73568 73568 0 0.0
.dynamic 592 592 0 0.0
.got 4160 4160 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 210002 210002 0 0.0
.text 2083842 2083842 0 0.0
thermostat-no-ble arm64 (read only) 2280564 2280564 0 0.0
(read/write) 148305 148305 0 0.0
.bss 62817 62817 0 0.0
.data 1040 1040 0 0.0
.data.rel.ro 76928 76928 0 0.0
.dynamic 560 560 0 0.0
.got 4512 4512 0 0.0
.init 24 24 0 0.0
.init_array 360 360 0 0.0
.rodata 139972 139972 0 0.0
.text 1917280 1917280 0 0.0
tv-app debug (read only) 2698417 2699345 928 0.0
(read/write) 247520 247968 448 0.2
.bss 164288 164736 448 0.3
.data 3136 3136 0 0.0
.data.rel.ro 74048 74048 0 0.0
.dynamic 592 592 0 0.0
.got 4552 4552 0 0.0
.init 27 27 0 0.0
.init_array 888 888 0 0.0
.rodata 206379 206379 0 0.0
.text 2317410 2318338 928 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2357132 2357132 0 0.0
.bss 185020 185020 0 0.0
.data 5760 5760 0 0.0
.text 1319732 1319732 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1144595 1144595 0 0.0
bss 143052 143052 0 0.0
rodata 142364 142364 0 0.0
text 784336 784336 0 0.0
p6 all-clusters-app default (read/write) 2499728 2499728 0 0.0
.bss 118440 118440 0 0.0
.data 2640 2640 0 0.0
.text 1457992 1457992 0 0.0
light-app default (read/write) 2401896 2401896 0 0.0
.bss 111912 111912 0 0.0
.data 2496 2496 0 0.0
.text 1360160 1360160 0 0.0
lock-app default (read/write) 2365528 2365528 0 0.0
.bss 111656 111656 0 0.0
.data 2456 2456 0 0.0
.text 1323792 1323792 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 788896 788896 0 0.0
bss 70268 70268 0 0.0
noinit 40416 40416 0 0.0
text 559196 559196 0 0.0

When a device gets removed from a fabric and then factory reset, we
can get into a situation where it's only listening over BLE but there
are stale DNS-SD records for it.  In that case we should try BLE once
we discover that doing PASE over IP does not work.
@bzbarsky-apple bzbarsky-apple force-pushed the try-various-addresses branch from c328a64 to 767280b Compare March 30, 2022 05:17
@github-actions
Copy link

github-actions bot commented Mar 30, 2022

PR #16802: Size comparison from 9d55707 to 767280b

Increases above 0.2%:

platform target config section 9d55707 767280b change % change
linux tv-app debug .bss 164288 164736 448 0.3
.rodata 206379 207115 736 0.4
Increases (3 builds for linux)
platform target config section 9d55707 767280b change % change
linux chip-tool debug (read only) 10308533 10311013 2480 0.0
.rodata 525813 526517 704 0.1
.text 8996453 8998229 1776 0.0
chip-tool-ipv6only arm64 (read only) 9921180 9922956 1776 0.0
.rodata 500948 501444 496 0.1
.text 8362724 8364004 1280 0.0
tv-app debug (read only) 2698417 2700321 1904 0.1
(read/write) 247520 247968 448 0.2
.bss 164288 164736 448 0.3
.rodata 206379 207115 736 0.4
.text 2317410 2318578 1168 0.1
Full report (27 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 9d55707 767280b change % change
cyw30739 light cyw930739m2evb_01 (read/write) 606578 606578 0 0.0
.app_xip_area 513348 513348 0 0.0
.bss 75976 75976 0 0.0
.data 604 604 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 564134 564134 0 0.0
.app_xip_area 472432 472432 0 0.0
.bss 74480 74480 0 0.0
.data 568 568 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 576394 576394 0 0.0
.app_xip_area 475044 475044 0 0.0
.bss 83808 83808 0 0.0
.data 508 508 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 927680 927680 0 0.0
(read/write) 129112 129112 0 0.0
.bss 127112 127112 0 0.0
.data 1996 1996 0 0.0
.text 927672 927672 0 0.0
BRD4161A+rpc (read only) 956688 956688 0 0.0
(read/write) 145064 145064 0 0.0
.bss 142888 142888 0 0.0
.data 2176 2176 0 0.0
.text 956680 956680 0 0.0
window-app BRD4161A (read only) 857164 857164 0 0.0
(read/write) 127072 127072 0 0.0
.bss 125200 125200 0 0.0
.data 1872 1872 0 0.0
.text 857156 857156 0 0.0
esp32 all-clusters-app c3devkit (read only) 968194 968194 0 0.0
(read/write) 1394706 1394706 0 0.0
.dram0.bss 62416 62416 0 0.0
.dram0.data 14204 14204 0 0.0
.flash.rodata 199176 199176 0 0.0
.flash.text 968194 968194 0 0.0
.iram0.text 62016 62016 0 0.0
m5stack (read only) 1023895 1023895 0 0.0
(read/write) 462468 462468 0 0.0
.dram0.bss 67944 67944 0 0.0
.dram0.data 34024 34024 0 0.0
.flash.rodata 228664 228664 0 0.0
.flash.text 1018511 1018511 0 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 705168 705168 0 0.0
.bss 77968 77968 0 0.0
.data 1876 1876 0 0.0
.text 619524 619524 0 0.0
lock k32w061+release (read/write) 704284 704284 0 0.0
.bss 77944 77944 0 0.0
.data 1916 1916 0 0.0
.text 618624 618624 0 0.0
linux all-clusters-app debug (read only) 2536025 2536025 0 0.0
(read/write) 143352 143352 0 0.0
.bss 57408 57408 0 0.0
.data 1280 1280 0 0.0
.data.rel.ro 78920 78920 0 0.0
.dynamic 592 592 0 0.0
.got 4184 4184 0 0.0
.init 27 27 0 0.0
.init_array 944 944 0 0.0
.rodata 216549 216549 0 0.0
.text 2155650 2155650 0 0.0
bridge-app debug+rpc (read only) 1769757 1769757 0 0.0
(read/write) 89520 89520 0 0.0
.bss 44520 44520 0 0.0
.data 1984 1984 0 0.0
.data.rel.ro 37936 37936 0 0.0
.dynamic 592 592 0 0.0
.got 3928 3928 0 0.0
.init 27 27 0 0.0
.init_array 544 544 0 0.0
.rodata 144940 144940 0 0.0
.text 1509461 1509461 0 0.0
chip-tool debug (read only) 10308533 10311013 2480 0.0
(read/write) 356424 356424 0 0.0
.bss 22464 22464 0 0.0
.data 1072 1072 0 0.0
.data.rel.ro 326792 326792 0 0.0
.dynamic 608 608 0 0.0
.got 4824 4824 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 525813 526517 704 0.1
.text 8996453 8998229 1776 0.0
chip-tool-ipv6only arm64 (read only) 9921180 9922956 1776 0.0
(read/write) 475393 475393 0 0.0
.bss 40737 40737 0 0.0
.data 1144 1144 0 0.0
.data.rel.ro 373512 373512 0 0.0
.dynamic 560 560 0 0.0
.got 56200 56200 0 0.0
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 500948 501444 496 0.1
.text 8362724 8364004 1280 0.0
door-lock-app debug (read only) 2022385 2022385 0 0.0
(read/write) 116896 116896 0 0.0
.bss 47648 47648 0 0.0
.data 992 992 0 0.0
.data.rel.ro 62840 62840 0 0.0
.dynamic 592 592 0 0.0
.got 4128 4128 0 0.0
.init 27 27 0 0.0
.init_array 664 664 0 0.0
.rodata 181532 181532 0 0.0
.text 1691042 1691042 0 0.0
lighting-app debug+rpc (read only) 2198737 2198737 0 0.0
(read/write) 123888 123888 0 0.0
.bss 48928 48928 0 0.0
.data 1472 1472 0 0.0
.data.rel.ro 67928 67928 0 0.0
.dynamic 608 608 0 0.0
.got 4176 4176 0 0.0
.init 27 27 0 0.0
.init_array 744 744 0 0.0
.rodata 175388 175388 0 0.0
.text 1864178 1864178 0 0.0
ota-provider-app debug (read only) 1962777 1962777 0 0.0
(read/write) 112688 112688 0 0.0
.bss 47584 47584 0 0.0
.data 1256 1256 0 0.0
.data.rel.ro 58184 58184 0 0.0
.dynamic 608 608 0 0.0
.got 4384 4384 0 0.0
.init 27 27 0 0.0
.init_array 616 616 0 0.0
.rodata 167307 167307 0 0.0
.text 1643602 1643602 0 0.0
ota-requestor-app debug (read only) 1990017 1990017 0 0.0
(read/write) 115912 115912 0 0.0
.bss 48512 48512 0 0.0
.data 1480 1480 0 0.0
.data.rel.ro 60440 60440 0 0.0
.dynamic 592 592 0 0.0
.got 4192 4192 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 163492 163492 0 0.0
.text 1673650 1673650 0 0.0
shell debug (read only) 2450793 2450793 0 0.0
(read/write) 147368 147368 0 0.0
.bss 67304 67304 0 0.0
.data 800 800 0 0.0
.data.rel.ro 73568 73568 0 0.0
.dynamic 592 592 0 0.0
.got 4160 4160 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 210002 210002 0 0.0
.text 2083842 2083842 0 0.0
thermostat-no-ble arm64 (read only) 2280564 2280564 0 0.0
(read/write) 148305 148305 0 0.0
.bss 62817 62817 0 0.0
.data 1040 1040 0 0.0
.data.rel.ro 76928 76928 0 0.0
.dynamic 560 560 0 0.0
.got 4512 4512 0 0.0
.init 24 24 0 0.0
.init_array 360 360 0 0.0
.rodata 139972 139972 0 0.0
.text 1917280 1917280 0 0.0
tv-app debug (read only) 2698417 2700321 1904 0.1
(read/write) 247520 247968 448 0.2
.bss 164288 164736 448 0.3
.data 3136 3136 0 0.0
.data.rel.ro 74048 74048 0 0.0
.dynamic 592 592 0 0.0
.got 4552 4552 0 0.0
.init 27 27 0 0.0
.init_array 888 888 0 0.0
.rodata 206379 207115 736 0.4
.text 2317410 2318578 1168 0.1
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2357132 2357132 0 0.0
.bss 185020 185020 0 0.0
.data 5760 5760 0 0.0
.text 1319732 1319732 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1144595 1144595 0 0.0
bss 143052 143052 0 0.0
rodata 142364 142364 0 0.0
text 784336 784336 0 0.0
p6 all-clusters-app default (read/write) 2499728 2499728 0 0.0
.bss 118440 118440 0 0.0
.data 2640 2640 0 0.0
.text 1457992 1457992 0 0.0
light-app default (read/write) 2401896 2401896 0 0.0
.bss 111912 111912 0 0.0
.data 2496 2496 0 0.0
.text 1360160 1360160 0 0.0
lock-app default (read/write) 2365528 2365528 0 0.0
.bss 111656 111656 0 0.0
.data 2456 2456 0 0.0
.text 1323792 1323792 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 788896 788896 0 0.0
bss 70268 70268 0 0.0
noinit 40416 40416 0 0.0
text 559196 559196 0 0.0

src/controller/SetUpCodePairer.cpp Outdated Show resolved Hide resolved
@github-actions
Copy link

PR #16802: Size comparison from 9d55707 to 4885e87

Increases (2 builds for mbed, nrfconnect)
platform target config section 9d55707 4885e87 change % change
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2357132 2357388 256 0.0
.text 1319732 1319988 256 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1144595 1145211 616 0.1
rodata 142364 142516 152 0.1
text 784336 784788 452 0.1
Full report (2 builds for mbed, nrfconnect)
platform target config section 9d55707 4885e87 change % change
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2357132 2357388 256 0.0
.bss 185020 185020 0 0.0
.data 5760 5760 0 0.0
.text 1319732 1319988 256 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1144595 1145211 616 0.1
bss 143052 143052 0 0.0
rodata 142364 142516 152 0.1
text 784336 784788 452 0.1

@bzbarsky-apple bzbarsky-apple merged commit 8ce48a7 into project-chip:master Mar 31, 2022
@bzbarsky-apple bzbarsky-apple deleted the try-various-addresses branch March 31, 2022 16:58
bzbarsky-apple added a commit to bzbarsky-apple/connectedhomeip that referenced this pull request Mar 31, 2022
Followup to project-chip#16802

Instead of making the behavior of CHIPDeviceCommissioner depend on the
state of the SetUpCodePairer, just have the latter register as the
pairing delegate when it cares about PASE establishment, and restore
the logic we used to have in CHIPDeviceCommissioner before PR 16802.

The one logic change in CHIPDeviceCommissioner other than that is a
fix to ensure that we in fact call OnPairingComplete when PASE is
established even if we're going to proceed to auto-commission, so
SetUpCodePairer knows to get out of the way at that point.
rochaferraz pushed a commit to rochaferraz/connectedhomeip that referenced this pull request Mar 31, 2022
* Try multiple transports in SetUpCodePairer.

When a device gets removed from a fabric and then factory reset, we
can get into a situation where it's only listening over BLE but there
are stale DNS-SD records for it.  In that case we should try BLE once
we discover that doing PASE over IP does not work.

* Address review comments

* Address review comments
bzbarsky-apple added a commit that referenced this pull request Apr 1, 2022
Followup to #16802

Instead of making the behavior of CHIPDeviceCommissioner depend on the
state of the SetUpCodePairer, just have the latter register as the
pairing delegate when it cares about PASE establishment, and restore
the logic we used to have in CHIPDeviceCommissioner before PR 16802.

The one logic change in CHIPDeviceCommissioner other than that is a
fix to ensure that we in fact call OnPairingComplete when PASE is
established even if we're going to proceed to auto-commission, so
SetUpCodePairer knows to get out of the way at that point.
chencheung pushed a commit to chencheung/connectedhomeip that referenced this pull request Apr 6, 2022
* Try multiple transports in SetUpCodePairer.

When a device gets removed from a fabric and then factory reset, we
can get into a situation where it's only listening over BLE but there
are stale DNS-SD records for it.  In that case we should try BLE once
we discover that doing PASE over IP does not work.

* Address review comments

* Address review comments
chencheung pushed a commit to chencheung/connectedhomeip that referenced this pull request Apr 6, 2022
…chip#16890)

Followup to project-chip#16802

Instead of making the behavior of CHIPDeviceCommissioner depend on the
state of the SetUpCodePairer, just have the latter register as the
pairing delegate when it cares about PASE establishment, and restore
the logic we used to have in CHIPDeviceCommissioner before PR 16802.

The one logic change in CHIPDeviceCommissioner other than that is a
fix to ensure that we in fact call OnPairingComplete when PASE is
established even if we're going to proceed to auto-commission, so
SetUpCodePairer knows to get out of the way at that point.
chencheung pushed a commit to chencheung/connectedhomeip that referenced this pull request Apr 6, 2022
* Try multiple transports in SetUpCodePairer.

When a device gets removed from a fabric and then factory reset, we
can get into a situation where it's only listening over BLE but there
are stale DNS-SD records for it.  In that case we should try BLE once
we discover that doing PASE over IP does not work.

* Address review comments

* Address review comments
chencheung pushed a commit to chencheung/connectedhomeip that referenced this pull request Apr 6, 2022
…chip#16890)

Followup to project-chip#16802

Instead of making the behavior of CHIPDeviceCommissioner depend on the
state of the SetUpCodePairer, just have the latter register as the
pairing delegate when it cares about PASE establishment, and restore
the logic we used to have in CHIPDeviceCommissioner before PR 16802.

The one logic change in CHIPDeviceCommissioner other than that is a
fix to ensure that we in fact call OnPairingComplete when PASE is
established even if we're going to proceed to auto-commission, so
SetUpCodePairer knows to get out of the way at that point.
andrei-menzopol pushed a commit to andrei-menzopol/connectedhomeip that referenced this pull request Apr 14, 2022
* Try multiple transports in SetUpCodePairer.

When a device gets removed from a fabric and then factory reset, we
can get into a situation where it's only listening over BLE but there
are stale DNS-SD records for it.  In that case we should try BLE once
we discover that doing PASE over IP does not work.

* Address review comments

* Address review comments
andrei-menzopol pushed a commit to andrei-menzopol/connectedhomeip that referenced this pull request Apr 14, 2022
…chip#16890)

Followup to project-chip#16802

Instead of making the behavior of CHIPDeviceCommissioner depend on the
state of the SetUpCodePairer, just have the latter register as the
pairing delegate when it cares about PASE establishment, and restore
the logic we used to have in CHIPDeviceCommissioner before PR 16802.

The one logic change in CHIPDeviceCommissioner other than that is a
fix to ensure that we in fact call OnPairingComplete when PASE is
established even if we're going to proceed to auto-commission, so
SetUpCodePairer knows to get out of the way at that point.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants