$NetBSD$

XXXbjs:  I use amd64, and audioop is broken on 64-bit platforms.
Thus, this needs to be tested.

--- Modules/sunaudiodev.c.orig	2010-05-09 14:46:46.000000000 +0000
+++ Modules/sunaudiodev.c
@@ -224,7 +224,11 @@ sad_ibufcount(sadobject *self)
 {
     audio_info_t ai;
 
+#if defined(__NetBSD__) && defined(AUDIO_GETBUFINFO)
+    if (ioctl(self->x_fd, AUDIO_GEBUFTINFO, &ai) < 0) {
+#else
     if (ioctl(self->x_fd, AUDIO_GETINFO, &ai) < 0) {
+#endif
         PyErr_SetFromErrno(SunAudioError);
         return NULL;
     }
@@ -236,7 +240,11 @@ sad_obufcount(sadobject *self)
 {
     audio_info_t ai;
 
+#if defined(__NetBSD__) && defined(AUDIO_GETBUFINFO)
+    if (ioctl(self->x_fd, AUDIO_GETBUFINFO, &ai) < 0) {
+#else
     if (ioctl(self->x_fd, AUDIO_GETINFO, &ai) < 0) {
+#endif
         PyErr_SetFromErrno(SunAudioError);
         return NULL;
     }
@@ -275,7 +283,11 @@ sad_getdev(sadobject *self)
 static PyObject *
 sad_flush(sadobject *self)
 {
+#if defined(__NetBSD__) || defined(__OpenBSD__)
+    if (ioctl(self->x_fd, AUDIO_FLUSH, NULL) < 0) {
+#else
     if (ioctl(self->x_fd, I_FLUSH, FLUSHW) < 0) {
+#endif
         PyErr_SetFromErrno(SunAudioError);
         return NULL;
     }
