1. 15 7月, 2008 5 次提交
    • M
      [Bluetooth] Allow security for outgoing L2CAP connections · b1235d79
      Marcel Holtmann 提交于
      When requested the L2CAP layer will now enforce authentication and
      encryption on outgoing connections. The usefulness of this feature
      is kinda limited since it will not allow proper connection ownership
      tracking until the authentication procedure has been finished. This
      is a limitation of Bluetooth 2.0 and before and can only be fixed by
      using Simple Pairing.
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      b1235d79
    • M
      [Bluetooth] Add timestamp support to L2CAP, RFCOMM and SCO · 3241ad82
      Marcel Holtmann 提交于
      Enable the common timestamp functionality that the network subsystem
      provides for L2CAP, RFCOMM and SCO sockets. It is possible to either
      use SO_TIMESTAMP or the IOCTLs to retrieve the timestamp of the
      current packet.
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      3241ad82
    • M
      [Bluetooth] Export details about authentication requirements · 40be492f
      Marcel Holtmann 提交于
      With the Simple Pairing support, the authentication requirements are
      an explicit setting during the bonding process. Track and enforce the
      requirements and allow higher layers like L2CAP and RFCOMM to increase
      them if needed.
      
      This patch introduces a new IOCTL that allows to query the current
      authentication requirements. It is also possible to detect Simple
      Pairing support in the kernel this way.
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      40be492f
    • M
      [Bluetooth] Disconnect when encryption gets disabled · 9719f8af
      Marcel Holtmann 提交于
      The Bluetooth specification allows to enable or disable the encryption
      of an ACL link at any time by either the peer or the remote device. If
      a L2CAP or RFCOMM connection requested an encrypted link, they will now
      disconnect that link if the encryption gets disabled. Higher protocols
      that don't care about encryption (like SDP) are not affected.
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      9719f8af
    • M
      [Bluetooth] Change retrieval of L2CAP features mask · 79d554a6
      Marcel Holtmann 提交于
      Getting the remote L2CAP features mask is really important, but doing
      this as less intrusive as possible is tricky. To play nice with older
      systems and Bluetooth qualification testing, the features mask is now
      only retrieved in two specific cases and only once per lifetime of an
      ACL link.
      
      When trying to establish a L2CAP connection and the remote features mask
      is unknown, the L2CAP information request is sent when the ACL link goes
      into connected state. This applies only to outgoing connections and also
      only for the connection oriented channels.
      
      The second case is when a connection request has been received. In this
      case a connection response with the result pending and the information
      request will be send. After receiving an information response or if the
      timeout gets triggered, the normal connection setup process with security
      setup will be initiated.
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      79d554a6
  2. 03 5月, 2008 1 次提交
  3. 29 3月, 2008 1 次提交
  4. 26 3月, 2008 1 次提交
  5. 04 3月, 2008 1 次提交
  6. 27 2月, 2008 1 次提交
  7. 29 1月, 2008 1 次提交
  8. 01 11月, 2007 1 次提交
  9. 22 10月, 2007 5 次提交
  10. 11 10月, 2007 1 次提交
    • E
      [NET]: Make socket creation namespace safe. · 1b8d7ae4
      Eric W. Biederman 提交于
      This patch passes in the namespace a new socket should be created in
      and has the socket code do the appropriate reference counting.  By
      virtue of this all socket create methods are touched.  In addition
      the socket create methods are modified so that they will fail if
      you attempt to create a socket in a non-default network namespace.
      
      Failing if we attempt to create a socket outside of the default
      network namespace ensures that as we incrementally make the network stack
      network namespace aware we will not export functionality that someone
      has not audited and made certain is network namespace safe.
      Allowing us to partially enable network namespaces before all of the
      exotic protocols are supported.
      
      Any protocol layers I have missed will fail to compile because I now
      pass an extra parameter into the socket creation code.
      
      [ Integrated AF_IUCV build fixes from Andrew Morton... -DaveM ]
      Signed-off-by: NEric W. Biederman <ebiederm@xmission.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1b8d7ae4
  11. 31 7月, 2007 4 次提交
  12. 24 5月, 2007 1 次提交
  13. 05 5月, 2007 1 次提交
    • M
      [Bluetooth] Fix L2CAP and HCI setsockopt() information leaks · 0878b666
      Marcel Holtmann 提交于
      The L2CAP and HCI setsockopt() implementations have a small information
      leak that makes it possible to leak kernel stack memory to userspace.
      
      If the optlen parameter is 0, no data will be copied by copy_from_user(),
      but the uninitialized stack buffer will be read and stored later. A call
      to getsockopt() can now retrieve the leaked information.
      
      To fix this problem the stack buffer given to copy_from_user() must be
      initialized with the current settings.
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      0878b666
  14. 26 4月, 2007 2 次提交
  15. 11 2月, 2007 1 次提交
  16. 23 1月, 2007 2 次提交
  17. 03 12月, 2006 1 次提交
  18. 22 11月, 2006 2 次提交
  19. 16 10月, 2006 2 次提交
  20. 13 7月, 2006 1 次提交
  21. 04 7月, 2006 2 次提交
  22. 01 7月, 2006 1 次提交
  23. 12 1月, 2006 1 次提交
  24. 04 1月, 2006 1 次提交
    • E
      [NET]: move struct proto_ops to const · 90ddc4f0
      Eric Dumazet 提交于
      I noticed that some of 'struct proto_ops' used in the kernel may share
      a cache line used by locks or other heavily modified data. (default
      linker alignement is 32 bytes, and L1_CACHE_LINE is 64 or 128 at
      least)
      
      This patch makes sure a 'struct proto_ops' can be declared as const,
      so that all cpus can share all parts of it without false sharing.
      
      This is not mandatory : a driver can still use a read/write structure
      if it needs to (and eventually a __read_mostly)
      
      I made a global stubstitute to change all existing occurences to make
      them const.
      
      This should reduce the possibility of false sharing on SMP, and
      speedup some socket system calls.
      Signed-off-by: NEric Dumazet <dada1@cosmosbay.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      90ddc4f0