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

Fix KeySetWrite command payload validation. #26726

Merged

Conversation

bzbarsky-apple
Copy link
Contributor

There are three fixes here:

  1. Move the epoch key validity checks up front, since per spec those should happen before any internal state verification checks.

  2. Add a check that the GroupKeySecurityPolicy in the keyset has a valid value for GroupKeySecurityPolicyEnum.

  3. If we don't support MCSP, we should be failing out if the GroupKeySecurityPolicy is set to CacheAndSync.

Fixes #26692

@github-actions
Copy link

github-actions bot commented May 22, 2023

PR #26726: Size comparison from bfa0580 to e0db58c

Increases (10 builds for bl602, bl702, cc32xx, mbed, nrfconnect, qpg)
platform target config section bfa05804 e0db58c change % change
bl602 lighting-app bl602+rpc .text 1067878 1067880 2 0.0
bl702 lighting-app bl702 (read/write) 1188079 1188095 16 0.0
.debug_abbrev 1552304 1552338 34 0.0
.debug_info 42057212 42057317 105 0.0
.debug_line 5365232 5365365 133 0.0
.debug_loc 3495059 3495206 147 0.0
.text 966640 966642 2 0.0
bl702+rpc .debug_abbrev 1711298 1711332 34 0.0
.debug_info 46982646 46982751 105 0.0
.debug_line 5781068 5781201 133 0.0
.debug_loc 3697849 3697996 147 0.0
.text 1040028 1040030 2 0.0
cc32xx lock CC3235SF_LAUNCHXL .debug_abbrev 954996 955013 17 0.0
.debug_info 20533902 20534375 473 0.0
.debug_line 2714557 2714654 97 0.0
.debug_loclists 1531743 1531830 87 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2495256 2495320 64 0.0
.text 1457940 1458004 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1177508 1177524 16 0.0
text 808184 808212 28 0.0
nrf7002dk_nrf5340_cpuapp (read/write) 1437300 1437332 32 0.0
text 778844 778876 32 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1123728 1123760 32 0.0
text 778480 778512 32 0.0
qpg lighting-app qpg6105+debug (read/write) 1170624 1170656 32 0.0
.text 617724 617756 32 0.0
lock-app qpg6105+debug (read/write) 1139748 1139780 32 0.0
.text 586848 586880 32 0.0
Decreases (3 builds for bl702, cc32xx)
platform target config section bfa05804 e0db58c change % change
bl702 lighting-app bl702 .debug_str 3833152 3832696 -456 -0.0
bl702+rpc .debug_str 4258531 4258190 -341 -0.0
cc32xx lock CC3235SF_LAUNCHXL (read only) 605610 605594 -16 -0.0
.debug_str 3258755 3258414 -341 -0.0
.strtab 483923 483837 -86 -0.0
.symtab 287488 287456 -32 -0.0
.text 499156 499140 -16 -0.0
Full report (11 builds for bl602, bl702, cc32xx, mbed, nrfconnect, qpg)
platform target config section bfa05804 e0db58c change % change
bl602 lighting-app bl602 (read/write) 1356390 1356390 0 0.0
.bss 87886 87886 0 0.0
.data 9648 9648 0 0.0
.text 1036522 1036522 0 0.0
bl602+rpc (read/write) 1402658 1402658 0 0.0
.bss 95934 95934 0 0.0
.data 10040 10040 0 0.0
.text 1067878 1067880 2 0.0
bl702 lighting-app bl702 (read only) 3358 3358 0 0.0
(read/write) 1188079 1188095 16 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 67585 67585 0 0.0
.bss_psram 24656 24656 0 0.0
.comment 48 48 0 0.0
.data 3952 3952 0 0.0
.debug_abbrev 1552304 1552338 34 0.0
.debug_aranges 135936 135936 0 0.0
.debug_frame 500168 500168 0 0.0
.debug_info 42057212 42057317 105 0.0
.debug_line 5365232 5365365 133 0.0
.debug_loc 3495059 3495206 147 0.0
.debug_ranges 375504 375504 0 0.0
.debug_str 3833152 3832696 -456 -0.0
.hbn 536 536 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 140 140 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 107168 107168 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 581633 581633 0 0.0
.symtab 175520 175520 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
966640 966642 2 0.0
bl702+rpc (read only) 3358 3358 0 0.0
(read/write) 1276883 1276883 0 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 75633 75633 0 0.0
.bss_psram 25056 25056 0 0.0
.comment 48 48 0 0.0
.data 4504 4504 0 0.0
.debug_abbrev 1711298 1711332 34 0.0
.debug_aranges 144224 144224 0 0.0
.debug_frame 528180 528180 0 0.0
.debug_info 46982646 46982751 105 0.0
.debug_line 5781068 5781201 133 0.0
.debug_loc 3697849 3697996 147 0.0
.debug_ranges 400864 400864 0 0.0
.debug_str 4258531 4258190 -341 -0.0
.hbn 536 536 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 156 156 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 121248 121248 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 642953 642953 0 0.0
.symtab 194016 194016 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
1040028 1040030 2 0.0
cc32xx lock CC3235SF_LAUNCHXL (blank) 0 0 0 0.0
(read only) 605610 605594 -16 -0.0
(read/write) 204164 204164 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 197576 197576 0 0.0
.comment 206 206 0 0.0
.data 1468 1468 0 0.0
.debug_abbrev 954996 955013 17 0.0
.debug_aranges 104344 104344 0 0.0
.debug_frame 353240 353240 0 0.0
.debug_info 20533902 20534375 473 0.0
.debug_line 2714557 2714654 97 0.0
.debug_line_str 513 513 0 0.0
.debug_loc 33340 33340 0 0.0
.debug_loclists 1531743 1531830 87 0.0
.debug_ranges 4984 4984 0 0.0
.debug_rnglists 96791 96791 0 0.0
.debug_str 3258755 3258414 -341 -0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 104330 104330 0 0.0
.shstrtab 265 265 0 0.0
.stack 2048 2048 0 0.0
.strtab 483923 483837 -86 -0.0
.symtab 287488 287456 -32 -0.0
.text 499156 499140 -16 -0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2495256 2495320 64 0.0
.bss 216304 216304 0 0.0
.data 5144 5144 0 0.0
.text 1457940 1458004 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1177508 1177524 16 0.0
bss 155605 155605 0 0.0
rodata 132996 132996 0 0.0
text 808184 808212 28 0.0
nrf7002dk_nrf5340_cpuapp (read only) 4 4 0 0.0
(read/write) 1437300 1437332 32 0.0
bss 135345 135345 0 0.0
rodata 229012 229012 0 0.0
text 778844 778876 32 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1123728 1123760 32 0.0
bss 154757 154757 0 0.0
rodata 109760 109760 0 0.0
text 778480 778512 32 0.0
qpg lighting-app qpg6105+debug (read/write) 1170624 1170656 32 0.0
.bss 99928 99928 0 0.0
.data 856 856 0 0.0
.text 617724 617756 32 0.0
lock-app qpg6105+debug (read/write) 1139748 1139780 32 0.0
.bss 94824 94824 0 0.0
.data 856 856 0 0.0
.text 586848 586880 32 0.0

