~cyphermox/bluez/5.23

« back to all changes in this revision

Viewing changes to lib/bluetooth.h

  • Committer: Package Import Robot
  • Author(s): Nobuhiro Iwamatsu
  • Date: 2012-01-24 05:35:09 UTC
  • mfrom: (1.5.11) (7.1.6 experimental)
  • Revision ID: package-import@ubuntu.com-20120124053509-uwpwqi783lz08wm3
Tags: 4.98-1
* New upstream release.
* Update debian/bluetooth-dbus.conf.
* Update debian/control.
  Add Multi-Arch: foreign to bluez.

Show diffs side-by-side

added added

removed removed

Lines of Context:
93
93
#if __BYTE_ORDER == __LITTLE_ENDIAN
94
94
#define htobs(d)  (d)
95
95
#define htobl(d)  (d)
 
96
#define htobll(d) (d)
96
97
#define btohs(d)  (d)
97
98
#define btohl(d)  (d)
 
99
#define btohll(d) (d)
98
100
#elif __BYTE_ORDER == __BIG_ENDIAN
99
101
#define htobs(d)  bswap_16(d)
100
102
#define htobl(d)  bswap_32(d)
 
103
#define htobll(d) bswap_64(d)
101
104
#define btohs(d)  bswap_16(d)
102
105
#define btohl(d)  bswap_32(d)
 
106
#define btohll(d) bswap_64(d)
103
107
#else
104
108
#error "Unknown byte order"
105
109
#endif
121
125
        __p->__v = (val);                       \
122
126
} while(0)
123
127
 
 
128
#if __BYTE_ORDER == __LITTLE_ENDIAN
 
129
static inline uint64_t bt_get_le64(void *ptr)
 
130
{
 
131
        return bt_get_unaligned((uint64_t *) ptr);
 
132
}
 
133
 
 
134
static inline uint64_t bt_get_be64(void *ptr)
 
135
{
 
136
        return bswap_64(bt_get_unaligned((uint64_t *) ptr));
 
137
}
 
138
 
 
139
static inline uint32_t bt_get_le32(void *ptr)
 
140
{
 
141
        return bt_get_unaligned((uint32_t *) ptr);
 
142
}
 
143
 
 
144
static inline uint32_t bt_get_be32(void *ptr)
 
145
{
 
146
        return bswap_32(bt_get_unaligned((uint32_t *) ptr));
 
147
}
 
148
 
 
149
static inline uint16_t bt_get_le16(void *ptr)
 
150
{
 
151
        return bt_get_unaligned((uint16_t *) ptr);
 
152
}
 
153
 
 
154
static inline uint16_t bt_get_be16(void *ptr)
 
155
{
 
156
        return bswap_16(bt_get_unaligned((uint16_t *) ptr));
 
157
}
 
158
#elif __BYTE_ORDER == __BIG_ENDIAN
 
159
static inline uint64_t bt_get_le64(void *ptr)
 
160
{
 
161
        return bswap_64(bt_get_unaligned((uint64_t *) ptr));
 
162
}
 
163
 
 
164
static inline uint64_t bt_get_be64(void *ptr)
 
165
{
 
166
        return bt_get_unaligned((uint64_t *) ptr);
 
167
}
 
168
 
 
169
static inline uint32_t bt_get_le32(void *ptr)
 
170
{
 
171
        return bswap_32(bt_get_unaligned((uint32_t *) ptr));
 
172
}
 
173
 
 
174
static inline uint32_t bt_get_be32(void *ptr)
 
175
{
 
176
        return bt_get_unaligned((uint32_t *) ptr);
 
177
}
 
178
 
 
179
static inline uint16_t bt_get_le16(void *ptr)
 
180
{
 
181
        return bswap_16(bt_get_unaligned((uint16_t *) ptr));
 
182
}
 
183
 
 
184
static inline uint16_t bt_get_be16(void *ptr)
 
185
{
 
186
        return bt_get_unaligned((uint16_t *) ptr);
 
187
}
 
188
#else
 
189
#error "Unknown byte order"
 
190
#endif
 
191
 
124
192
/* BD Address */
125
193
typedef struct {
126
194
        uint8_t b[6];