* fix #6373 by switching the BD... macros to take the address of corresponding

constants, which had to be defined in several places in order to be available
  in the kernel addons, network protocols and the server/kit.
* enable -Werror for all servers

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38213 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Oliver Tappe 2010-08-17 21:46:32 +00:00
parent 7640bbb6cd
commit e0ef64750f
8 changed files with 43 additions and 23 deletions

View File

@ -1198,6 +1198,7 @@ if $(HAIKU_NO_WERROR) != 1 {
EnableWerror src add-ons input_server devices ;
# EnableWerror src add-ons input_server filters ;
# EnableWerror src add-ons input_server methods ;
EnableWerror src add-ons kernel bluetooth ;
# EnableWerror src add-ons kernel bus_managers acpi ;
EnableWerror src add-ons kernel bus_managers agp_gart ;
EnableWerror src add-ons kernel bus_managers ata ;
@ -1391,23 +1392,7 @@ if $(HAIKU_NO_WERROR) != 1 {
# EnableWerror src kits tracker ;
EnableWerror src kits translation ;
EnableWerror src preferences ;
EnableWerror src servers app ;
# EnableWerror src servers bluetooth ;
EnableWerror src servers cddb_daemon ;
EnableWerror src servers debug ;
EnableWerror src servers input ;
EnableWerror src servers mail ;
EnableWerror src servers media ;
EnableWerror src servers media_addon ;
EnableWerror src servers midi ;
EnableWerror src servers mount ;
EnableWerror src servers net ;
EnableWerror src servers notification ;
EnableWerror src servers power ;
EnableWerror src servers print ;
EnableWerror src servers registrar ;
EnableWerror src servers services_daemon ;
EnableWerror src servers syslog_daemon ;
EnableWerror src servers ;
EnableWerror src system kernel ;
EnableWerror src system runtime_loader ;
}

View File

@ -24,10 +24,17 @@ typedef struct {
uint8 b[6];
} __attribute__((packed)) bdaddr_t;
namespace BPrivate {
#define BDADDR_NULL (&(bdaddr_t) {{0, 0, 0, 0, 0, 0}})
#define BDADDR_LOCAL (&(bdaddr_t) {{0, 0, 0, 0xff, 0xff, 0xff}})
#define BDADDR_BROADCAST (&(bdaddr_t) {{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}})
extern const bdaddr_t kBdNullAddress;
extern const bdaddr_t kBdLocalAddress;
extern const bdaddr_t kBdBroadcastAddress;
}
#define BDADDR_NULL (&BPrivate::kBdNullAddress)
#define BDADDR_LOCAL (&BPrivate::kBdLocalAddress)
#define BDADDR_BROADCAST (&BPrivate::kBdBroadcastAddress)
#define BDADDR_ANY BDADDR_BROADCAST

View File

@ -138,7 +138,7 @@ struct bluetooth_core_data_module_info {
status_t (*PostEvent)(bluetooth_device* ndev, void* event,
size_t size);
struct HciConnection* (*AddConnection)(uint16 handle, int type,
bdaddr_t* dst, hci_id hid);
const bdaddr_t* dst, hci_id hid);
// status_t (*RemoveConnection)(bdaddr_t destination, hci_id hid);
status_t (*RemoveConnection)(uint16 handle, hci_id hid);

View File

@ -37,7 +37,7 @@ HciConnection::~HciConnection()
HciConnection*
AddConnection(uint16 handle, int type, bdaddr_t* dst, hci_id hid)
AddConnection(uint16 handle, int type, const bdaddr_t* dst, hci_id hid)
{
// Create connection descriptor

View File

@ -19,7 +19,7 @@ HciConnection* ConnectionByDestination(const bdaddr_t* destination,
hci_id hid);
HciConnection* AddConnection(uint16 handle, int type, bdaddr_t* dst,
HciConnection* AddConnection(uint16 handle, int type, const bdaddr_t* dst,
hci_id hid);
status_t RemoveConnection(bdaddr_t* destination, hci_id hid);
status_t RemoveConnection(uint16 handle, hci_id hid);

View File

@ -44,6 +44,15 @@
#include "acl.h"
namespace BPrivate {
const bdaddr_t kBdNullAddress = {{0, 0, 0, 0, 0, 0}};
const bdaddr_t kBdLocalAddress = {{0, 0, 0, 0xff, 0xff, 0xff}};
const bdaddr_t kBdBroadcastAddress = {{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}};
}
typedef PortListener<void,
HCI_MAX_FRAME_SIZE, // Event Body can hold max 255 + 2 header
24 // Some devices have sent chunks of 24 events(inquiry result)

View File

@ -22,6 +22,15 @@
#include <bluetooth/L2CAP/btL2CAP.h>
namespace BPrivate {
const bdaddr_t kBdNullAddress = {{0, 0, 0, 0, 0, 0}};
const bdaddr_t kBdLocalAddress = {{0, 0, 0, 0xff, 0xff, 0xff}};
const bdaddr_t kBdBroadcastAddress = {{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}};
}
#define L2CAP_CHECKSUM(address) \
(address.b[0] + address.b[1] + address.b[2] + address.b[3] \
+ address.b[4] + address.b[5])

View File

@ -11,6 +11,16 @@
#include "KitSupport.h"
namespace BPrivate {
const bdaddr_t kBdNullAddress = {{0, 0, 0, 0, 0, 0}};
const bdaddr_t kBdLocalAddress = {{0, 0, 0, 0xff, 0xff, 0xff}};
const bdaddr_t kBdBroadcastAddress = {{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}};
}
BMessenger* _RetrieveBluetoothMessenger(void)
{
// Fix/review: leaking memory here