diff options
author | Alex Blasche <alexander.blasche@digia.com> | 2014-07-17 11:24:29 +0200 |
---|---|---|
committer | Alex Blasche <alexander.blasche@digia.com> | 2014-07-17 11:24:29 +0200 |
commit | 091322bcd89e8a68ac4cd660055ffa5c270df276 (patch) | |
tree | af20f8232f81700f2934eccd2c98d2c78d5f8b33 /src/bluetooth/bluez | |
parent | b5709787c9d68108bb44f6032427db3796bbdbdd (diff) | |
parent | 0d7c0661a538896c94a3493d9c97fca07cc526d7 (diff) |
Merge branch '5.3' into dev
Conflicts:
src/bluetooth/bluez/bluez.pri
src/bluetooth/qbluetoothsocket_bluez.cpp
Change-Id: Ieca8f2a327bf54b42403ddab88f8b9c3ff6b4a95
Diffstat (limited to 'src/bluetooth/bluez')
-rw-r--r-- | src/bluetooth/bluez/bluez.pri | 4 | ||||
-rw-r--r-- | src/bluetooth/bluez/bluez5_helper.cpp | 1 | ||||
-rw-r--r-- | src/bluetooth/bluez/bluez5_helper_p.h | 8 | ||||
-rw-r--r-- | src/bluetooth/bluez/bluez_data_p.h | 87 | ||||
-rw-r--r-- | src/bluetooth/bluez/objectmanager_p.h | 5 |
5 files changed, 102 insertions, 3 deletions
diff --git a/src/bluetooth/bluez/bluez.pri b/src/bluetooth/bluez/bluez.pri index 851949d2..6079c267 100644 --- a/src/bluetooth/bluez/bluez.pri +++ b/src/bluetooth/bluez/bluez.pri @@ -29,8 +29,8 @@ HEADERS += bluez/manager_p.h \ bluez/profile1_p.h \ bluez/obex_client1_bluez5_p.h \ bluez/obex_objectpush1_bluez5_p.h \ - bluez/obex_transfer1_bluez5_p.h - + bluez/obex_transfer1_bluez5_p.h \ + bluez/bluez_data_p.h SOURCES += bluez/manager.cpp \ bluez/adapter.cpp \ diff --git a/src/bluetooth/bluez/bluez5_helper.cpp b/src/bluetooth/bluez/bluez5_helper.cpp index 18ab22b1..c00ac5aa 100644 --- a/src/bluetooth/bluez/bluez5_helper.cpp +++ b/src/bluetooth/bluez/bluez5_helper.cpp @@ -46,6 +46,7 @@ #include "objectmanager_p.h" #include "properties_p.h" #include "adapter1_bluez5_p.h" +#include <bluetooth/sdp.h> #include <bluetooth/sdp_lib.h> QT_BEGIN_NAMESPACE diff --git a/src/bluetooth/bluez/bluez5_helper_p.h b/src/bluetooth/bluez/bluez5_helper_p.h index 36595f9c..d8d0ef01 100644 --- a/src/bluetooth/bluez/bluez5_helper_p.h +++ b/src/bluetooth/bluez/bluez5_helper_p.h @@ -44,9 +44,12 @@ #include <QtCore/QObject> #include <QtDBus/QtDBus> -#include <bluetooth/sdp.h> #include <QtBluetooth/QBluetoothAddress> +#ifndef NO_BLUEZ_INCLUDES +#include <bluetooth/sdp.h> +#endif + typedef QMap<QString, QVariantMap> InterfaceList; typedef QMap<QDBusObjectPath, InterfaceList> ManagedObjectList; @@ -57,7 +60,10 @@ QT_BEGIN_NAMESPACE bool isBluez5(); +#ifndef NO_BLUEZ_INCLUDES QByteArray parseSdpRecord(sdp_record_t *record); +#endif + QString findAdapterForAddress(const QBluetoothAddress &wantedAddress, bool *ok); class QtBluezDiscoveryManagerPrivate; diff --git a/src/bluetooth/bluez/bluez_data_p.h b/src/bluetooth/bluez/bluez_data_p.h new file mode 100644 index 00000000..822f53b9 --- /dev/null +++ b/src/bluetooth/bluez/bluez_data_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef BLUEZ_DATA_P_H +#define BLUEZ_DATA_P_H + +#include <QtCore/qglobal.h> +#include <sys/socket.h> + +#define BTPROTO_L2CAP 0 +#define BTPROTO_RFCOMM 3 + +#define SOL_L2CAP 6 +#define SOL_RFCOMM 18 + +#define RFCOMM_LM 0x03 + +#define RFCOMM_LM_AUTH 0x0002 +#define RFCOMM_LM_ENCRYPT 0x0004 +#define RFCOMM_LM_TRUSTED 0x0008 +#define RFCOMM_LM_SECURE 0x0020 + +#define L2CAP_LM 0x03 +#define L2CAP_LM_AUTH 0x0002 +#define L2CAP_LM_ENCRYPT 0x0004 +#define L2CAP_LM_TRUSTED 0x0008 +#define L2CAP_LM_SECURE 0x0020 + +// Bluetooth address +typedef struct { + quint8 b[6]; +} __attribute__((packed)) bdaddr_t; + +// L2CP socket +struct sockaddr_l2 { + sa_family_t l2_family; + unsigned short l2_psm; + bdaddr_t l2_bdaddr; + unsigned short l2_cid; +}; + +// RFCOMM socket +struct sockaddr_rc { + sa_family_t rc_family; + bdaddr_t rc_bdaddr; + quint8 rc_channel; +}; + +#endif // BLUEZ_DATA_P_H diff --git a/src/bluetooth/bluez/objectmanager_p.h b/src/bluetooth/bluez/objectmanager_p.h index 6acf3d6d..5ecde487 100644 --- a/src/bluetooth/bluez/objectmanager_p.h +++ b/src/bluetooth/bluez/objectmanager_p.h @@ -19,6 +19,11 @@ #include <QtCore/QStringList> #include <QtCore/QVariant> #include <QtDBus/QtDBus> + +/* Temporary hack to merge branches until Bluez headers are removed + * from bluez5_helpers_p.h. + */ +#define NO_BLUEZ_INCLUDES #include "bluez5_helper_p.h" /* |