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 validity times on certificates issued by the Darwin framework. #20637

Merged

Conversation

bzbarsky-apple
Copy link
Contributor

The Darwin framework was using the current timezone, not UTC, when determining
the Matter epoch time corresponding to a given offset from now. This caused the
epoch times it computed to be off by the offset from UTC. In timezones ahead of
UTC, this could easily lead to certificates with mNotBeforeTime set to a value
larger than the current UTC time, which would then cause those certificates to
be considered not-yet-valid.

Fixes #20302

Problem

See above.

Change overview

Use componentsInTimeZone with the UTC timezone to get the right values.

Testing

Checked the times logged in ValidateCert per the logging suggested in #20302 and verified that I was getting mNotBeforeTime hours off from "now" (corresponding to my timezone) before this PR and get times that are almost now after this PR.

@github-actions
Copy link

github-actions bot commented Jul 12, 2022

PR #20637: Size comparison from 57cb679 to ae3a9e8

Increases (28 builds for bl602, cc13x2_26x2, cyw30739, linux, mbed, nrfconnect, p6, telink)
platform target config section 57cb679 ae3a9e8 change % change
bl602 lighting-app bl602 (read/write) 1397386 1397546 160 0.0
.text 1058588 1058620 32 0.0
bl602+rpc (read/write) 1442818 1442978 160 0.0
.text 1090276 1090308 32 0.0
cc13x2_26x2 pump-app LP_CC2652R7 (read only) 678183 678343 160 0.0
.rodata 88503 88631 128 0.1
.text 589196 589228 32 0.0
pump-controller-app LP_CC2652R7 (read only) 664007 664167 160 0.0
.rodata 84367 84495 128 0.2
.text 579160 579192 32 0.0
shell LP_CC2652R7 (read only) 658766 658774 8 0.0
.text 573532 573540 8 0.0
cyw30739 ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 582774 582930 156 0.0
.app_xip_area 462376 462532 156 0.0
linux all-clusters-app debug (read only) 2960825 2961225 400 0.0
.rodata 263613 263805 192 0.1
.text 2520002 2520210 208 0.0
all-clusters-minimal-app debug (read only) 2813401 2813801 400 0.0
.rodata 265341 265533 192 0.1
.text 2373026 2373234 208 0.0
bridge-app debug+rpc (read only) 2315449 2315849 400 0.0
.rodata 198016 198208 192 0.1
.text 1955698 1955906 208 0.0
chip-tool debug (read only) 10345025 10345457 432 0.0
.rodata 515861 516085 224 0.0
.text 8397476 8397684 208 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 10031716 10032052 336 0.0
.rodata 478260 478452 192 0.0
.text 7992788 7992932 144 0.0
lighting-app debug+rpc (read only) 2551193 2551577 384 0.0
.rodata 213704 213896 192 0.1
.text 2167522 2167714 192 0.0
lock-app debug (read only) 2515913 2516313 400 0.0
.rodata 228744 228936 192 0.1
.text 2122002 2122210 208 0.0
ota-provider-app debug (read only) 2322305 2322689 384 0.0
.rodata 203512 203704 192 0.1
.text 1956018 1956210 192 0.0
ota-requestor-app debug (read only) 2439361 2439761 400 0.0
.rodata 207296 207488 192 0.1
.text 2060914 2061122 208 0.0
shell debug (read only) 2551169 2551569 400 0.0
.rodata 227762 227954 192 0.1
.text 2166306 2166514 208 0.0
thermostat-no-ble arm64 (read only) 2595316 2595668 352 0.0
.rodata 165476 165668 192 0.1
.text 2190064 2190224 160 0.0
tv-app debug (read only) 3102225 3102609 384 0.0
.rodata 249024 249216 192 0.1
.text 2665298 2665490 192 0.0
tv-casting-app debug (read only) 5577785 5578217 432 0.0
.rodata 343209 343433 224 0.1
.text 4956626 4956834 208 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2448112 2448240 128 0.0
.text 1410756 1410884 128 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1175175 1175327 152 0.0
rodata 141888 142008 120 0.1
text 811492 811528 36 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1155367 1155523 156 0.0
rodata 133416 133540 124 0.1
text 800936 800972 36 0.0
p6 all-clusters-app default (read/write) 2566144 2566288 144 0.0
.text 1524408 1524552 144 0.0
all-clusters-minimal-app default (read/write) 2511440 2511584 144 0.0
.text 1469704 1469848 144 0.0
light-app default (read/write) 2441368 2441528 160 0.0
.text 1399632 1399792 160 0.0
lock-app default (read/write) 2468520 2468664 144 0.0
.text 1426784 1426928 144 0.0
telink light-switch-app tlsr9518adk80d (read/write) 797284 797452 168 0.0
text 565678 565714 36 0.0
lighting-app tlsr9518adk80d (read/write) 817116 817276 160 0.0
text 582002 582040 38 0.0
Decreases (4 builds for cc13x2_26x2, cyw30739)
platform target config section 57cb679 ae3a9e8 change % change
cc13x2_26x2 pump-app LP_CC2652R7 (read/write) 164032 163872 -160 -0.1
pump-controller-app LP_CC2652R7 (read/write) 178328 178168 -160 -0.1
shell LP_CC2652R7 (read/write) 187960 187952 -8 -0.0
cyw30739 light cyw930739m2evb_01 (read/write) 579622 579614 -8 -0.0
.app_xip_area 458376 458368 -8 -0.0
Full report (36 builds for bl602, cc13x2_26x2, cyw30739, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 57cb679 ae3a9e8 change % change
bl602 lighting-app bl602 (read/write) 1397386 1397546 160 0.0
.bss 116978 116978 0 0.0
.data 4480 4480 0 0.0
.text 1058588 1058620 32 0.0
bl602+rpc (read/write) 1442818 1442978 160 0.0
.bss 124418 124418 0 0.0
.data 4600 4600 0 0.0
.text 1090276 1090308 32 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 666275 666275 0 0.0
(read/write) 184948 184948 0 0.0
.bss 74116 74116 0 0.0
.data 3356 3356 0 0.0
.rodata 88139 88139 0 0.0
.text 577820 577820 0 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 632083 632083 0 0.0
(read/write) 157684 157684 0 0.0
.bss 73412 73412 0 0.0
.data 3356 3356 0 0.0
.rodata 77379 77379 0 0.0
.text 554380 554380 0 0.0
lock-ftd LP_CC2652R7 (read only) 669183 669183 0 0.0
(read/write) 172184 172184 0 0.0
.bss 71148 71148 0 0.0
.data 3280 3280 0 0.0
.rodata 76279 76279 0 0.0
.text 592424 592424 0 0.0
lock-mtd LP_CC2652R7 (read only) 618591 618591 0 0.0
(read/write) 144264 144264 0 0.0
.bss 66868 66868 0 0.0
.data 3280 3280 0 0.0
.rodata 76159 76159 0 0.0
.text 541944 541944 0 0.0
pump-app LP_CC2652R7 (read only) 678183 678343 160 0.0
(read/write) 164032 163872 -160 -0.1
.bss 71228 71228 0 0.0
.data 3280 3280 0 0.0
.rodata 88503 88631 128 0.1
.text 589196 589228 32 0.0
pump-controller-app LP_CC2652R7 (read only) 664007 664167 160 0.0
(read/write) 178328 178168 -160 -0.1
.bss 71348 71348 0 0.0
.data 3276 3276 0 0.0
.rodata 84367 84495 128 0.2
.text 579160 579192 32 0.0
shell LP_CC2652R7 (read only) 658766 658774 8 0.0
(read/write) 187960 187952 -8 -0.0
.bss 76420 76420 0 0.0
.data 3360 3360 0 0.0
.rodata 84918 84918 0 0.0
.text 573532 573540 8 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 579622 579614 -8 -0.0
.app_xip_area 458376 458368 -8 -0.0
.bss 64184 64184 0 0.0
.data 716 716 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 585574 585574 0 0.0
.app_xip_area 459600 459600 0 0.0
.bss 68912 68912 0 0.0
.data 720 720 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 582774 582930 156 0.0
.app_xip_area 462376 462532 156 0.0
.bss 63392 63392 0 0.0
.data 660 660 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
k32w light k32w061+release (read/write) 658832 658832 0 0.0
.bss 69516 69516 0 0.0
.data 1992 1992 0 0.0
.text 581524 581524 0 0.0
lock k32w061+release (read/write) 685684 685684 0 0.0
.bss 69980 69980 0 0.0
.data 2004 2004 0 0.0
.text 607900 607900 0 0.0
linux all-clusters-app debug (read only) 2960825 2961225 400 0.0
(read/write) 154752 154752 0 0.0
.bss 61536 61536 0 0.0
.data 2048 2048 0 0.0
.data.rel.ro 84968 84968 0 0.0
.dynamic 608 608 0 0.0
.got 4536 4536 0 0.0
.init 27 27 0 0.0
.init_array 1048 1048 0 0.0
.rodata 263613 263805 192 0.1
.text 2520002 2520210 208 0.0
all-clusters-minimal-app debug (read only) 2813401 2813801 400 0.0
(read/write) 146688 146688 0 0.0
.bss 60864 60864 0 0.0
.data 2048 2048 0 0.0
.data.rel.ro 77608 77608 0 0.0
.dynamic 608 608 0 0.0
.got 4488 4488 0 0.0
.init 27 27 0 0.0
.init_array 1048 1048 0 0.0
.rodata 265341 265533 192 0.1
.text 2373026 2373234 208 0.0
bridge-app debug+rpc (read only) 2315449 2315849 400 0.0
(read/write) 125504 125504 0 0.0
.bss 48928 48928 0 0.0
.data 3824 3824 0 0.0
.data.rel.ro 66984 66984 0 0.0
.dynamic 608 608 0 0.0
.got 4392 4392 0 0.0
.init 27 27 0 0.0
.init_array 728 728 0 0.0
.rodata 198016 198208 192 0.1
.text 1955698 1955906 208 0.0
chip-tool debug (read only) 10345025 10345457 432 0.0
(read/write) 622240 622240 0 0.0
.bss 24728 24728 0 0.0
.data 3234 3234 0 0.0
.data.rel.ro 587888 587888 0 0.0
.dynamic 608 608 0 0.0
.got 5096 5096 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 515861 516085 224 0.0
.text 8397476 8397684 208 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 10031716 10032052 336 0.0
(read/write) 684529 684529 0 0.0
.bss 42609 42609 0 0.0
.data 1152 1152 0 0.0
.data.rel.ro 623432 623432 0 0.0
.dynamic 528 528 0 0.0
.got 13520 13520 0 0.0
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 478260 478452 192 0.0
.text 7992788 7992932 144 0.0
lighting-app debug+rpc (read only) 2551193 2551577 384 0.0
(read/write) 129528 129528 0 0.0
.bss 49440 49440 0 0.0
.data 2096 2096 0 0.0
.data.rel.ro 72136 72136 0 0.0
.dynamic 608 608 0 0.0
.got 4392 4392 0 0.0
.init 27 27 0 0.0
.init_array 816 816 0 0.0
.rodata 213704 213896 192 0.1
.text 2167522 2167714 192 0.0
lock-app debug (read only) 2515913 2516313 400 0.0
(read/write) 124512 124512 0 0.0
.bss 47840 47840 0 0.0
.data 1712 1712 0 0.0
.data.rel.ro 69096 69096 0 0.0
.dynamic 608 608 0 0.0
.got 4424 4424 0 0.0
.init 27 27 0 0.0
.init_array 792 792 0 0.0
.rodata 228744 228936 192 0.1
.text 2122002 2122210 208 0.0
ota-provider-app debug (read only) 2322305 2322689 384 0.0
(read/write) 118312 118312 0 0.0
.bss 47488 47488 0 0.0
.data 1944 1944 0 0.0
.data.rel.ro 63096 63096 0 0.0
.dynamic 608 608 0 0.0
.got 4488 4488 0 0.0
.init 27 27 0 0.0
.init_array 672 672 0 0.0
.rodata 203512 203704 192 0.1
.text 1956018 1956210 192 0.0
ota-requestor-app debug (read only) 2439361 2439761 400 0.0
(read/write) 125216 125216 0 0.0
.bss 49856 49856 0 0.0
.data 2232 2232 0 0.0
.data.rel.ro 67288 67288 0 0.0
.dynamic 608 608 0 0.0
.got 4480 4480 0 0.0
.init 27 27 0 0.0
.init_array 728 728 0 0.0
.rodata 207296 207488 192 0.1
.text 2060914 2061122 208 0.0
shell debug (read only) 2551169 2551569 400 0.0
(read/write) 141104 141104 0 0.0
.bss 57448 57448 0 0.0
.data 1264 1264 0 0.0
.data.rel.ro 76688 76688 0 0.0
.dynamic 608 608 0 0.0
.got 4136 4136 0 0.0
.init 27 27 0 0.0
.init_array 928 928 0 0.0
.rodata 227762 227954 192 0.1
.text 2166306 2166514 208 0.0
thermostat-no-ble arm64 (read only) 2595316 2595668 352 0.0
(read/write) 158289 158289 0 0.0
.bss 65249 65249 0 0.0
.data 1704 1704 0 0.0
.data.rel.ro 83240 83240 0 0.0
.dynamic 528 528 0 0.0
.got 5072 5072 0 0.0
.init 24 24 0 0.0
.init_array 400 400 0 0.0
.rodata 165476 165668 192 0.1
.text 2190064 2190224 160 0.0
tv-app debug (read only) 3102225 3102609 384 0.0
(read/write) 257704 257704 0 0.0
.bss 167016 167016 0 0.0
.data 4848 4848 0 0.0
.data.rel.ro 79392 79392 0 0.0
.dynamic 608 608 0 0.0
.got 4848 4848 0 0.0
.init 27 27 0 0.0
.init_array 952 952 0 0.0
.rodata 249024 249216 192 0.1
.text 2665298 2665490 192 0.0
tv-casting-app debug (read only) 5577785 5578217 432 0.0
(read/write) 161968 161968 0 0.0
.bss 50248 50248 0 0.0
.data 2416 2416 0 0.0
.data.rel.ro 103048 103048 0 0.0
.dynamic 608 608 0 0.0
.got 4744 4744 0 0.0
.init 27 27 0 0.0
.init_array 864 864 0 0.0
.rodata 343209 343433 224 0.1
.text 4956626 4956834 208 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2448112 2448240 128 0.0
.bss 213940 213940 0 0.0
.data 5872 5872 0 0.0
.text 1410756 1410884 128 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1175175 1175327 152 0.0
bss 142900 142900 0 0.0
rodata 141888 142008 120 0.1
text 811492 811528 36 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1155367 1155523 156 0.0
bss 142136 142136 0 0.0
rodata 133416 133540 124 0.1
text 800936 800972 36 0.0
p6 all-clusters-app default (read/write) 2566144 2566288 144 0.0
.bss 149120 149120 0 0.0
.data 2776 2776 0 0.0
.text 1524408 1524552 144 0.0
all-clusters-minimal-app default (read/write) 2511440 2511584 144 0.0
.bss 148400 148400 0 0.0
.data 2776 2776 0 0.0
.text 1469704 1469848 144 0.0
light-app default (read/write) 2441368 2441528 160 0.0
.bss 140456 140456 0 0.0
.data 2592 2592 0 0.0
.text 1399632 1399792 160 0.0
lock-app default (read/write) 2468520 2468664 144 0.0
.bss 140304 140304 0 0.0
.data 2600 2600 0 0.0
.text 1426784 1426928 144 0.0
telink light-switch-app tlsr9518adk80d (read/write) 797284 797452 168 0.0
bss 70576 70576 0 0.0
noinit 40416 40416 0 0.0
text 565678 565714 36 0.0
lighting-app tlsr9518adk80d (read/write) 817116 817276 160 0.0
bss 71420 71420 0 0.0
noinit 40416 40416 0 0.0
text 582002 582040 38 0.0

The Darwin framework was using the current timezone, not UTC, when determining
the Matter epoch time corresponding to a given offset from now.  This caused the
epoch times it computed to be off by the offset from UTC.  In timezones ahead of
UTC, this could easily lead to certificates with mNotBeforeTime set to a value
larger than the current UTC time, which would then cause those certificates to
be considered not-yet-valid.

Fixes project-chip#20302
@bzbarsky-apple bzbarsky-apple force-pushed the fix-darwin-cert-times branch from ae3a9e8 to 5fe6b01 Compare July 12, 2022 20:00
@github-actions
Copy link

github-actions bot commented Jul 12, 2022

PR #20637: Size comparison from 01a11aa to 5fe6b01

Increases (34 builds for bl602, cc13x2_26x2, cyw30739, efr32, esp32, linux, mbed, nrfconnect, p6, telink)
platform target config section 01a11aa 5fe6b01 change % change
bl602 lighting-app bl602 (read/write) 1397386 1397634 248 0.0
.text 1058588 1058640 52 0.0
bl602+rpc (read/write) 1442810 1443066 256 0.0
.text 1090272 1090324 52 0.0
cc13x2_26x2 pump-app LP_CC2652R7 (read only) 678183 678431 248 0.0
.rodata 88503 88703 200 0.2
.text 589196 589244 48 0.0
pump-controller-app LP_CC2652R7 (read only) 664007 664255 248 0.0
.rodata 84367 84567 200 0.2
.text 579160 579208 48 0.0
cyw30739 ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 582774 583018 244 0.0
.app_xip_area 462376 462620 244 0.1
efr32 lighting-app BRD4161A (read/write) 1081436 1081700 264 0.0
.text 946372 946636 264 0.0
BRD4161A+rpc (read/write) 1135764 1136012 248 0.0
.text 983808 984056 248 0.0
BRD4161A+rs911x (read/write) 947924 948172 248 0.0
.text 805088 805336 248 0.0
lock-app BRD4161A+wf200 (read/write) 1128848 1129096 248 0.0
.text 982580 982828 248 0.0
window-app BRD4161A (read/write) 1075244 1075508 264 0.0
.text 938676 938940 264 0.0
esp32 all-clusters-app c3devkit (read only) 1020098 1020154 56 0.0
(read/write) 1485642 1485842 200 0.0
.flash.rodata 215528 215728 200 0.1
.flash.text 1020098 1020154 56 0.0
m5stack (read only) 1073971 1074035 64 0.0
(read/write) 487712 487904 192 0.0
.flash.rodata 245972 246164 192 0.1
.flash.text 1068587 1068651 64 0.0
linux all-clusters-app debug (read only) 2960825 2961225 400 0.0
.rodata 263613 263805 192 0.1
.text 2520002 2520210 208 0.0
all-clusters-minimal-app debug (read only) 2813401 2813801 400 0.0
.rodata 265341 265533 192 0.1
.text 2373026 2373234 208 0.0
bridge-app debug+rpc (read only) 2315449 2315849 400 0.0
.rodata 198016 198208 192 0.1
.text 1955698 1955906 208 0.0
chip-tool debug (read only) 10345025 10345457 432 0.0
.rodata 515861 516085 224 0.0
.text 8397476 8397684 208 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 10031716 10032052 336 0.0
.rodata 478260 478452 192 0.0
.text 7992788 7992932 144 0.0
lighting-app debug+rpc (read only) 2551193 2551577 384 0.0
.rodata 213704 213896 192 0.1
.text 2167522 2167714 192 0.0
lock-app debug (read only) 2515913 2516313 400 0.0
.rodata 228744 228936 192 0.1
.text 2122002 2122210 208 0.0
ota-provider-app debug (read only) 2322305 2322689 384 0.0
.rodata 203512 203704 192 0.1
.text 1956018 1956210 192 0.0
ota-requestor-app debug (read only) 2439361 2439761 400 0.0
.rodata 207296 207488 192 0.1
.text 2060914 2061122 208 0.0
shell debug (read only) 2551169 2551569 400 0.0
.rodata 227762 227954 192 0.1
.text 2166306 2166514 208 0.0
thermostat-no-ble arm64 (read only) 2595316 2595668 352 0.0
.rodata 165476 165668 192 0.1
.text 2190064 2190224 160 0.0
tv-app debug (read only) 3102225 3102609 384 0.0
.rodata 249024 249216 192 0.1
.text 2665298 2665490 192 0.0
tv-casting-app debug (read only) 5577785 5578217 432 0.0
.rodata 343209 343433 224 0.1
.text 4956626 4956834 208 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2448112 2448312 200 0.0
.text 1410756 1410956 200 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1175175 1175411 236 0.0
rodata 141888 142076 188 0.1
text 811492 811544 52 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1155367 1155607 240 0.0
rodata 133416 133608 192 0.1
text 800936 800988 52 0.0
p6 all-clusters-app default (read/write) 2566144 2566392 248 0.0
.text 1524408 1524656 248 0.0
all-clusters-minimal-app default (read/write) 2511440 2511688 248 0.0
.text 1469704 1469952 248 0.0
light-app default (read/write) 2441368 2441616 248 0.0
.text 1399632 1399880 248 0.0
lock-app default (read/write) 2468520 2468768 248 0.0
.text 1426784 1427032 248 0.0
telink light-switch-app tlsr9518adk80d (read/write) 797284 797540 256 0.0
text 565680 565732 52 0.0
lighting-app tlsr9518adk80d (read/write) 817116 817372 256 0.0
text 582004 582058 54 0.0
Decreases (4 builds for cc13x2_26x2, cyw30739)
platform target config section 01a11aa 5fe6b01 change % change
cc13x2_26x2 pump-app LP_CC2652R7 (read/write) 164032 163784 -248 -0.2
pump-controller-app LP_CC2652R7 (read/write) 178328 178080 -248 -0.1
cyw30739 light cyw930739m2evb_01 (read/write) 579622 579614 -8 -0.0
.app_xip_area 458376 458368 -8 -0.0
lock cyw930739m2evb_01 (read/write) 585574 585566 -8 -0.0
.app_xip_area 459600 459592 -8 -0.0
Full report (43 builds for bl602, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 01a11aa 5fe6b01 change % change
bl602 lighting-app bl602 (read/write) 1397386 1397634 248 0.0
.bss 116978 116978 0 0.0
.data 4480 4480 0 0.0
.text 1058588 1058640 52 0.0
bl602+rpc (read/write) 1442810 1443066 256 0.0
.bss 124418 124418 0 0.0
.data 4600 4600 0 0.0
.text 1090272 1090324 52 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 666275 666275 0 0.0
(read/write) 184948 184948 0 0.0
.bss 74116 74116 0 0.0
.data 3356 3356 0 0.0
.rodata 88139 88139 0 0.0
.text 577820 577820 0 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 632083 632083 0 0.0
(read/write) 157684 157684 0 0.0
.bss 73412 73412 0 0.0
.data 3356 3356 0 0.0
.rodata 77379 77379 0 0.0
.text 554380 554380 0 0.0
lock-ftd LP_CC2652R7 (read only) 669183 669183 0 0.0
(read/write) 172184 172184 0 0.0
.bss 71148 71148 0 0.0
.data 3280 3280 0 0.0
.rodata 76279 76279 0 0.0
.text 592424 592424 0 0.0
lock-mtd LP_CC2652R7 (read only) 618591 618591 0 0.0
(read/write) 144264 144264 0 0.0
.bss 66868 66868 0 0.0
.data 3280 3280 0 0.0
.rodata 76159 76159 0 0.0
.text 541944 541944 0 0.0
pump-app LP_CC2652R7 (read only) 678183 678431 248 0.0
(read/write) 164032 163784 -248 -0.2
.bss 71228 71228 0 0.0
.data 3280 3280 0 0.0
.rodata 88503 88703 200 0.2
.text 589196 589244 48 0.0
pump-controller-app LP_CC2652R7 (read only) 664007 664255 248 0.0
(read/write) 178328 178080 -248 -0.1
.bss 71348 71348 0 0.0
.data 3276 3276 0 0.0
.rodata 84367 84567 200 0.2
.text 579160 579208 48 0.0
shell LP_CC2652R7 (read only) 658774 658774 0 0.0
(read/write) 187952 187952 0 0.0
.bss 76420 76420 0 0.0
.data 3360 3360 0 0.0
.rodata 84918 84918 0 0.0
.text 573540 573540 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 579622 579614 -8 -0.0
.app_xip_area 458376 458368 -8 -0.0
.bss 64184 64184 0 0.0
.data 716 716 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 585574 585566 -8 -0.0
.app_xip_area 459600 459592 -8 -0.0
.bss 68912 68912 0 0.0
.data 720 720 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 582774 583018 244 0.0
.app_xip_area 462376 462620 244 0.1
.bss 63392 63392 0 0.0
.data 660 660 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read/write) 1081436 1081700 264 0.0
.bss 132996 132996 0 0.0
.data 2048 2048 0 0.0
.text 946372 946636 264 0.0
BRD4161A+rpc (read/write) 1135764 1136012 248 0.0
.bss 149676 149676 0 0.0
.data 2260 2260 0 0.0
.text 983808 984056 248 0.0
BRD4161A+rs911x (read/write) 947924 948172 248 0.0
.bss 140768 140768 0 0.0
.data 2048 2048 0 0.0
.text 805088 805336 248 0.0
lock-app BRD4161A+wf200 (read/write) 1128848 1129096 248 0.0
.bss 144184 144184 0 0.0
.data 2060 2060 0 0.0
.text 982580 982828 248 0.0
window-app BRD4161A (read/write) 1075244 1075508 264 0.0
.bss 134468 134468 0 0.0
.data 2076 2076 0 0.0
.text 938676 938940 264 0.0
esp32 all-clusters-app c3devkit (read only) 1020098 1020154 56 0.0
(read/write) 1485642 1485842 200 0.0
.dram0.bss 70080 70080 0 0.0
.dram0.data 14600 14600 0 0.0
.flash.rodata 215528 215728 200 0.1
.flash.text 1020098 1020154 56 0.0
.iram0.text 62902 62902 0 0.0
m5stack (read only) 1073971 1074035 64 0.0
(read/write) 487712 487904 192 0.0
.dram0.bss 75600 75600 0 0.0
.dram0.data 34144 34144 0 0.0
.flash.rodata 245972 246164 192 0.1
.flash.text 1068587 1068651 64 0.0
.iram0.text 123267 123267 0 0.0
k32w light k32w061+release (read/write) 658832 658832 0 0.0
.bss 69516 69516 0 0.0
.data 1992 1992 0 0.0
.text 581524 581524 0 0.0
lock k32w061+release (read/write) 685684 685684 0 0.0
.bss 69980 69980 0 0.0
.data 2004 2004 0 0.0
.text 607900 607900 0 0.0
linux all-clusters-app debug (read only) 2960825 2961225 400 0.0
(read/write) 154752 154752 0 0.0
.bss 61536 61536 0 0.0
.data 2048 2048 0 0.0
.data.rel.ro 84968 84968 0 0.0
.dynamic 608 608 0 0.0
.got 4536 4536 0 0.0
.init 27 27 0 0.0
.init_array 1048 1048 0 0.0
.rodata 263613 263805 192 0.1
.text 2520002 2520210 208 0.0
all-clusters-minimal-app debug (read only) 2813401 2813801 400 0.0
(read/write) 146688 146688 0 0.0
.bss 60864 60864 0 0.0
.data 2048 2048 0 0.0
.data.rel.ro 77608 77608 0 0.0
.dynamic 608 608 0 0.0
.got 4488 4488 0 0.0
.init 27 27 0 0.0
.init_array 1048 1048 0 0.0
.rodata 265341 265533 192 0.1
.text 2373026 2373234 208 0.0
bridge-app debug+rpc (read only) 2315449 2315849 400 0.0
(read/write) 125504 125504 0 0.0
.bss 48928 48928 0 0.0
.data 3824 3824 0 0.0
.data.rel.ro 66984 66984 0 0.0
.dynamic 608 608 0 0.0
.got 4392 4392 0 0.0
.init 27 27 0 0.0
.init_array 728 728 0 0.0
.rodata 198016 198208 192 0.1
.text 1955698 1955906 208 0.0
chip-tool debug (read only) 10345025 10345457 432 0.0
(read/write) 622240 622240 0 0.0
.bss 24728 24728 0 0.0
.data 3234 3234 0 0.0
.data.rel.ro 587888 587888 0 0.0
.dynamic 608 608 0 0.0
.got 5096 5096 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 515861 516085 224 0.0
.text 8397476 8397684 208 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 10031716 10032052 336 0.0
(read/write) 684529 684529 0 0.0
.bss 42609 42609 0 0.0
.data 1152 1152 0 0.0
.data.rel.ro 623432 623432 0 0.0
.dynamic 528 528 0 0.0
.got 13520 13520 0 0.0
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 478260 478452 192 0.0
.text 7992788 7992932 144 0.0
lighting-app debug+rpc (read only) 2551193 2551577 384 0.0
(read/write) 129528 129528 0 0.0
.bss 49440 49440 0 0.0
.data 2096 2096 0 0.0
.data.rel.ro 72136 72136 0 0.0
.dynamic 608 608 0 0.0
.got 4392 4392 0 0.0
.init 27 27 0 0.0
.init_array 816 816 0 0.0
.rodata 213704 213896 192 0.1
.text 2167522 2167714 192 0.0
lock-app debug (read only) 2515913 2516313 400 0.0
(read/write) 124512 124512 0 0.0
.bss 47840 47840 0 0.0
.data 1712 1712 0 0.0
.data.rel.ro 69096 69096 0 0.0
.dynamic 608 608 0 0.0
.got 4424 4424 0 0.0
.init 27 27 0 0.0
.init_array 792 792 0 0.0
.rodata 228744 228936 192 0.1
.text 2122002 2122210 208 0.0
ota-provider-app debug (read only) 2322305 2322689 384 0.0
(read/write) 118312 118312 0 0.0
.bss 47488 47488 0 0.0
.data 1944 1944 0 0.0
.data.rel.ro 63096 63096 0 0.0
.dynamic 608 608 0 0.0
.got 4488 4488 0 0.0
.init 27 27 0 0.0
.init_array 672 672 0 0.0
.rodata 203512 203704 192 0.1
.text 1956018 1956210 192 0.0
ota-requestor-app debug (read only) 2439361 2439761 400 0.0
(read/write) 125216 125216 0 0.0
.bss 49856 49856 0 0.0
.data 2232 2232 0 0.0
.data.rel.ro 67288 67288 0 0.0
.dynamic 608 608 0 0.0
.got 4480 4480 0 0.0
.init 27 27 0 0.0
.init_array 728 728 0 0.0
.rodata 207296 207488 192 0.1
.text 2060914 2061122 208 0.0
shell debug (read only) 2551169 2551569 400 0.0
(read/write) 141104 141104 0 0.0
.bss 57448 57448 0 0.0
.data 1264 1264 0 0.0
.data.rel.ro 76688 76688 0 0.0
.dynamic 608 608 0 0.0
.got 4136 4136 0 0.0
.init 27 27 0 0.0
.init_array 928 928 0 0.0
.rodata 227762 227954 192 0.1
.text 2166306 2166514 208 0.0
thermostat-no-ble arm64 (read only) 2595316 2595668 352 0.0
(read/write) 158289 158289 0 0.0
.bss 65249 65249 0 0.0
.data 1704 1704 0 0.0
.data.rel.ro 83240 83240 0 0.0
.dynamic 528 528 0 0.0
.got 5072 5072 0 0.0
.init 24 24 0 0.0
.init_array 400 400 0 0.0
.rodata 165476 165668 192 0.1
.text 2190064 2190224 160 0.0
tv-app debug (read only) 3102225 3102609 384 0.0
(read/write) 257704 257704 0 0.0
.bss 167016 167016 0 0.0
.data 4848 4848 0 0.0
.data.rel.ro 79392 79392 0 0.0
.dynamic 608 608 0 0.0
.got 4848 4848 0 0.0
.init 27 27 0 0.0
.init_array 952 952 0 0.0
.rodata 249024 249216 192 0.1
.text 2665298 2665490 192 0.0
tv-casting-app debug (read only) 5577785 5578217 432 0.0
(read/write) 161968 161968 0 0.0
.bss 50248 50248 0 0.0
.data 2416 2416 0 0.0
.data.rel.ro 103048 103048 0 0.0
.dynamic 608 608 0 0.0
.got 4744 4744 0 0.0
.init 27 27 0 0.0
.init_array 864 864 0 0.0
.rodata 343209 343433 224 0.1
.text 4956626 4956834 208 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2448112 2448312 200 0.0
.bss 213940 213940 0 0.0
.data 5872 5872 0 0.0
.text 1410756 1410956 200 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1175175 1175411 236 0.0
bss 142900 142900 0 0.0
rodata 141888 142076 188 0.1
text 811492 811544 52 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1155367 1155607 240 0.0
bss 142136 142136 0 0.0
rodata 133416 133608 192 0.1
text 800936 800988 52 0.0
p6 all-clusters-app default (read/write) 2566144 2566392 248 0.0
.bss 149120 149120 0 0.0
.data 2776 2776 0 0.0
.text 1524408 1524656 248 0.0
all-clusters-minimal-app default (read/write) 2511440 2511688 248 0.0
.bss 148400 148400 0 0.0
.data 2776 2776 0 0.0
.text 1469704 1469952 248 0.0
light-app default (read/write) 2441368 2441616 248 0.0
.bss 140456 140456 0 0.0
.data 2592 2592 0 0.0
.text 1399632 1399880 248 0.0
lock-app default (read/write) 2468520 2468768 248 0.0
.bss 140304 140304 0 0.0
.data 2600 2600 0 0.0
.text 1426784 1427032 248 0.0
telink light-switch-app tlsr9518adk80d (read/write) 797284 797540 256 0.0
bss 70576 70576 0 0.0
noinit 40416 40416 0 0.0
text 565680 565732 52 0.0
lighting-app tlsr9518adk80d (read/write) 817116 817372 256 0.0
bss 71420 71420 0 0.0
noinit 40416 40416 0 0.0
text 582004 582058 54 0.0

@Damian-Nordic Damian-Nordic merged commit e7915ea into project-chip:master Jul 13, 2022
github-actions bot pushed a commit that referenced this pull request Jul 13, 2022
…20637)

