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

Set peer node ID for PASE sessions #13372

Merged
merged 2 commits into from
Jan 7, 2022

Conversation

mlepage-google
Copy link
Contributor

Problem

PASE sessions do not have peer node ID properly set, so subject descriptor
cannot identify them for access control

Needed for #10242

Change overview

Peer node ID for PASE sessions is the passcode ID with discriminant in
the top bits (to discriminate it from other kinds of node ID).

Also, passcode ID cannot be zero in non-default commissioning cases.

Testing

  • Built and ran (all-clusters-app with REPL on Linux) with temp log statements

Peer node ID for PASE sessions is the passcode ID with discriminant in
the top bits (to discriminate it from other kinds of node ID).

Also, passcode ID cannot be zero in non-default commissioning cases.

Progress towards project-chip#10242
@github-actions
Copy link

github-actions bot commented Jan 7, 2022

PR #13372: Size comparison from 0e5bc69 to bd452be

Increases (13 builds for efr32, k32w, linux, p6, qpg, telink)
platform target config section 0e5bc69 bd452be change % change
efr32 lighting-app BRD4161A (read only) 831728 831760 32 0.0
.text 831720 831752 32 0.0
BRD4161A+rpc (read only) 818892 818924 32 0.0
.text 818884 818916 32 0.0
window-app BRD4161A (read only) 805176 805208 32 0.0
.text 805168 805200 32 0.0
k32w light k32w061+release (read/write) 655596 655612 16 0.0
.text 571084 571100 16 0.0
lock k32w061+release (read/write) 659856 659872 16 0.0
.text 575028 575044 16 0.0
linux chip-tool-ipv6only arm64 (read only) 7033996 7034172 176 0.0
.text 5956932 5957108 176 0.0
thermostat-no-ble arm64 (read only) 2031036 2031180 144 0.0
.text 1689280 1689424 144 0.0
p6 all-clusters-app default (read/write) 2404872 2404904 32 0.0
.text 1363136 1363168 32 0.0
light-app default (read/write) 2326832 2326864 32 0.0
.text 1285096 1285128 32 0.0
lock-app default (read/write) 2299032 2299064 32 0.0
.text 1257296 1257328 32 0.0
qpg lighting-app qpg6105+debug (read only) 533268 533292 24 0.0
.text 527948 527972 24 0.0
lock-app qpg6105+debug (read only) 505044 505068 24 0.0
.text 499724 499748 24 0.0
telink lighting-app tlsr9518adk80d (read/write) 834102 834126 24 0.0
text 582240 582262 22 0.0
Full report (14 builds for efr32, k32w, linux, p6, qpg, telink)
platform target config section 0e5bc69 bd452be change % change
efr32 lighting-app BRD4161A (read only) 831728 831760 32 0.0
(read/write) 127088 127088 0 0.0
.bss 125208 125208 0 0.0
.data 1876 1876 0 0.0
.text 831720 831752 32 0.0
BRD4161A+rpc (read only) 818892 818924 32 0.0
(read/write) 143744 143744 0 0.0
.bss 141768 141768 0 0.0
.data 1976 1976 0 0.0
.text 818884 818916 32 0.0
window-app BRD4161A (read only) 805176 805208 32 0.0
(read/write) 126024 126024 0 0.0
.bss 124192 124192 0 0.0
.data 1832 1832 0 0.0
.text 805168 805200 32 0.0
k32w light k32w061+release (read/write) 655596 655612 16 0.0
.bss 76864 76864 0 0.0
.data 1848 1848 0 0.0
.text 571084 571100 16 0.0
lock k32w061+release (read/write) 659856 659872 16 0.0
.bss 77160 77160 0 0.0
.data 1868 1868 0 0.0
.text 575028 575044 16 0.0
linux chip-tool-ipv6only arm64 (read only) 7033996 7034172 176 0.0
(read/write) 325073 325073 0 0.0
.bss 54241 54241 0 0.0
.data 1096 1096 0 0.0
.data.rel.ro 209064 209064 0 0.0
.dynamic 560 560 0 0.0
.got 56992 56992 0 0.0
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 384292 384292 0 0.0
.text 5956932 5957108 176 0.0
thermostat-no-ble arm64 (read only) 2031036 2031180 144 0.0
(read/write) 144193 144193 0 0.0
.bss 64033 64033 0 0.0
.data 880 880 0 0.0
.data.rel.ro 72392 72392 0 0.0
.dynamic 560 560 0 0.0
.got 3952 3952 0 0.0
.init 24 24 0 0.0
.init_array 296 296 0 0.0
.rodata 128844 128844 0 0.0
.text 1689280 1689424 144 0.0
p6 all-clusters-app default (read/write) 2404872 2404904 32 0.0
.bss 117020 117020 0 0.0
.data 2592 2592 0 0.0
.text 1363136 1363168 32 0.0
light-app default (read/write) 2326832 2326864 32 0.0
.bss 105888 105888 0 0.0
.data 2384 2384 0 0.0
.text 1285096 1285128 32 0.0
lock-app default (read/write) 2299032 2299064 32 0.0
.bss 104768 104768 0 0.0
.data 2336 2336 0 0.0
.text 1257296 1257328 32 0.0
qpg lighting-app qpg6105+debug (read only) 533268 533292 24 0.0
(read/write) 146936 146936 0 0.0
.bss 86688 86688 0 0.0
.data 1004 1004 0 0.0
.text 527948 527972 24 0.0
lock-app qpg6105+debug (read only) 505044 505068 24 0.0
(read/write) 146940 146940 0 0.0
.bss 85824 85824 0 0.0
.data 952 952 0 0.0
.text 499724 499748 24 0.0
persistent-storage-app qpg6105+debug (read only) 106448 106448 0 0.0
(read/write) 146938 146938 0 0.0
.bss 36146 36146 0 0.0
.data 288 288 0 0.0
.text 101128 101128 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 834102 834126 24 0.0
bss 86864 86864 0 0.0
noinit 37160 37160 0 0.0
text 582240 582262 22 0.0

@github-actions
Copy link

github-actions bot commented Jan 7, 2022

PR #13372: Size comparison from 6390848 to db81145

Increases (10 builds for k32w, linux, p6, qpg, telink)
platform target config section 6390848 db81145 change % change
k32w light k32w061+release (read/write) 655596 655612 16 0.0
.text 571084 571100 16 0.0
lock k32w061+release (read/write) 659856 659872 16 0.0
.text 575028 575044 16 0.0
linux chip-tool-ipv6only arm64 (read only) 7033996 7034172 176 0.0
.text 5956932 5957108 176 0.0
thermostat-no-ble arm64 (read only) 2031036 2031180 144 0.0
.text 1689280 1689424 144 0.0
p6 all-clusters-app default (read/write) 2404872 2404904 32 0.0
.text 1363136 1363168 32 0.0
light-app default (read/write) 2326832 2326864 32 0.0
.text 1285096 1285128 32 0.0
lock-app default (read/write) 2299032 2299064 32 0.0
.text 1257296 1257328 32 0.0
qpg lighting-app qpg6105+debug (read only) 533268 533292 24 0.0
.text 527948 527972 24 0.0
lock-app qpg6105+debug (read only) 505044 505068 24 0.0
.text 499724 499748 24 0.0
telink lighting-app tlsr9518adk80d (read/write) 834102 834126 24 0.0
text 582240 582262 22 0.0
Full report (11 builds for k32w, linux, p6, qpg, telink)
platform target config section 6390848 db81145 change % change
k32w light k32w061+release (read/write) 655596 655612 16 0.0
.bss 76864 76864 0 0.0
.data 1848 1848 0 0.0
.text 571084 571100 16 0.0
lock k32w061+release (read/write) 659856 659872 16 0.0
.bss 77160 77160 0 0.0
.data 1868 1868 0 0.0
.text 575028 575044 16 0.0
linux chip-tool-ipv6only arm64 (read only) 7033996 7034172 176 0.0
(read/write) 325073 325073 0 0.0
.bss 54241 54241 0 0.0
.data 1096 1096 0 0.0
.data.rel.ro 209064 209064 0 0.0
.dynamic 560 560 0 0.0
.got 56992 56992 0 0.0
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 384292 384292 0 0.0
.text 5956932 5957108 176 0.0
thermostat-no-ble arm64 (read only) 2031036 2031180 144 0.0
(read/write) 144193 144193 0 0.0
.bss 64033 64033 0 0.0
.data 880 880 0 0.0
.data.rel.ro 72392 72392 0 0.0
.dynamic 560 560 0 0.0
.got 3952 3952 0 0.0
.init 24 24 0 0.0
.init_array 296 296 0 0.0
.rodata 128844 128844 0 0.0
.text 1689280 1689424 144 0.0
p6 all-clusters-app default (read/write) 2404872 2404904 32 0.0
.bss 117020 117020 0 0.0
.data 2592 2592 0 0.0
.text 1363136 1363168 32 0.0
light-app default (read/write) 2326832 2326864 32 0.0
.bss 105888 105888 0 0.0
.data 2384 2384 0 0.0
.text 1285096 1285128 32 0.0
lock-app default (read/write) 2299032 2299064 32 0.0
.bss 104768 104768 0 0.0
.data 2336 2336 0 0.0
.text 1257296 1257328 32 0.0
qpg lighting-app qpg6105+debug (read only) 533268 533292 24 0.0
(read/write) 146936 146936 0 0.0
.bss 86688 86688 0 0.0
.data 1004 1004 0 0.0
.text 527948 527972 24 0.0
lock-app qpg6105+debug (read only) 505044 505068 24 0.0
(read/write) 146940 146940 0 0.0
.bss 85824 85824 0 0.0
.data 952 952 0 0.0
.text 499724 499748 24 0.0
persistent-storage-app qpg6105+debug (read only) 106448 106448 0 0.0
(read/write) 146938 146938 0 0.0
.bss 36146 36146 0 0.0
.data 288 288 0 0.0
.text 101128 101128 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 834102 834126 24 0.0
bss 86864 86864 0 0.0
noinit 37160 37160 0 0.0
text 582240 582262 22 0.0

@andy31415 andy31415 merged commit 0e321bf into project-chip:master Jan 7, 2022
@mlepage-google mlepage-google deleted the pase-peer-node-id branch January 7, 2022 19:27
step0035 pushed a commit to hank820/connectedhomeip that referenced this pull request Feb 8, 2022
Peer node ID for PASE sessions is the passcode ID with discriminant in
the top bits (to discriminate it from other kinds of node ID).

Also, passcode ID cannot be zero in non-default commissioning cases.

Progress towards project-chip#10242
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants