• Łukasz Rymanowski's avatar
    Bluetooth: Fix for GAP/SEC/SEM/BI-10-C · 49c06c9e
    Łukasz Rymanowski authored
    Security Mode 1 level 4, force us to use have key size 16 octects long.
    This patch adds check for that.
    
    This is required for the qualification test GAP/SEC/SEM/BI-10-C
    
    Logs from test when ATT is configured with sec level BT_SECURITY_FIPS
    
    < ACL Data TX: Handle 3585 flags 0x00 dlen 11                                                                       #28 [hci0] 3.785965
          SMP: Pairing Request (0x01) len 6
            IO capability: DisplayYesNo (0x01)
            OOB data: Authentication data not present (0x00)
            Authentication requirement: Bonding, MITM, SC, No Keypresses (0x0d)
            Max encryption key size: 16
            Initiator key distribution: EncKey Sign (0x05)
            Responder key distribution: EncKey IdKey Sign (0x07)
    > ACL Data RX: Handle 3585 flags 0x02 dlen 11                                                                       #35 [hci0] 3.883020
          SMP: Pairing Response (0x02) len 6
            IO capability: DisplayYesNo (0x01)
            OOB data: Authentication data not present (0x00)
            Authentication requirement: Bonding, MITM, SC, No Keypresses (0x0d)
            Max encryption key size: 7
            Initiator key distribution: EncKey Sign (0x05)
            Responder key distribution: EncKey IdKey Sign (0x07)
    < ACL Data TX: Handle 3585 flags 0x00 dlen 6                                                                        #36 [hci0] 3.883136
          SMP: Pairing Failed (0x05) len 1
            Reason: Encryption key size (0x06)
    Signed-off-by: default avatarŁukasz Rymanowski <lukasz.rymanowski@codecoup.pl>
    Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
    49c06c9e
smp.c 93.1 KB