File tree Expand file tree Collapse file tree 5 files changed +11
-8
lines changed Expand file tree Collapse file tree 5 files changed +11
-8
lines changed Original file line number Diff line number Diff line change @@ -82,6 +82,7 @@ pub async fn battery_read_task(
8282 level : Some ( bat_percentage as f64 ) ,
8383 voltage : Some ( bat_calc_mv / 1000.0 ) ,
8484 } ,
85+ sign_key : Some ( unsafe { crate :: state:: SIGN_KEY } ) ,
8586 } )
8687 . await ;
8788 }
Original file line number Diff line number Diff line change @@ -146,6 +146,7 @@ async fn submit_up(
146146 firmware : alloc:: string:: ToString :: to_string ( crate :: version:: FIRMWARE ) ,
147147 sign_key : unsafe { crate :: state:: SIGN_KEY } ,
148148 } ,
149+ sign_key : None ,
149150 } )
150151 . await ;
151152
Original file line number Diff line number Diff line change @@ -118,17 +118,11 @@ async fn main(spawner: Spawner) {
118118 // TODO: add error handling here
119119 let mut sign_key = [ 0 ; 4 ] ;
120120 if nvs. get_key ( b"SIGN_KEY" , & mut sign_key) . await . is_ok ( ) {
121- unsafe {
122- crate :: state:: SIGN_KEY =
123- u32:: from_be_bytes ( sign_key. try_into ( ) . expect ( "Cannot fail" ) ) >> 1 ;
124- }
121+ unsafe { crate :: state:: SIGN_KEY = u32:: from_be_bytes ( sign_key) >> 1 } ;
125122 } else {
126123 _ = getrandom:: getrandom ( & mut sign_key) ;
127124 _ = nvs. append_key ( b"SIGN_KEY" , & sign_key) . await ;
128- unsafe {
129- crate :: state:: SIGN_KEY =
130- u32:: from_be_bytes ( sign_key. try_into ( ) . expect ( "Cannot fail" ) ) >> 1 ;
131- }
125+ unsafe { crate :: state:: SIGN_KEY = u32:: from_be_bytes ( sign_key) >> 1 } ;
132126 }
133127
134128 spawner. must_spawn ( lcd:: lcd_task (
@@ -351,6 +345,7 @@ async fn logger_task(global_state: GlobalState) {
351345 ws:: send_packet ( structs:: TimerPacket {
352346 tag : None ,
353347 data : structs:: TimerPacketInner :: Logs { logs : tmp_logs } ,
348+ sign_key : None ,
354349 } )
355350 . await ;
356351 }
Original file line number Diff line number Diff line change @@ -24,6 +24,9 @@ pub struct TimerPacket {
2424 #[ serde( skip_serializing_if = "Option::is_none" ) ]
2525 pub tag : Option < u64 > ,
2626 pub data : TimerPacketInner ,
27+
28+ #[ serde( skip_serializing_if = "Option::is_none" ) ]
29+ pub sign_key : Option < u32 > ,
2730}
2831
2932#[ derive( Serialize , Deserialize , Debug , Clone ) ]
Original file line number Diff line number Diff line change @@ -205,6 +205,7 @@ async fn ws_loop(
205205 firmware : alloc:: string:: ToString :: to_string ( crate :: version:: FIRMWARE ) ,
206206 sign_key : unsafe { crate :: state:: SIGN_KEY } ,
207207 } ,
208+ sign_key : None ,
208209 } )
209210 . await ;
210211 }
@@ -463,6 +464,7 @@ pub async fn send_test_ack(global_state: &GlobalState) {
463464 send_packet ( TimerPacket {
464465 tag : None ,
465466 data : TimerPacketInner :: TestAck ( global_state. state . value ( ) . await . snapshot_data ( ) ) ,
467+ sign_key : Some ( unsafe { crate :: state:: SIGN_KEY } ) ,
466468 } )
467469 . await ;
468470}
@@ -505,6 +507,7 @@ where
505507 let packet = TimerPacket {
506508 tag : Some ( tag) ,
507509 data : packet,
510+ sign_key : Some ( unsafe { crate :: state:: SIGN_KEY } ) ,
508511 } ;
509512 send_packet ( packet) . await ;
510513
You can’t perform that action at this time.
0 commit comments