tree fbbc9b41f39db54ce8e550fad36611900a7813fc
parent 1c5439a24c3ce66f6b4a2f4767ddaf3687b9832f
author Anil Hiranniah <anil.hiranniah@nxp.com> 1582006455 +0530
committer George Chang <georgekgchang@google.com> 1582007436 +0000

Fix warnings from static analysis tools(system_nfc-1/2)

1. DEADCODE
   a. nfa_dm_api.cc:NFA_SendRawVsCommand()
      duplicate null check for p_cmd_params & cmd_params_len
2. FORWARD/REVERSE NULL
   a. nfa_ee_act.cc:nfa_ee_proc_evt()
      Added null check for p_cb
   b. ce_t4t.cc: ce_t4t_data_cback()
      Added null check for p_c_apdu
3. EXPRESSION_AND_TYPE issues
   a. nfc_ncif.cc:nfc_ncif_send_data()
      p_data->len is of type uint16_t
   b. rw_i93.cc:rw_i93_send_cmd_lock_block()
      block_number is of type uint8_t
   c. nfa_dm_act.cc:nfa_dm_set_init_nci_params()
      length of T3T_ID to be calculated based on NCI Version
4. BUFFER_OVERRUN
   a. gki_ulinux.cc:GKI_shutdown()
      corrected index of gki task
   b. nci_defs.h
      In nfc_ncif.cc, buffer overrun may occur while copying
      data from p_pa_nfc->atr_res[gb_idx] of length
      p_pa_nfc->gen_bytes_len bytes where gb_idx can be
      either 14/15 and max gen bytes len is 48.
      To avoid this, NCI_MAX_ATS_LEN is set to 64
5. DUPLICATE
   a. nfa_dm_discover.cc:nfa_dm_disc_sm_listen_sleep()
      removed duplicate activation notification

Bug: 142626701
Test: Nfc-On/Off, Tag read, HCE, CE-eSE
Change-Id: I773ed0e014c9578f432bee5140125bd208d95201
