1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
--- libgammu/device/bluetoth/bluez.c.orig 2010-07-12 15:51:05.000000000 +0400
+++ libgammu/device/bluetoth/bluez.c 2011-01-28 13:21:17.936545967 +0300
@@ -23,6 +23,8 @@
#ifdef GSM_ENABLE_BLUETOOTHDEVICE
#ifdef BLUEZ_FOUND
+#define BDADDR_ANY NG_HCI_BDADDR_ANY
+
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
@@ -31,11 +33,7 @@
#include <sys/socket.h>
#include <sys/time.h>
#include <unistd.h>
-#include <bluetooth/bluetooth.h>
-#include <bluetooth/rfcomm.h>
-#include <bluetooth/sdp.h>
-#include <bluetooth/sdp_lib.h>
-#include <bluetooth/hci_lib.h>
+#include <bluetooth.h>
#include "../../gsmcomon.h"
#include "../devfunc.h"
@@ -44,7 +42,7 @@
GSM_Error bluetooth_connect(GSM_StateMachine *s, int port, char *device)
{
GSM_Device_BlueToothData *d = &s->Device.Data.BlueTooth;
- struct sockaddr_rc laddr, raddr;
+ struct sockaddr_rfcomm laddr, raddr;
bdaddr_t bdaddr;
int fd;
@@ -53,15 +51,15 @@ GSM_Error bluetooth_connect(GSM_StateMac
smprintf(s, "Connecting to RF channel %i\n",port);
- fd = socket(PF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM);
+ fd = socket(PF_BLUETOOTH, SOCK_STREAM, BLUETOOTH_PROTO_RFCOMM);
if (fd < 0) {
smprintf(s, "Can't create socket\n");
return ERR_DEVICENODRIVER;
}
- bacpy(&laddr.rc_bdaddr, BDADDR_ANY);
- laddr.rc_family = AF_BLUETOOTH;
- laddr.rc_channel = 0;
+ bacpy(&laddr.rfcomm_bdaddr, BDADDR_ANY);
+ laddr.rfcomm_family = AF_BLUETOOTH;
+ laddr.rfcomm_channel = 0;
if (bind(fd, (struct sockaddr *)&laddr, sizeof(laddr)) < 0) {
smprintf(s, "Can't bind socket (%d, %s)\n", errno, strerror(errno));
@@ -70,9 +68,9 @@ GSM_Error bluetooth_connect(GSM_StateMac
}
str2ba(device, &bdaddr);
- bacpy(&raddr.rc_bdaddr, &bdaddr);
- raddr.rc_family = AF_BLUETOOTH;
- raddr.rc_channel = port;
+ bacpy(&raddr.rfcomm_bdaddr, &bdaddr);
+ raddr.rfcomm_family = AF_BLUETOOTH;
+ raddr.rfcomm_channel = port;
if (connect(fd, (struct sockaddr *)&raddr, sizeof(raddr)) < 0) {
smprintf(s, "Can't connect (%d, %s)\n", errno, strerror(errno));
|