tree de7d8ed6bae941bf2012f2fe61b1a2fc8fa24441
parent 96927a43b3f0e3124bb278c1b73c461c7e651c3e
author Scott James Remnant <keybuk@chromium.org> 1375393180 -0700
committer Scott James Remnant <keybuk@chromium.org> 1375394467 -0700

btsocket: support L2CAP, RFCOMM & SCO sockets

Python's socket module doesn't consistently provide these (depending
whether it saw bluetooth.h during build or not), and provides old
versions - so support bind() on them too.

BUG=chromium:256771
TEST=import btsocket, socket
  s1 = btsocket.socket(btsocket.AF_BLUETOOTH, socket.SOCK_SEQPACKET, btsocket.BTPROTO_L2CAP)
  s1.bind((btsocket.BDADDR_ANY, 0))

  s2 = btsocket.socket(btsocket.AF_BLUETOOTH, socket.SOCK_STREAM, btsocket.BTPROTO_RFCOMM)
  s2.bind((btsocket.BDADDR_ANY, 1))

  s3 = btsocket.socket(btsocket.AF_BLUETOOTH, socket.SOCK_RAW, btsocket.BTPROTO_HCI)
  s3.bind((0, btsocket.HCI_CHANNEL_RAW))

  s4 = btsocket.socket(btsocket.AF_BLUETOOTH, socket.SOCK_RAW, btsocket.BTPROTO_HCI)
  s4.bind((btsocket.HCI_DEV_NONE, btsocket.HCI_CHANNEL_CONTROL))

  s5 = btsocket.socket(btsocket.AF_BLUETOOTH, socket.SOCK_RAW, btsocket.BTPROTO_HCI)
  s5.bind((btsocket.HCI_DEV_NONE, btsocket.HCI_CHANNEL_MONITOR))

  s6 = btsocket.socket(btsocket.AF_BLUETOOTH, socket.SOCK_STREAM, btsocket.BTPROTO_SCO)
  s6.bind((btsocket.BDADDR_ANY))

Change-Id: I6d44a11b667e96d7fa3334df80e383911d658405