The Darwin framework was using the current timezone, not UTC, when determining
the Matter epoch time corresponding to a given offset from now.  This caused the
epoch times it computed to be off by the offset from UTC.  In timezones ahead of
UTC, this could easily lead to certificates with mNotBeforeTime set to a value
larger than the current UTC time, which would then cause those certificates to
be considered not-yet-valid.

Fixes #20302
andy31415 pushed a commit that referenced this pull request Jul 13, 2022
…20637) (#20669)

The Darwin framework was using the current timezone, not UTC, when determining
the Matter epoch time corresponding to a given offset from now.  This caused the
epoch times it computed to be off by the offset from UTC.  In timezones ahead of
UTC, this could easily lead to certificates with mNotBeforeTime set to a value
larger than the current UTC time, which would then cause those certificates to
be considered not-yet-valid.

Fixes #20302

Co-authored-by: Boris Zbarsky <[email protected]>
@bzbarsky-apple bzbarsky-apple deleted the fix-darwin-cert-times branch July 13, 2022 13:36
ajwak pushed a commit to ajwak/connectedhomeip that referenced this pull request Jul 13, 2022
…roject-chip#20637)

The Darwin framework was using the current timezone, not UTC, when determining
the Matter epoch time corresponding to a given offset from now.  This caused the
epoch times it computed to be off by the offset from UTC.  In timezones ahead of
UTC, this could easily lead to certificates with mNotBeforeTime set to a value
larger than the current UTC time, which would then cause those certificates to
be considered not-yet-valid.

Fixes project-chip#20302
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.

[Question] cert->mNotBeforeTime does not convert to UTC, is it right?
4 participants