summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Misc/ACKS1
-rw-r--r--Misc/NEWS3
-rw-r--r--Modules/socketmodule.c8
3 files changed, 12 insertions, 0 deletions
diff --git a/Misc/ACKS b/Misc/ACKS
index f6803bb..5998bca 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -203,6 +203,7 @@ Vincent Fiack
Russell Finn
Nils Fischbeck
Frederik Fix
+Matt Fleming
Hernán Martínez Foffani
Doug Fort
John Fouhy
diff --git a/Misc/NEWS b/Misc/NEWS
index 663203b..ff46fa4 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -132,6 +132,9 @@ Extension Modules
methods now allow their database parameter to be None as the
sleepycat API allows.
+- Bug #1526460: Fix socketmodule compile on NetBSD as it has a different
+ bluetooth API compared with Linux and FreeBSD.
+
Tests
-----
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index d07ce35..55539ca 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -367,6 +367,14 @@ const char *inet_ntop(int af, const void *src, char *dst, socklen_t size);
#define _BT_SOCKADDR_MEMB(s, proto) &((s)->sock_addr)
#define _BT_L2_MEMB(sa, memb) ((sa)->l2cap_##memb)
#define _BT_RC_MEMB(sa, memb) ((sa)->rfcomm_##memb)
+#elif defined(__NetBSD__)
+#define sockaddr_l2 sockaddr_bt
+#define sockaddr_rc sockaddr_bt
+#define sockaddr_sco sockaddr_bt
+#define _BT_SOCKADDR_MEMB(s, proto) &((s)->sock_addr)
+#define _BT_L2_MEMB(sa, memb) ((sa)->bt_##memb)
+#define _BT_RC_MEMB(sa, memb) ((sa)->bt_##memb)
+#define _BT_SCO_MEMB(sa, memb) ((sa)->bt_##memb)
#else
#define _BT_SOCKADDR_MEMB(s, proto) (&((s)->sock_addr).bt_##proto)
#define _BT_L2_MEMB(sa, memb) ((sa)->l2_##memb)