1. 20 Jun, 2016 1 commit
    • Matadeen Mishra's avatar
      L2CAP: Handle invalid HCI packets · 92e0f19f
      Matadeen Mishra authored
      - Handled Buffer over flow for uint16_t
      - Discard invalid HCI packets from Codenomican test
        tool as data length and actual data not matching
        during reassembly
      
      Use case:
      Execute L2CAP test suit from Defensics Codenomican
      
      Steps:
      1. Pair and connect DUT to Codenomican tool
      2. Execute L2CAP test suit from Defensics Codenomican
      
      Failure:
      Crash observed on DUT and Codenomican tool stuck in execution.
      
      Root cause:
      Codenomican tool sending invalid HCI packets to DUT and
      there are no checks to handle buffer over flow and other invalid data
      from Codenomican tool.
      
      Bug: 29498064
      Change-Id: I6f93c80244fc39d607ad285185136bbbca83d7ae
      92e0f19f
  2. 17 Jun, 2016 1 commit
    • Pavlin Radoslavov's avatar
      Add missing NULL pointers assignments · ba64c39c
      Pavlin Radoslavov authored
      Each pointer that was freed by one of the following functions should
      be reset to NULL:
       - config_free()
       - data_dispatcher_free()
       - fixed_queue_free()
       - list_free()
      
      Bug: 29421693
      Change-Id: Ie55a04ed986393994564edcf872d7413b0767a85
      (cherry picked from commit 8cbc2910)
      ba64c39c
  3. 15 Jun, 2016 2 commits
  4. 14 Jun, 2016 5 commits
  5. 13 Jun, 2016 1 commit
  6. 10 Jun, 2016 1 commit
    • Jakub Pawlowski's avatar
      HOGP: Clear pending operations for a given device on disconnect · 22fc3825
      Jakub Pawlowski authored
      If there are any GATT operations interrupted by a disconnect, mark the
      device as no longer executing. Otherwise we'll stil receive data from
      the device, but we'll be unable to send any HID commands to it.
      
      Bug: 29184976
      Change-Id: I489f41c970abad0ff1145005d3250beafa83d27e
      22fc3825
  7. 09 Jun, 2016 1 commit
  8. 08 Jun, 2016 4 commits
  9. 07 Jun, 2016 6 commits
    • Subramanian Srinivasan's avatar
      Fix payload size for GATT Read by type request · 38720b62
      Subramanian Srinivasan authored
      Payload size for GATT Read by type request for UUID32 and UUID128
      are incorrectly allocated. This leads to memory overflow when
      Read by type request is sent for them and eventually results
      in crash during free. This change makes sure that the payload
      can accomodate upto 128 bit UUID.
      
      This crash is observed while running TC_GAR_CL_BV_03_C Qual test
      case.
      
      Bug: 29011042
      Change-Id: Ib2b41b769b394670099f4549f204e2972f7df876
      (cherry picked from commit 7da98621)
      38720b62
    • Venkata Jagadeesh's avatar
      Reject L2CAP INFO RSP and ECHO RSP on the LE signaling channel · 3de5d04a
      Venkata Jagadeesh authored
      Steps:
      Execute TC_LE_REJ_BI_02_C
      
      Failure:
      PTS stuck after sending INFO RSP, ECHO RSP on the LE signaling channel
      
      Root Cause:
      The Bluetooth stack is not rejecting INFO RSP, ECHO RSP even though
      these commands are invalid for the LE signaling Channel.
      
      Fix:
      Reject the INFO RSP, ECHO RSP with error L2CAP_CMD_REJ_NOT_UNDERSTOOD.
      
      Bug: 27852645
      Change-Id: Ie09f658d606206cbdbea928e8cb6d10332743cf4
      (cherry picked from commit d35bb40d)
      3de5d04a
    • Myles Watson's avatar
      btm: Restrict EXTENDED_INQUIRY_RESULT to 1 result · 9eb4ddab
      Myles Watson authored
      
      The spec only allows one result per event.
      Abort processing and return if the spec is not followed.
      
      Bug: 29141745
      Change-Id: Ic414b28adadec274779b0d953d12d499a619aff6
      Signed-off-by: default avatarMyles Watson <mylesgw@google.com>
      9eb4ddab
    • Nitin Arora's avatar
      Remote device changes for SMP certification · 9ded3b71
      Nitin Arora authored
      Use Case:
      Certification test cases for SMP require various scenarios
      where the remote device needs to show a specific behavior
      where it fails the pairing in a certain way, and the DUT is
      required to abort the pairing properly.
      In abcense of a proper PTS suite to execute these test cases,
      we can use another device running the same host by configuring
      certain run time property.
      
      Test Cases:
      TP/SCJW/BI-02-C
      TP/SCJW/BV-02-C
      TP/SCPK/BI-03-C
      TP/SCPK/BI-04-C
      TP/SCPK/BV-02-C
      TP/SCPK/BV-03-C
      TP/SCJW/BI-01-C
      TP/SCCT/BV-01-C
      TP/SCCT/BV-02-C
      TP/SCPK/BI-01-C
      TP/SCPK/BI-02-C
      TP/SCPK/BV-04-C
      TP/SCPK/BV-01-C
      
      Fix:
      Added a property in the bt_stack.conf file. The property name
      is "SmpFailureCase". The values 2 to 6(inclusive), are forcausing SMP
      failures with various failure reasons.
      Failure case 1 and 9 are for producing error "Confirm value failure".
      Cases 7 and 8 are for generating specific errors at pair cancel.
      
      Note:
      The default use of this feature is controlled using a compile
      time flag BTM_BLE_SMP_CERTIFICATION.
      The BTM_BLE_SMP_CERTIFICATION = TRUE is needed only while we
      wait for the PTS support for the LE Secure connections.
      
      Bug: 27852645
      Change-Id: I1f7a8ff2659d85b5978b75870c57162a34d394d0
      (cherry picked from commit 0bd0c8fc)
      9ded3b71
    • Pankaj Kanwar's avatar
    • Pankaj Kanwar's avatar
  10. 06 Jun, 2016 3 commits
    • Nitin Arora's avatar
      Clear BLE block from device records at unpair · f3052eb3
      Nitin Arora authored
      Use Case:
      Pair and unpair LE remote device repeatedly. The repair
      intermittently fails with the error "DHKey Check Failure"
      
      Failure:
      Pairing failure is observed when pairing is performed
      after unpairing, without performing a BT reset.
      Further analysis of the SMP logs indicate that DUT uses the
      static address of the remote device for calculation of the
      MacKey value. At the time of pairing, the remote RPA should
      be used (and the static address has not yet been distributed either).
      The problem is caused by the previous dev record which is left in
      the stack, and at the time of repair, stack picks the old device
      record and reuses it.
      
      Fix:
      This change removes the entire BLE block from the device record,
      after the unpairing is performed, so that a new device record
      is allocated, after the repairing is done.
      
      Bug: 27852645
      Change-Id: I8d605d1bb3b1c32061a8d8a7a7fe0fe200030abc
      f3052eb3
    • JivakDhadse's avatar
      Revert "DO NOT MERGE Proper construction of AVDTP general reject message" · 825cd498
      JivakDhadse authored
      This reverts commit 2ed10d442266eade44be121cd24fd473c85007d0.
      
      Original change needs to be reverted to align with Errata
      ESR04 where "Section 8.17, General Reject Page 71" of adopted
      AvDTP Spec is changed to have "Invalid Signal Identifier"
      in first 6 bits of Octet 1.
      This change helps passing PTS case TP/SIG/SMG/ESR04/BI-28-C
      
      Bug: 27852645
      Change-Id: Idfc960ce00662e8aacc26f3b3fdca9deca8a2aff
      825cd498
    • Navin Kochar's avatar
      Fix for issue introduced due to rebase of LE L2CAP COC · be3f7f9d
      Navin Kochar authored
      During 67212321
      
       patch, some code got missed while doing manual rebase.
      This patch is adding that missing code.
      
      Bug: 27852645
      Change-Id: I2525908c29e3288e0ace1ee26c5f2aa6cfd59d68
      Signed-off-by: default avatarNavin Kochar <navin.kochar@intel.com>
      be3f7f9d
  11. 30 May, 2016 1 commit
  12. 27 May, 2016 1 commit
  13. 26 May, 2016 2 commits
  14. 25 May, 2016 2 commits
    • Jacky Cheung's avatar
      Improve config file sync during configuration save. · 3114ad62
      Jacky Cheung authored
      Add fsync() calls to force sync to disk while saving configuration
      file.  It is necessary to do a sync on the temp file before rename,
      and to sync again on its parent directory to ensure both the
      file content and the directory are up-to-date.
      
      Bug: 27354612
      
      Change-Id: I3a862ad59c8ae5beb8ea2c727eb5f275a2d5823e
      (cherry picked from commit 95dbe03a)
      3114ad62
    • Ayan Ghosh's avatar
      Limit number of SBC frames to fit into single MTU · 8bbbee16
      Ayan Ghosh authored
      - Calculate number of SBC frames to fit into single MTU for EDR capable
        remote devices. This makes sure the maximum utilization of the
        available bandwidth, keeping the bitrate at high quality.
      - This change helps to address the discrepancy seen with a few available
        2 Mbps headsets which set the AVDTP media MTU size greater than the
        2DH5 packet payload size which eventually forces AVDTP packets to get
        fragmented in the controller. This change ensures packing of the SBC
        frames in a way that AVDTP packet size fits within the 2DH5 payload
        size.
      - As packet size is restricted to meet the required bit rate more than
        one AVDTP packet can be sent to the controller in a given iteration
        based on the bit rate requirement.
      
      Bug: 24875861
      Change-Id: Icae7656ad563bbbdef65ecbfa15a89b26cf9edb2
      8bbbee16
  15. 24 May, 2016 7 commits
  16. 23 May, 2016 1 commit
  17. 19 May, 2016 1 commit