Skip to content

Commit cbea408

Browse files
jialu522hyson710
authored andcommitted
bluetooth: Add initialization for local variables.
bug: v/80616 When passed to bt_socket_client_send_with_reply , it may contain undefined values, leading to unpredictable behavior. Initialize packet explicitly before using it. Signed-off-by: jialu <jialu@xiaomi.com>
1 parent 373a30c commit cbea408

File tree

1 file changed

+29
-29
lines changed

1 file changed

+29
-29
lines changed

framework/socket/async/bt_device_async.c

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ static int bt_device_send_async(bt_instance_t* ins, bt_address_t* addr,
206206

207207
bt_status_t bt_device_get_identity_address_async(bt_instance_t* ins, bt_address_t* bd_addr, bt_address_cb_t cb, void* userdata)
208208
{
209-
bt_message_packet_t packet;
209+
bt_message_packet_t packet = { 0 };
210210

211211
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
212212

@@ -215,7 +215,7 @@ bt_status_t bt_device_get_identity_address_async(bt_instance_t* ins, bt_address_
215215

216216
bt_status_t bt_device_get_address_type_async(bt_instance_t* ins, bt_address_t* addr, bt_device_get_address_type_cb_t cb, void* userdata)
217217
{
218-
bt_message_packet_t packet;
218+
bt_message_packet_t packet = { 0 };
219219

220220
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
221221

@@ -224,7 +224,7 @@ bt_status_t bt_device_get_address_type_async(bt_instance_t* ins, bt_address_t* a
224224

225225
bt_status_t bt_device_get_device_type_async(bt_instance_t* ins, bt_address_t* addr, bt_device_type_cb_t cb, void* userdata)
226226
{
227-
bt_message_packet_t packet;
227+
bt_message_packet_t packet = { 0 };
228228

229229
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
230230

@@ -244,7 +244,7 @@ bt_status_t bt_device_get_name_async(bt_instance_t* ins, bt_address_t* addr, bt_
244244

245245
bt_status_t bt_device_get_device_class_async(bt_instance_t* ins, bt_address_t* addr, bt_u32_cb_t cb, void* userdata)
246246
{
247-
bt_message_packet_t packet;
247+
bt_message_packet_t packet = { 0 };
248248

249249
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
250250

@@ -264,7 +264,7 @@ bt_status_t bt_device_get_uuids_async(bt_instance_t* ins, bt_address_t* addr, bt
264264

265265
bt_status_t bt_device_get_appearance_async(bt_instance_t* ins, bt_address_t* addr, bt_u16_cb_t cb, void* userdata)
266266
{
267-
bt_message_packet_t packet;
267+
bt_message_packet_t packet = { 0 };
268268

269269
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
270270

@@ -273,7 +273,7 @@ bt_status_t bt_device_get_appearance_async(bt_instance_t* ins, bt_address_t* add
273273

274274
bt_status_t bt_device_get_rssi_async(bt_instance_t* ins, bt_address_t* addr, bt_s8_cb_t cb, void* userdata)
275275
{
276-
bt_message_packet_t packet;
276+
bt_message_packet_t packet = { 0 };
277277

278278
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
279279

@@ -308,7 +308,7 @@ bt_status_t bt_device_set_alias_async(bt_instance_t* ins, bt_address_t* addr,
308308
bt_status_t bt_device_is_connected_async(bt_instance_t* ins, bt_address_t* addr,
309309
bt_transport_t transport, bt_bool_cb_t cb, void* userdata)
310310
{
311-
bt_message_packet_t packet;
311+
bt_message_packet_t packet = { 0 };
312312

313313
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
314314

@@ -320,7 +320,7 @@ bt_status_t bt_device_is_connected_async(bt_instance_t* ins, bt_address_t* addr,
320320
bt_status_t bt_device_is_encrypted_async(bt_instance_t* ins, bt_address_t* addr,
321321
bt_transport_t transport, bt_bool_cb_t cb, void* userdata)
322322
{
323-
bt_message_packet_t packet;
323+
bt_message_packet_t packet = { 0 };
324324

325325
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
326326

@@ -332,7 +332,7 @@ bt_status_t bt_device_is_encrypted_async(bt_instance_t* ins, bt_address_t* addr,
332332
bt_status_t bt_device_is_bond_initiate_local_async(bt_instance_t* ins, bt_address_t* addr,
333333
bt_transport_t transport, bt_bool_cb_t cb, void* userdata)
334334
{
335-
bt_message_packet_t packet;
335+
bt_message_packet_t packet = { 0 };
336336

337337
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
338338

@@ -344,7 +344,7 @@ bt_status_t bt_device_is_bond_initiate_local_async(bt_instance_t* ins, bt_addres
344344
bt_status_t bt_device_get_bond_state_async(bt_instance_t* ins, bt_address_t* addr,
345345
bt_transport_t transport, bt_device_get_bond_state_cb_t cb, void* userdata)
346346
{
347-
bt_message_packet_t packet;
347+
bt_message_packet_t packet = { 0 };
348348

349349
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
350350

@@ -356,7 +356,7 @@ bt_status_t bt_device_get_bond_state_async(bt_instance_t* ins, bt_address_t* add
356356
bt_status_t bt_device_is_bonded_async(bt_instance_t* ins, bt_address_t* addr,
357357
bt_transport_t transport, bt_bool_cb_t cb, void* userdata)
358358
{
359-
bt_message_packet_t packet;
359+
bt_message_packet_t packet = { 0 };
360360

361361
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
362362

@@ -367,7 +367,7 @@ bt_status_t bt_device_is_bonded_async(bt_instance_t* ins, bt_address_t* addr,
367367

368368
bt_status_t bt_device_connect_async(bt_instance_t* ins, bt_address_t* addr, bt_status_cb_t cb, void* userdata)
369369
{
370-
bt_message_packet_t packet;
370+
bt_message_packet_t packet = { 0 };
371371

372372
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
373373

@@ -376,7 +376,7 @@ bt_status_t bt_device_connect_async(bt_instance_t* ins, bt_address_t* addr, bt_s
376376

377377
bt_status_t bt_device_disconnect_async(bt_instance_t* ins, bt_address_t* addr, bt_status_cb_t cb, void* userdata)
378378
{
379-
bt_message_packet_t packet;
379+
bt_message_packet_t packet = { 0 };
380380

381381
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
382382

@@ -388,7 +388,7 @@ bt_status_t bt_device_connect_le_async(bt_instance_t* ins,
388388
ble_addr_type_t type,
389389
ble_connect_params_t* param, bt_status_cb_t cb, void* userdata)
390390
{
391-
bt_message_packet_t packet;
391+
bt_message_packet_t packet = { 0 };
392392

393393
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
394394

@@ -401,7 +401,7 @@ bt_status_t bt_device_connect_le_async(bt_instance_t* ins,
401401

402402
bt_status_t bt_device_disconnect_le_async(bt_instance_t* ins, bt_address_t* addr, bt_status_cb_t cb, void* userdata)
403403
{
404-
bt_message_packet_t packet;
404+
bt_message_packet_t packet = { 0 };
405405

406406
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
407407

@@ -411,7 +411,7 @@ bt_status_t bt_device_disconnect_le_async(bt_instance_t* ins, bt_address_t* addr
411411
bt_status_t bt_device_connect_request_reply_async(bt_instance_t* ins, bt_address_t* addr,
412412
bool accept, bt_status_cb_t cb, void* userdata)
413413
{
414-
bt_message_packet_t packet;
414+
bt_message_packet_t packet = { 0 };
415415

416416
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
417417

@@ -423,7 +423,7 @@ bt_status_t bt_device_connect_request_reply_async(bt_instance_t* ins, bt_address
423423

424424
bt_status_t bt_device_connect_all_profile_async(bt_instance_t* ins, bt_address_t* addr, bt_status_cb_t cb, void* userdata)
425425
{
426-
bt_message_packet_t packet;
426+
bt_message_packet_t packet = { 0 };
427427

428428
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
429429

@@ -432,7 +432,7 @@ bt_status_t bt_device_connect_all_profile_async(bt_instance_t* ins, bt_address_t
432432

433433
bt_status_t bt_device_disconnect_all_profile_async(bt_instance_t* ins, bt_address_t* addr, bt_status_cb_t cb, void* userdata)
434434
{
435-
bt_message_packet_t packet;
435+
bt_message_packet_t packet = { 0 };
436436

437437
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
438438

@@ -444,7 +444,7 @@ bt_status_t bt_device_set_le_phy_async(bt_instance_t* ins,
444444
ble_phy_type_t tx_phy,
445445
ble_phy_type_t rx_phy, bt_status_cb_t cb, void* userdata)
446446
{
447-
bt_message_packet_t packet;
447+
bt_message_packet_t packet = { 0 };
448448

449449
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
450450

@@ -458,7 +458,7 @@ bt_status_t bt_device_set_le_phy_async(bt_instance_t* ins,
458458
bt_status_t bt_device_create_bond_async(bt_instance_t* ins, bt_address_t* addr,
459459
bt_transport_t transport, bt_status_cb_t cb, void* userdata)
460460
{
461-
bt_message_packet_t packet;
461+
bt_message_packet_t packet = { 0 };
462462

463463
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
464464

@@ -470,7 +470,7 @@ bt_status_t bt_device_create_bond_async(bt_instance_t* ins, bt_address_t* addr,
470470

471471
bt_status_t bt_device_remove_bond_async(bt_instance_t* ins, bt_address_t* addr, uint8_t transport, bt_status_cb_t cb, void* userdata)
472472
{
473-
bt_message_packet_t packet;
473+
bt_message_packet_t packet = { 0 };
474474

475475
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
476476

@@ -482,7 +482,7 @@ bt_status_t bt_device_remove_bond_async(bt_instance_t* ins, bt_address_t* addr,
482482

483483
bt_status_t bt_device_cancel_bond_async(bt_instance_t* ins, bt_address_t* addr, bt_status_cb_t cb, void* userdata)
484484
{
485-
bt_message_packet_t packet;
485+
bt_message_packet_t packet = { 0 };
486486

487487
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
488488

@@ -493,7 +493,7 @@ bt_status_t bt_device_cancel_bond_async(bt_instance_t* ins, bt_address_t* addr,
493493

494494
bt_status_t bt_device_pair_request_reply_async(bt_instance_t* ins, bt_address_t* addr, bool accept, bt_status_cb_t cb, void* userdata)
495495
{
496-
bt_message_packet_t packet;
496+
bt_message_packet_t packet = { 0 };
497497

498498
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
499499

@@ -506,7 +506,7 @@ bt_status_t bt_device_pair_request_reply_async(bt_instance_t* ins, bt_address_t*
506506
bt_status_t bt_device_set_pairing_confirmation_async(bt_instance_t* ins, bt_address_t* addr,
507507
uint8_t transport, bool accept, bt_status_cb_t cb, void* userdata)
508508
{
509-
bt_message_packet_t packet;
509+
bt_message_packet_t packet = { 0 };
510510

511511
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
512512

@@ -520,7 +520,7 @@ bt_status_t bt_device_set_pairing_confirmation_async(bt_instance_t* ins, bt_addr
520520
bt_status_t bt_device_set_pin_code_async(bt_instance_t* ins, bt_address_t* addr, bool accept,
521521
char* pincode, int len, bt_status_cb_t cb, void* userdata)
522522
{
523-
bt_message_packet_t packet;
523+
bt_message_packet_t packet = { 0 };
524524

525525
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
526526
if (len > sizeof(packet.devs_pl._bt_device_set_pin_code.pincode))
@@ -537,7 +537,7 @@ bt_status_t bt_device_set_pin_code_async(bt_instance_t* ins, bt_address_t* addr,
537537
bt_status_t bt_device_set_pass_key_async(bt_instance_t* ins, bt_address_t* addr,
538538
uint8_t transport, bool accept, uint32_t passkey, bt_status_cb_t cb, void* userdata)
539539
{
540-
bt_message_packet_t packet;
540+
bt_message_packet_t packet = { 0 };
541541

542542
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
543543

@@ -552,7 +552,7 @@ bt_status_t bt_device_set_pass_key_async(bt_instance_t* ins, bt_address_t* addr,
552552
bt_status_t bt_device_set_le_legacy_tk_async(bt_instance_t* ins, bt_address_t* addr,
553553
bt_128key_t tk_val, bt_status_cb_t cb, void* userdata)
554554
{
555-
bt_message_packet_t packet;
555+
bt_message_packet_t packet = { 0 };
556556

557557
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
558558

@@ -565,7 +565,7 @@ bt_status_t bt_device_set_le_legacy_tk_async(bt_instance_t* ins, bt_address_t* a
565565
bt_status_t bt_device_set_le_sc_remote_oob_data_async(bt_instance_t* ins, bt_address_t* addr,
566566
bt_128key_t c_val, bt_128key_t r_val, bt_status_cb_t cb, void* userdata)
567567
{
568-
bt_message_packet_t packet;
568+
bt_message_packet_t packet = { 0 };
569569

570570
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
571571

@@ -578,7 +578,7 @@ bt_status_t bt_device_set_le_sc_remote_oob_data_async(bt_instance_t* ins, bt_add
578578

579579
bt_status_t bt_device_get_le_sc_local_oob_data_async(bt_instance_t* ins, bt_address_t* addr, bt_status_cb_t cb, void* userdata)
580580
{
581-
bt_message_packet_t packet;
581+
bt_message_packet_t packet = { 0 };
582582

583583
BT_SOCKET_INS_VALID(ins, BT_STATUS_PARM_INVALID);
584584

0 commit comments

Comments
 (0)