OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "device/bluetooth/bluetooth_socket_chromeos.h" | 5 #include "device/bluetooth/bluetooth_socket_chromeos.h" |
6 | 6 |
7 #include <errno.h> | 7 #include <errno.h> |
8 #include <poll.h> | 8 #include <poll.h> |
9 #include <unistd.h> | 9 #include <unistd.h> |
10 #include <sys/ioctl.h> | 10 #include <sys/ioctl.h> |
(...skipping 26 matching lines...) Expand all Loading... |
37 } | 37 } |
38 | 38 |
39 if (optval == SOCK_DGRAM || optval == SOCK_SEQPACKET) { | 39 if (optval == SOCK_DGRAM || optval == SOCK_SEQPACKET) { |
40 socket_type_ = L2CAP; | 40 socket_type_ = L2CAP; |
41 } else { | 41 } else { |
42 socket_type_ = RFCOMM; | 42 socket_type_ = RFCOMM; |
43 } | 43 } |
44 } | 44 } |
45 | 45 |
46 BluetoothSocketChromeOS::~BluetoothSocketChromeOS() { | 46 BluetoothSocketChromeOS::~BluetoothSocketChromeOS() { |
47 HANDLE_EINTR(close(fd_)); | 47 close(fd_); |
48 } | 48 } |
49 | 49 |
50 bool BluetoothSocketChromeOS::Receive(net::GrowableIOBuffer *buffer) { | 50 bool BluetoothSocketChromeOS::Receive(net::GrowableIOBuffer *buffer) { |
51 base::ThreadRestrictions::AssertIOAllowed(); | 51 base::ThreadRestrictions::AssertIOAllowed(); |
52 | 52 |
53 if (socket_type_ == L2CAP) { | 53 if (socket_type_ == L2CAP) { |
54 int count; | 54 int count; |
55 if (ioctl(fd_, FIONREAD, &count) < 0) { | 55 if (ioctl(fd_, FIONREAD, &count) < 0) { |
56 error_message_ = safe_strerror(errno); | 56 error_message_ = safe_strerror(errno); |
57 LOG(WARNING) << "Unable to get waiting data size: " << error_message_; | 57 LOG(WARNING) << "Unable to get waiting data size: " << error_message_; |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 scoped_refptr<device::BluetoothSocket> BluetoothSocketChromeOS::Create( | 158 scoped_refptr<device::BluetoothSocket> BluetoothSocketChromeOS::Create( |
159 dbus::FileDescriptor* fd) { | 159 dbus::FileDescriptor* fd) { |
160 DCHECK(fd->is_valid()); | 160 DCHECK(fd->is_valid()); |
161 | 161 |
162 BluetoothSocketChromeOS* bluetooth_socket = | 162 BluetoothSocketChromeOS* bluetooth_socket = |
163 new BluetoothSocketChromeOS(fd->TakeValue());; | 163 new BluetoothSocketChromeOS(fd->TakeValue());; |
164 return scoped_refptr<BluetoothSocketChromeOS>(bluetooth_socket); | 164 return scoped_refptr<BluetoothSocketChromeOS>(bluetooth_socket); |
165 } | 165 } |
166 | 166 |
167 } // namespace chromeos | 167 } // namespace chromeos |
OLD | NEW |