@bzbarsky-apple bzbarsky-apple force-pushed the fix-keysetwrite-validation branch from e0db58c to ed777af Compare May 22, 2023 16:52
@github-actions github-actions bot added the tests label May 22, 2023
@github-actions
Copy link

github-actions bot commented May 22, 2023

PR #26726: Size comparison from 44c7faf to ed777af

Increases (9 builds for bl702, cc32xx, linux, psoc6)
platform target config section 44c7faf ed777af change % change
bl702 lighting-app bl702 .debug_abbrev 1552304 1552338 34 0.0
.debug_info 42057213 42057319 106 0.0
.debug_line 5365232 5365358 126 0.0
.debug_loc 3495059 3495274 215 0.0
bl702+rpc .debug_abbrev 1711298 1711332 34 0.0
.debug_info 46982648 46982753 105 0.0
.debug_line 5781068 5781194 126 0.0
.debug_loc 3697849 3698064 215 0.0
cc32xx lock CC3235SF_LAUNCHXL .debug_abbrev 954996 955013 17 0.0
.debug_info 20533903 20534377 474 0.0
.debug_line 2714557 2714652 95 0.0
.debug_loclists 1531743 1532132 389 0.0
linux chip-tool-ipv6only arm64 (read only) 12926316 12930460 4144 0.0
.rodata 599472 599664 192 0.0
.text 10549188 10553140 3952 0.0
thermostat-no-ble arm64 (read only) 2521420 2521548 128 0.0
.text 2128724 2128852 128 0.0
psoc6 all-clusters cy8ckit_062s2_43012 .debug_abbrev 1285220 1285240 20 0.0
.debug_info 28315644 28316113 469 0.0
.debug_line 3811923 3812020 97 0.0
.debug_loclists 2064494 2064851 357 0.0
all-clusters-minimal cy8ckit_062s2_43012 .debug_abbrev 1274959 1274979 20 0.0
.debug_info 2793520 27935675 470 0.0
.debug_line 3825115 3825212 97 0.0
.debug_loclists 2055406 2055763 357 0.0
light cy8ckit_062s2_43012 .debug_abbrev 1108656 1108676 20 0.0
.debug_info 23222709 23223179 470 0.0
.debug_line 3388110 3388207 97 0.0
.debug_loclists 1886899 1887256 357 0.0
lock cy8ckit_062s2_43012 .debug_abbrev 1107740 1107760 20 0.0
.debug_info 23387202 23387671 469 0.0
.debug_line 3384514 3384611 97 0.0
.debug_loclists 1900343 1900700 357 0.0
Decreases (16 builds for bl602, bl702, cc32xx, cyw30739, efr32, k32w, nrfconnect, psoc6)
platform target config section 44c7faf ed777af change % change
bl602 lighting-app bl602+rpc .text 1067880 1067878 -2 -0.0
bl702 lighting-app bl702 .debug_frame 500168 500164 -4 -0.0
.debug_str 3833152 3832696 -456 -0.0
bl702+rpc .debug_frame 528180 528176 -4 -0.0
.debug_str 4258531 4258190 -341 -0.0
.text 1040032 1040030 -2 -0.0
cc32xx lock CC3235SF_LAUNCHXL .debug_str 3258755 3258414 -341 -0.0
.strtab 483923 483837 -86 -0.0
.symtab 287488 287456 -32 -0.0
cyw30739 ota-requestor cyw930739m2evb_01 (read/write) 566235 566227 -8 -0.0
.app_xip_area 459789 459781 -8 -0.0
efr32 lock-app BRD4161A+wf200 (read/write) 1068744 1068736 -8 -0.0
.text 892420 892412 -8 -0.0
k32w contact k32w0+release (read only) 583596 583580 -16 -0.0
.text 583060 583044 -16 -0.0
light k32w0+release (read only) 582572 582556 -16 -0.0
.text 582036 582020 -16 -0.0
lock k32w0+release (read only) 556012 555996 -16 -0.0
.text 555476 555460 -16 -0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1177508 1177492 -16 -0.0
text 808184 808176 -8 -0.0
nrf7002dk_nrf5340_cpuapp (read/write) 1437300 1437284 -16 -0.0
text 778844 778836 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1123728 1123712 -16 -0.0
text 778476 778472 -4 -0.0
psoc6 all-clusters cy8ckit_062s2_43012 .debug_str 3770527 3770186 -341 -0.0
.strtab 719469 719383 -86 -0.0
.symtab 467520 467488 -32 -0.0
all-clusters-minimal cy8ckit_062s2_43012 .debug_str 3759286 3758945 -341 -0.0
.strtab 675836 675750 -86 -0.0
.symtab 451968 451936 -32 -0.0
light cy8ckit_062s2_43012 .debug_str 3565932 3565591 -341 -0.0
.strtab 591816 591730 -86 -0.0
.symtab 414384 414352 -32 -0.0
lock cy8ckit_062s2_43012 .debug_str 3580778 3580437 -341 -0.0
.strtab 595830 595744 -86 -0.0
.symtab 416720 416688 -32 -0.0
Full report (26 builds for bl602, bl702, cc32xx, cyw30739, efr32, k32w, linux, mbed, nrfconnect, psoc6)
platform target config section 44c7faf ed777af change % change
bl602 lighting-app bl602 (read/write) 1356390 1356390 0 0.0
.bss 87886 87886 0 0.0
.data 9648 9648 0 0.0
.text 1036524 1036524 0 0.0
bl602+rpc (read/write) 1402658 1402658 0 0.0
.bss 95934 95934 0 0.0
.data 10040 10040 0 0.0
.text 1067880 1067878 -2 -0.0
bl702 lighting-app bl702 (read only) 3358 3358 0 0.0
(read/write) 1188095 1188095 0 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 67585 67585 0 0.0
.bss_psram 24656 24656 0 0.0
.comment 48 48 0 0.0
.data 3952 3952 0 0.0
.debug_abbrev 1552304 1552338 34 0.0
.debug_aranges 135936 135936 0 0.0
.debug_frame 500168 500164 -4 -0.0
.debug_info 42057213 42057319 106 0.0
.debug_line 5365232 5365358 126 0.0
.debug_loc 3495059 3495274 215 0.0
.debug_ranges 375504 375504 0 0.0
.debug_str 3833152 3832696 -456 -0.0
.hbn 536 536 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 140 140 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 107168 107168 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 581633 581633 0 0.0
.symtab 175520 175520 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
966642 966642 0 0.0
bl702+rpc (read only) 3358 3358 0 0.0
(read/write) 1276883 1276883 0 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 75633 75633 0 0.0
.bss_psram 25056 25056 0 0.0
.comment 48 48 0 0.0
.data 4504 4504 0 0.0
.debug_abbrev 1711298 1711332 34 0.0
.debug_aranges 144224 144224 0 0.0
.debug_frame 528180 528176 -4 -0.0
.debug_info 46982648 46982753 105 0.0
.debug_line 5781068 5781194 126 0.0
.debug_loc 3697849 3698064 215 0.0
.debug_ranges 400864 400864 0 0.0
.debug_str 4258531 4258190 -341 -0.0
.hbn 536 536 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 156 156 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 121248 121248 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 642953 642953 0 0.0
.symtab 194016 194016 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
1040032 1040030 -2 -0.0
cc32xx lock CC3235SF_LAUNCHXL (blank) 0 0 0 0.0
(read only) 605610 605610 0 0.0
(read/write) 204164 204164 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 197576 197576 0 0.0
.comment 206 206 0 0.0
.data 1468 1468 0 0.0
.debug_abbrev 954996 955013 17 0.0
.debug_aranges 104344 104344 0 0.0
.debug_frame 353240 353240 0 0.0
.debug_info 20533903 20534377 474 0.0
.debug_line 2714557 2714652 95 0.0
.debug_line_str 513 513 0 0.0
.debug_loc 33340 33340 0 0.0
.debug_loclists 1531743 1532132 389 0.0
.debug_ranges 4984 4984 0 0.0
.debug_rnglists 96791 96791 0 0.0
.debug_str 3258755 3258414 -341 -0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 104330 104330 0 0.0
.shstrtab 265 265 0 0.0
.stack 2048 2048 0 0.0
.strtab 483923 483837 -86 -0.0
.symtab 287488 287456 -32 -0.0
.text 499156 499156 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 524515 524515 0 0.0
.app_xip_area 417309 417309 0 0.0
.bss 62184 62184 0 0.0
.data 712 712 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 529195 529195 0 0.0
.app_xip_area 416685 416685 0 0.0
.bss 67480 67480 0 0.0
.data 720 720 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor cyw930739m2evb_01 (read/write) 566235 566227 -8 -0.0
.app_xip_area 459789 459781 -8 -0.0
.bss 61472 61472 0 0.0
.data 668 668 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
switch cyw930739m2evb_01 (read/write) 530995 530995 0 0.0
.app_xip_area 421981 421981 0 0.0
.bss 63960 63960 0 0.0
.data 744 744 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A+rs9116 (read/write) 963972 963972 0 0.0
.bss 179680 179680 0 0.0
.data 2136 2136 0 0.0
.text 782136 782136 0 0.0
BRD4187C (read/write) 1000920 1000920 0 0.0
.bss 159412 159412 0 0.0
.data 2780 2780 0 0.0
.text 838708 838708 0 0.0
lock-app BRD4161A+wf200 (read/write) 1068744 1068736 -8 -0.0
.bss 174152 174152 0 0.0
.data 2152 2152 0 0.0
.text 892420 892412 -8 -0.0
window-app BRD4187C (read/write) 1076156 1076156 0 0.0
.bss 143884 143884 0 0.0
.data 2676 2676 0 0.0
.text 929576 929576 0 0.0
k32w contact k32w0+release (read only) 583596 583580 -16 -0.0
(read/write) 82704 82704 0 0.0
.bss 65888 65888 0 0.0
.data 2192 2192 0 0.0
.text 583060 583044 -16 -0.0
light k32w0+release (read only) 582572 582556 -16 -0.0
(read/write) 82356 82356 0 0.0
.bss 65552 65552 0 0.0
.data 2180 2180 0 0.0
.text 582036 582020 -16 -0.0
lock k32w0+release (read only) 556012 555996 -16 -0.0
(read/write) 80352 80352 0 0.0
.bss 63624 63624 0 0.0
.data 2104 2104 0 0.0
.text 555476 555460 -16 -0.0
linux chip-tool-ipv6only arm64 (read only) 12926316 12930460 4144 0.0
(read/write) 749432 749432 0 0.0
.bss 34392 34392 0 0.0
.data 3008 3008 0 0.0
.data.rel.ro 690704 690704 0 0.0
.dynamic 560 560 0 0.0
.got 16120 16120 0 0.0
.init 24 24 0 0.0
.init_array 216 216 0 0.0
.rodata 599472 599664 192 0.0
.text 10549188 10553140 3952 0.0
thermostat-no-ble arm64 (read only) 2521420 2521548 128 0.0
(read/write) 142456 142456 0 0.0
.bss 53464 53464 0 0.0
.data 1784 1784 0 0.0
.data.rel.ro 77728 77728 0 0.0
.dynamic 560 560 0 0.0
.got 5432 5432 0 0.0
.init 24 24 0 0.0
.init_array 384 384 0 0.0
.rodata 129280 129280 0 0.0
.text 2128724 2128852 128 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2495256 2495256 0 0.0
.bss 216304 216304 0 0.0
.data 5144 5144 0 0.0
.text 1457940 1457940 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1177508 1177492 -16 -0.0
bss 155605 155605 0 0.0
rodata 132996 132996 0 0.0
text 808184 808176 -8 -0.0
nrf7002dk_nrf5340_cpuapp (read only) 4 4 0 0.0
(read/write) 1437300 1437284 -16 -0.0
bss 135345 135345 0 0.0
rodata 229012 229012 0 0.0
text 778844 778836 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1123728 1123712 -16 -0.0
bss 154757 154757 0 0.0
rodata 109760 109760 0 0.0
text 778476 778472 -4 -0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 840640 840640 0 0.0
(read/write) 1708524 1708524 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 190148 190148 0 0.0
.comment 212 212 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2552 2552 0 0.0
.debug_abbrev 1285220 1285240 20 0.0
.debug_aranges 131632 131632 0 0.0
.debug_frame 437600 437600 0 0.0
.debug_info 28315644 28316113 469 0.0
.debug_line 3811923 3812020 97 0.0
.debug_line_str 957 957 0 0.0
.debug_loclists 2064494 2064851 357 0.0
.debug_rnglists 130689 130689 0 0.0
.debug_str 3770527 3770186 -341 -0.0
.heap 840640 840640 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 719469 719383 -86 -0.0
.symtab 467520 467488 -32 -0.0
.text 1507436 1507436 0 0.0
.zero.table 8 8 0 0.0
text 0 0 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read only) 841440 841440 0 0.0
(read/write) 1649604 1649604 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 189348 189348 0 0.0
.comment 212 212 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2552 2552 0 0.0
.debug_abbrev 1274959 1274979 20 0.0
.debug_aranges 130880 130880 0 0.0
.debug_frame 440040 440040 0 0.0
.debug_info 2793520 27935675 470 0.0
.debug_line 3825115 3825212 97 0.0
.debug_line_str 981 981 0 0.0
.debug_loclists 2055406 2055763 357 0.0
.debug_rnglists 129638 129638 0 0.0
.debug_str 3759286 3758945 -341 -0.0
.heap 841440 841440 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 675836 675750 -86 -0.0
.symtab 451968 451936 -32 -0.0
.text 1449316 1449316 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
light cy8ckit_062s2_43012 (read only) 849736 849736 0 0.0
(read/write) 1571228 1571228 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 181220 181220 0 0.0
.comment 212 212 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2384 2384 0 0.0
.debug_abbrev 1108656 1108676 20 0.0
.debug_aranges 121032 121032 0 0.0
.debug_frame 403276 403276 0 0.0
.debug_info 23222709 23223179 470 0.0
.debug_line 3388110 3388207 97 0.0
.debug_line_str 942 942 0 0.0
.debug_loclists 1886899 1887256 357 0.0
.debug_rnglists 119267 119267 0 0.0
.debug_str 3565932 3565591 -341 -0.0
.heap 849736 849736 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 591816 591730 -86 -0.0
.symtab 414384 414352 -32 -0.0
.text 1379236 1379236 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
lock cy8ckit_062s2_43012 (read only) 821952 821952 0 0.0
(read/write) 1627764 1627764 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 208996 208996 0 0.0
.comment 212 212 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2392 2392 0 0.0
.debug_abbrev 1107740 1107760 20 0.0
.debug_aranges 121536 121536 0 0.0
.debug_frame 405368 405368 0 0.0
.debug_info 23387202 23387671 469 0.0
.debug_line 3384514 3384611 97 0.0
.debug_line_str 933 933 0 0.0
.debug_loclists 1900343 1900700 357 0.0
.debug_rnglists 119723 119723 0 0.0
.debug_str 3580778 3580437 -341 -0.0
.heap 821952 821952 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 595830 595744 -86 -0.0
.symtab 416720 416688 -32 -0.0
.text 1407988 1407988 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0

There are three fixes here:

1. Move the epoch key validity checks up front, since per spec those should
   happen before any internal state verification checks.

2. Add a check that the GroupKeySecurityPolicy in the keyset has a valid value
   for GroupKeySecurityPolicyEnum.

3. If we don't support MCSP, we should be failing out if the
   GroupKeySecurityPolicy is set to CacheAndSync.

Fixes project-chip#26692
@bzbarsky-apple bzbarsky-apple force-pushed the fix-keysetwrite-validation branch from ed777af to e664144 Compare May 22, 2023 17:58
@github-actions
Copy link

github-actions bot commented May 22, 2023

PR #26726: Size comparison from cbd5dac to e664144

Increases (26 builds for bl702, cc32xx, cyw30739, esp32, linux, psoc6, telink)
platform target config section cbd5dac e664144 change % change
bl702 lighting-app bl702 .debug_abbrev 1552304 1552338 34 0.0
.debug_info 42057213 42057318 105 0.0
.debug_line 5365232 5365358 126 0.0
.debug_loc 3495059 3495274 215 0.0
bl702+rpc .debug_abbrev 1711298 1711332 34 0.0
.debug_info 46982647 46982753 106 0.0
.debug_line 5781068 5781194 126 0.0
.debug_loc 3697849 3698064 215 0.0
cc32xx lock CC3235SF_LAUNCHXL .debug_abbrev 954996 955013 17 0.0
.debug_info 20533902 20534377 475 0.0
.debug_line 2714557 2714652 95 0.0
.debug_loclists 1531743 1532132 389 0.0
cyw30739 lock cyw930739m2evb_01 (read/write) 529187 529195 8 0.0
.app_xip_area 416677 416685 8 0.0
esp32 all-clusters-app c3devkit (read only) 1054036 1054046 10 0.0
.flash.text 1054036 1054046 10 0.0
linux all-clusters-app debug (read only) 3147085 3147245 160 0.0
.text 2730373 2730533 160 0.0
all-clusters-minimal-app debug (read only) 2955029 2955189 160 0.0
.text 2548693 2548853 160 0.0
bridge-app debug (read only) 2517261 2517421 160 0.0
.text 2171717 2171877 160 0.0
chip-tool debug (read only) 13748145 13752913 4768 0.0
.rodata 657133 657325 192 0.0
.text 11470516 11475092 4576 0.0
chip-tool-ipv6only arm64 (read only) 12926316 12930460 4144 0.0
.rodata 599472 599664 192 0.0
.text 10549188 10553140 3952 0.0
dynamic-bridge-app-ipv6only debug (read only) 2580877 2581037 160 0.0
.text 2227573 2227733 160 0.0
lighting-app debug+rpc+ui (read only) 3245113 3245273 160 0.0
.text 2768690 2768850 160 0.0
lock-app debug (read only) 2657333 2657493 160 0.0
.text 2278389 2278549 160 0.0
shell debug (read only) 2683721 2683881 160 0.0
.text 2322450 2322610 160 0.0
thermostat-no-ble arm64 (read only) 2521420 2521548 128 0.0
.text 2128724 2128852 128 0.0
tv-app debug (read only) 3313505 3313665 160 0.0
.text 2894674 2894834 160 0.0
psoc6 all-clusters cy8ckit_062s2_43012 .debug_abbrev 1285220 1285240 20 0.0
.debug_info 28315644 28316113 469 0.0
.debug_line 3811923 3812020 97 0.0
.debug_loclists 2064494 2064851 357 0.0
all-clusters-minimal cy8ckit_062s2_43012 .debug_abbrev 1274959 1274979 20 0.0
.debug_info 27935206 27935674 468 0.0
.debug_line 3825115 3825212 97 0.0
.debug_loclists 2055406 2055763 357 0.0
light cy8ckit_062s2_43012 .debug_abbrev 1108656 1108676 20 0.0
.debug_info 23222709 23223180 471 0.0
.debug_line 3388110 3388207 97 0.0
.debug_loclists 1886899 1887256 357 0.0
lock cy8ckit_062s2_43012 .debug_abbrev 1107740 1107760 20 0.0
.debug_info 23387202 23387670 468 0.0
.debug_line 3384514 3384611 97 0.0
.debug_loclists 1900343 1900700 357 0.0
telink light-switch-app tlsr9518adk80d (read/write) 864056 864064 8 0.0
text 590208 590210 2 0.0
lighting-app-factory-data tlsr9518adk80d (read/write) 946088 946096 8 0.0
text 660100 660106 6 0.0
lighting-app-rpc tlsr9518adk80d text 696258 696260 2 0.0
lock-app tlsr9518adk80d (read/write) 902752 902760 8 0.0
text 604222 604228 6 0.0
ota-requestor-app tlsr9518adk80d text 597676 597678 2 0.0
temperature-measurement-app tlsr9518adk80d (read/write) 836792 836800 8 0.0
text 567588 567590 2 0.0
Decreases (26 builds for bl602, bl702, cc32xx, cyw30739, efr32, esp32, k32w, linux, nrfconnect, psoc6, qpg, telink)
platform target config section cbd5dac e664144 change % change
bl602 lighting-app bl602 .text 1036526 1036522 -4 -0.0
bl602+rpc (read/write) 1402666 1402658 -8 -0.0
.text 1067882 1067880 -2 -0.0
bl702 lighting-app bl702 (read/write) 1188095 1188079 -16 -0.0
.debug_frame 500168 500164 -4 -0.0
.debug_str 3833152 3832696 -456 -0.0
.text 966642 966640 -2 -0.0
bl702+rpc .debug_frame 528180 528176 -4 -0.0
.debug_str 4258531 4258190 -341 -0.0
cc32xx lock CC3235SF_LAUNCHXL .debug_str 3258755 3258414 -341 -0.0
.strtab 483923 483837 -86 -0.0
.symtab 287488 287456 -32 -0.0
cyw30739 ota-requestor cyw930739m2evb_01 (read/write) 566235 566227 -8 -0.0
.app_xip_area 459789 459781 -8 -0.0
efr32 lighting-app BRD4187C (read/write) 1000928 1000920 -8 -0.0
.text 838716 838708 -8 -0.0
lock-app BRD4161A+wf200 (read/write) 1068744 1068736 -8 -0.0
.text 892420 892412 -8 -0.0
esp32 all-clusters-app m5stack (read only) 1101971 1101967 -4 -0.0
.flash.text 1096587 1096583 -4 -0.0
k32w contact k32w0+release (read only) 583596 583580 -16 -0.0
.text 583060 583044 -16 -0.0
light k32w0+release (read only) 582572 582556 -16 -0.0
.text 582036 582020 -16 -0.0
linux ota-provider-app debug (read only) 2209869 2209453 -416 -0.0
.text 1913973 1913557 -416 -0.0
ota-requestor-app debug (read only) 2376901 2376485 -416 -0.0
.text 2068069 2067653 -416 -0.0
tv-casting-app debug (read only) 7415353 7414969 -384 -0.0
.text 6728802 6728418 -384 -0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 text 808180 808176 -4 -0.0
nrf7002dk_nrf5340_cpuapp (read/write) 1437300 1437284 -16 -0.0
text 778840 778832 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1123728 1123712 -16 -0.0
text 778480 778472 -8 -0.0
psoc6 all-clusters cy8ckit_062s2_43012 .debug_str 3770527 3770186 -341 -0.0
.strtab 719469 719383 -86 -0.0
.symtab 467520 467488 -32 -0.0
all-clusters-minimal cy8ckit_062s2_43012 .debug_str 3759286 3758945 -341 -0.0
.strtab 675836 675750 -86 -0.0
.symtab 451968 451936 -32 -0.0
light cy8ckit_062s2_43012 .debug_str 3565932 3565591 -341 -0.0
.strtab 591816 591730 -86 -0.0
.symtab 414384 414352 -32 -0.0
lock cy8ckit_062s2_43012 .debug_str 3580778 3580437 -341 -0.0
.strtab 595830 595744 -86 -0.0
.symtab 416720 416688 -32 -0.0
qpg lighting-app qpg6105+debug (read/write) 1170624 1170616 -8 -0.0
.text 617724 617716 -8 -0.0
lock-app qpg6105+debug (read/write) 1139748 1139732 -16 -0.0
.text 586848 586832 -16 -0.0
telink all-clusters-minimal-app tlsr9518adk80d text 643004 643002 -2 -0.0
bridge-app tlsr9518adk80d text 635552 635550 -2 -0.0
lighting-app tlsr9518adk80d text 652548 652546 -2 -0.0
Full report (57 builds for bl602, bl702, cc32xx, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section cbd5dac e664144 change % change
bl602 lighting-app bl602 (read/write) 1356390 1356390 0 0.0
.bss 87886 87886 0 0.0
.data 9648 9648 0 0.0
.text 1036526 1036522 -4 -0.0
bl602+rpc (read/write) 1402666 1402658 -8 -0.0
.bss 95934 95934 0 0.0
.data 10040 10040 0 0.0
.text 1067882 1067880 -2 -0.0
bl702 lighting-app bl702 (read only) 3358 3358 0 0.0
(read/write) 1188095 1188079 -16 -0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 67585 67585 0 0.0
.bss_psram 24656 24656 0 0.0
.comment 48 48 0 0.0
.data 3952 3952 0 0.0
.debug_abbrev 1552304 1552338 34 0.0
.debug_aranges 135936 135936 0 0.0
.debug_frame 500168 500164 -4 -0.0
.debug_info 42057213 42057318 105 0.0
.debug_line 5365232 5365358 126 0.0
.debug_loc 3495059 3495274 215 0.0
.debug_ranges 375504 375504 0 0.0
.debug_str 3833152 3832696 -456 -0.0
.hbn 536 536 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 140 140 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 107168 107168 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 581633 581633 0 0.0
.symtab 175520 175520 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
966642 966640 -2 -0.0
bl702+rpc (read only) 3358 3358 0 0.0
(read/write) 1276883 1276883 0 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 75633 75633 0 0.0
.bss_psram 25056 25056 0 0.0
.comment 48 48 0 0.0
.data 4504 4504 0 0.0
.debug_abbrev 1711298 1711332 34 0.0
.debug_aranges 144224 144224 0 0.0
.debug_frame 528180 528176 -4 -0.0
.debug_info 46982647 46982753 106 0.0
.debug_line 5781068 5781194 126 0.0
.debug_loc 3697849 3698064 215 0.0
.debug_ranges 400864 400864 0 0.0
.debug_str 4258531 4258190 -341 -0.0
.hbn 536 536 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 156 156 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 121248 121248 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 642953 642953 0 0.0
.symtab 194016 194016 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
1040030 1040030 0 0.0
cc32xx lock CC3235SF_LAUNCHXL (blank) 0 0 0 0.0
(read only) 605610 605610 0 0.0
(read/write) 204164 204164 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 197576 197576 0 0.0
.comment 206 206 0 0.0
.data 1468 1468 0 0.0
.debug_abbrev 954996 955013 17 0.0
.debug_aranges 104344 104344 0 0.0
.debug_frame 353240 353240 0 0.0
.debug_info 20533902 20534377 475 0.0
.debug_line 2714557 2714652 95 0.0
.debug_line_str 513 513 0 0.0
.debug_loc 33340 33340 0 0.0
.debug_loclists 1531743 1532132 389 0.0
.debug_ranges 4984 4984 0 0.0
.debug_rnglists 96791 96791 0 0.0
.debug_str 3258755 3258414 -341 -0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 104330 104330 0 0.0
.shstrtab 265 265 0 0.0
.stack 2048 2048 0 0.0
.strtab 483923 483837 -86 -0.0
.symtab 287488 287456 -32 -0.0
.text 499156 499156 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 524515 524515 0 0.0
.app_xip_area 417309 417309 0 0.0
.bss 62184 62184 0 0.0
.data 712 712 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 529187 529195 8 0.0
.app_xip_area 416677 416685 8 0.0
.bss 67480 67480 0 0.0
.data 720 720 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor cyw930739m2evb_01 (read/write) 566235 566227 -8 -0.0
.app_xip_area 459789 459781 -8 -0.0
.bss 61472 61472 0 0.0
.data 668 668 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
switch cyw930739m2evb_01 (read/write) 530995 530995 0 0.0
.app_xip_area 421981 421981 0 0.0
.bss 63960 63960 0 0.0
.data 744 744 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A+rs9116 (read/write) 963972 963972 0 0.0
.bss 179680 179680 0 0.0
.data 2136 2136 0 0.0
.text 782136 782136 0 0.0
BRD4187C (read/write) 1000928 1000920 -8 -0.0
.bss 159412 159412 0 0.0
.data 2780 2780 0 0.0
.text 838716 838708 -8 -0.0
lock-app BRD4161A+wf200 (read/write) 1068744 1068736 -8 -0.0
.bss 174152 174152 0 0.0
.data 2152 2152 0 0.0
.text 892420 892412 -8 -0.0
window-app BRD4187C (read/write) 1076156 1076156 0 0.0
.bss 143884 143884 0 0.0
.data 2676 2676 0 0.0
.text 929576 929576 0 0.0
esp32 all-clusters-app c3devkit (read only) 1054036 1054046 10 0.0
(read/write) 1583704 1583704 0 0.0
.dram0.bss 77176 77176 0 0.0
.dram0.data 13968 13968 0 0.0
.flash.rodata 213424 213424 0 0.0
.flash.text 1054036 1054046 10 0.0
.iram0.text 76708 76708 0 0.0
m5stack (read only) 1101971 1101967 -4 -0.0
(read/write) 492878 492878 0 0.0
.dram0.bss 82192 82192 0 0.0
.dram0.data 34304 34304 0 0.0
.flash.rodata 241232 241232 0 0.0
.flash.text 1096587 1096583 -4 -0.0
.iram0.text 126055 126055 0 0.0
k32w contact k32w0+release (read only) 583596 583580 -16 -0.0
(read/write) 82704 82704 0 0.0
.bss 65888 65888 0 0.0
.data 2192 2192 0 0.0
.text 583060 583044 -16 -0.0
light k32w0+release (read only) 582572 582556 -16 -0.0
(read/write) 82356 82356 0 0.0
.bss 65552 65552 0 0.0
.data 2180 2180 0 0.0
.text 582036 582020 -16 -0.0
lock k32w0+release (read only) 555996 555996 0 0.0
(read/write) 80352 80352 0 0.0
.bss 63624 63624 0 0.0
.data 2104 2104 0 0.0
.text 555460 555460 0 0.0
linux all-clusters-app debug (read only) 3147085 3147245 160 0.0
(read/write) 152808 152808 0 0.0
.bss 60192 60192 0 0.0
.data 2160 2160 0 0.0
.data.rel.ro 83952 83952 0 0.0
.dynamic 608 608 0 0.0
.got 4728 4728 0 0.0
.init 27 27 0 0.0
.init_array 1120 1120 0 0.0
.rodata 230760 230760 0 0.0
.text 2730373 2730533 160 0.0
all-clusters-minimal-app debug (read only) 2955029 2955189 160 0.0
(read/write) 145696 145696 0 0.0
.bss 59296 59296 0 0.0
.data 2128 2128 0 0.0
.data.rel.ro 77872 77872 0 0.0
.dynamic 608 608 0 0.0
.got 4664 4664 0 0.0
.init 27 27 0 0.0
.init_array 1080 1080 0 0.0
.rodata 224040 224040 0 0.0
.text 2548693 2548853 160 0.0
bridge-app debug (read only) 2517261 2517421 160 0.0
(read/write) 129648 129648 0 0.0
.bss 50232 50232 0 0.0
.data 3824 3824 0 0.0
.data.rel.ro 69608 69608 0 0.0
.dynamic 608 608 0 0.0
.got 4568 4568 0 0.0
.init 27 27 0 0.0
.init_array 784 784 0 0.0
.rodata 173224 173224 0 0.0
.text 2171717 2171877 160 0.0
chip-tool debug (read only) 13748145 13752913 4768 0.0
(read/write) 697384 697384 0 0.0
.bss 26424 26424 0 0.0
.data 3042 3042 0 0.0
.data.rel.ro 661128 661128 0 0.0
.dynamic 608 608 0 0.0
.got 5360 5360 0 0.0
.init 27 27 0 0.0
.init_array 776 776 0 0.0
.rodata 657133 657325 192 0.0
.text 11470516 11475092 4576 0.0
chip-tool-ipv6only arm64 (read only) 12926316 12930460 4144 0.0
(read/write) 749432 749432 0 0.0
.bss 34392 34392 0 0.0
.data 3008 3008 0 0.0
.data.rel.ro 690704 690704 0 0.0
.dynamic 560 560 0 0.0
.got 16120 16120 0 0.0
.init 24 24 0 0.0
.init_array 216 216 0 0.0
.rodata 599472 599664 192 0.0
.text 10549188 10553140 3952 0.0
dynamic-bridge-app-ipv6only debug (read only) 2580877 2581037 160 0.0
(read/write) 126840 126840 0 0.0
.bss 47544 47544 0 0.0
.data 2864 2864 0 0.0
.data.rel.ro 70192 70192 0 0.0
.dynamic 624 624 0 0.0
.got 4800 4800 0 0.0
.init 27 27 0 0.0
.init_array 792 792 0 0.0
.rodata 175944 175944 0 0.0
.text 2227573 2227733 160 0.0
lighting-app debug+rpc+ui (read only) 3245113 3245273 160 0.0
(read/write) 132272 132272 0 0.0
.bss 48032 48032 0 0.0
.data 2704 2704 0 0.0
.data.rel.ro 74736 74736 0 0.0
.dynamic 656 656 0 0.0
.got 5240 5240 0 0.0
.init 27 27 0 0.0
.init_array 872 872 0 0.0
.rodata 284628 284628 0 0.0
.text 2768690 2768850 160 0.0
lock-app debug (read only) 2657333 2657493 160 0.0
(read/write) 123624 123624 0 0.0
.bss 45952 45952 0 0.0
.data 1904 1904 0 0.0
.data.rel.ro 69648 69648 0 0.0
.dynamic 608 608 0 0.0
.got 4648 4648 0 0.0
.init 27 27 0 0.0
.init_array 832 832 0 0.0
.rodata 206248 206248 0 0.0
.text 2278389 2278549 160 0.0
ota-provider-app debug (read only) 2209869 2209453 -416 -0.0
(read/write) 103672 103672 0 0.0
.bss 44528 44528 0 0.0
.data 2112 2112 0 0.0
.data.rel.ro 51944 51944 0 0.0
.dynamic 608 608 0 0.0
.got 3800 3800 0 0.0
.init 27 27 0 0.0
.init_array 672 672 0 0.0
.rodata 154376 154376 0 0.0
.text 1913973 1913557 -416 -0.0
ota-requestor-app debug (read only) 2376901 2376485 -416 -0.0
(read/write) 111464 111464 0 0.0
.bss 46960 46960 0 0.0
.data 2512 2512 0 0.0
.data.rel.ro 56800 56800 0 0.0
.dynamic 608 608 0 0.0
.got 3784 3784 0 0.0
.init 27 27 0 0.0
.init_array 752 752 0 0.0
.rodata 158440 158440 0 0.0
.text 2068069 2067653 -416 -0.0
shell debug (read only) 2683721 2683881 160 0.0
(read/write) 141232 141232 0 0.0
.bss 59144 59144 0 0.0
.data 1232 1232 0 0.0
.data.rel.ro 75016 75016 0 0.0
.dynamic 608 608 0 0.0
.got 4128 4128 0 0.0
.init 27 27 0 0.0
.init_array 1056 1056 0 0.0
.rodata 199250 199250 0 0.0
.text 2322450 2322610 160 0.0
thermostat-no-ble arm64 (read only) 2521420 2521548 128 0.0
(read/write) 142456 142456 0 0.0
.bss 53464 53464 0 0.0
.data 1784 1784 0 0.0
.data.rel.ro 77728 77728 0 0.0
.dynamic 560 560 0 0.0
.got 5432 5432 0 0.0
.init 24 24 0 0.0
.init_array 384 384 0 0.0
.rodata 129280 129280 0 0.0
.text 2128724 2128852 128 0.0
tv-app debug (read only) 3313505 3313665 160 0.0
(read/write) 261544 261544 0 0.0
.bss 171264 171264 0 0.0
.data 4080 4080 0 0.0
.data.rel.ro 79480 79480 0 0.0
.dynamic 608 608 0 0.0
.got 5000 5000 0 0.0
.init 27 27 0 0.0
.init_array 1088 1088 0 0.0
.rodata 222648 222648 0 0.0
.text 2894674 2894834 160 0.0
tv-casting-app debug (read only) 7415353 7414969 -384 -0.0
(read/write) 195312 195312 0 0.0
.bss 52096 52096 0 0.0
.data 1744 1744 0 0.0
.data.rel.ro 134904 134904 0 0.0
.dynamic 608 608 0 0.0
.got 4920 4920 0 0.0
.init 27 27 0 0.0
.init_array 1000 1000 0 0.0
.rodata 317644 317644 0 0.0
.text 6728802 6728418 -384 -0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2495256 2495256 0 0.0
.bss 216304 216304 0 0.0
.data 5144 5144 0 0.0
.text 1457940 1457940 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1177492 1177492 0 0.0
bss 155605 155605 0 0.0
rodata 132996 132996 0 0.0
text 808180 808176 -4 -0.0
nrf7002dk_nrf5340_cpuapp (read only) 4 4 0 0.0
(read/write) 1437300 1437284 -16 -0.0
bss 135345 135345 0 0.0
rodata 229012 229012 0 0.0
text 778840 778832 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1123728 1123712 -16 -0.0
bss 154757 154757 0 0.0
rodata 109760 109760 0 0.0
text 778480 778472 -8 -0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 840640 840640 0 0.0
(read/write) 1708524 1708524 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 190148 190148 0 0.0
.comment 212 212 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2552 2552 0 0.0
.debug_abbrev 1285220 1285240 20 0.0
.debug_aranges 131632 131632 0 0.0
.debug_frame 437600 437600 0 0.0
.debug_info 28315644 28316113 469 0.0
.debug_line 3811923 3812020 97 0.0
.debug_line_str 957 957 0 0.0
.debug_loclists 2064494 2064851 357 0.0
.debug_rnglists 130689 130689 0 0.0
.debug_str 3770527 3770186 -341 -0.0
.heap 840640 840640 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 719469 719383 -86 -0.0
.symtab 467520 467488 -32 -0.0
.text 0 0 0 0.0
1507436 1507436 0 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read only) 841440 841440 0 0.0
(read/write) 1649604 1649604 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 189348 189348 0 0.0
.comment 212 212 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2552 2552 0 0.0
.debug_abbrev 1274959 1274979 20 0.0
.debug_aranges 130880 130880 0 0.0
.debug_frame 440040 440040 0 0.0
.debug_info 27935206 27935674 468 0.0
.debug_line 3825115 3825212 97 0.0
.debug_line_str 981 981 0 0.0
.debug_loclists 2055406 2055763 357 0.0
.debug_rnglists 129638 129638 0 0.0
.debug_str 3759286 3758945 -341 -0.0
.heap 841440 841440 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 675836 675750 -86 -0.0
.symtab 451968 451936 -32 -0.0
.text 1449316 1449316 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
light cy8ckit_062s2_43012 (read only) 849736 849736 0 0.0
(read/write) 1571228 1571228 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 181220 181220 0 0.0
.comment 212 212 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2384 2384 0 0.0
.debug_abbrev 1108656 1108676 20 0.0
.debug_aranges 121032 121032 0 0.0
.debug_frame 403276 403276 0 0.0
.debug_info 23222709 23223180 471 0.0
.debug_line 3388110 3388207 97 0.0
.debug_line_str 942 942 0 0.0
.debug_loclists 1886899 1887256 357 0.0
.debug_rnglists 119267 119267 0 0.0
.debug_str 3565932 3565591 -341 -0.0
.heap 849736 849736 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 591816 591730 -86 -0.0
.symtab 414384 414352 -32 -0.0
.text 1379236 1379236 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
lock cy8ckit_062s2_43012 (read only) 821952 821952 0 0.0
(read/write) 1627764 1627764 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 208996 208996 0 0.0
.comment 212 212 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2392 2392 0 0.0
.debug_abbrev 1107740 1107760 20 0.0
.debug_aranges 121536 121536 0 0.0
.debug_frame 405368 405368 0 0.0
.debug_info 23387202 23387670 468 0.0
.debug_line 3384514 3384611 97 0.0
.debug_line_str 933 933 0 0.0
.debug_loclists 1900343 1900700 357 0.0
.debug_rnglists 119723 119723 0 0.0
.debug_str 3580778 3580437 -341 -0.0
.heap 821952 821952 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 595830 595744 -86 -0.0
.symtab 416720 416688 -32 -0.0
.text 1407988 1407988 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1170624 1170616 -8 -0.0
.bss 99928 99928 0 0.0
.data 856 856 0 0.0
.text 617724 617716 -8 -0.0
lock-app qpg6105+debug (read/write) 1139748 1139732 -16 -0.0
.bss 94824 94824 0 0.0
.data 856 856 0 0.0
.text 586848 586832 -16 -0.0
telink all-clusters-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1002520 1002520 0 0.0
bss 97952 97952 0 0.0
text 681134 681134 0 0.0
all-clusters-minimal-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 938228 938228 0 0.0
bss 97004 97004 0 0.0
text 643004 643002 -2 -0.0
bridge-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 919528 919528 0 0.0
bss 99348 99348 0 0.0
text 635552 635550 -2 -0.0
contact-sensor-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 847760 847760 0 0.0
bss 88904 88904 0 0.0
text 575580 575580 0 0.0
light-switch-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 864056 864064 8 0.0
bss 89060 89060 0 0.0
text 590208 590210 2 0.0
lighting-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 934676 934676 0 0.0
bss 97376 97376 0 0.0
text 652548 652546 -2 -0.0
lighting-app-factory-data tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 946088 946096 8 0.0
bss 101624 101624 0 0.0
text 660100 660106 6 0.0
lighting-app-rpc tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1002952 1002952 0 0.0
bss 98940 98940 0 0.0
text 696258 696260 2 0.0
lock-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 902752 902760 8 0.0
bss 89556 89556 0 0.0
text 604222 604228 6 0.0
ota-requestor-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 870648 870648 0 0.0
bss 90176 90176 0 0.0
text 597676 597678 2 0.0
pump-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 853760 853760 0 0.0
bss 89024 89024 0 0.0
text 581756 581756 0 0.0
pump-controller-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 840556 840556 0 0.0
bss 88824 88824 0 0.0
text 571876 571876 0 0.0
temperature-measurement-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 836792 836800 8 0.0
bss 88744 88744 0 0.0
text 567588 567590 2 0.0
thermostat tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 868452 868452 0 0.0
bss 90448 90448 0 0.0
text 591926 591926 0 0.0
window-covering tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 865104 865104 0 0.0
bss 90868 90868 0 0.0
text 587612 587612 0 0.0

@bzbarsky-apple bzbarsky-apple merged commit 46f3dfa into project-chip:master May 23, 2023
@bzbarsky-apple bzbarsky-apple deleted the fix-keysetwrite-validation branch May 23, 2023 16:04
maciejbaczmanski pushed a commit to maciejbaczmanski/connectedhomeip that referenced this pull request Jul 15, 2024
…hip#26726)

There are three fixes here:

1. Move the epoch key validity checks up front, since per spec those should
   happen before any internal state verification checks.

2. Add a check that the GroupKeySecurityPolicy in the keyset has a valid value
   for GroupKeySecurityPolicyEnum.

3. If we don't support MCSP, we should be failing out if the
   GroupKeySecurityPolicy is set to CacheAndSync.

Fixes project-chip#26692
maciejbaczmanski pushed a commit to maciejbaczmanski/connectedhomeip that referenced this pull request Jul 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants