Fixup fromcvs/togit conversion
[minix-pkgsrc.git] / lang / python26 / patches / patch-ap
blobc10ab5eedcd6b6676411ddbbaf7ec6df0e4f3621
1 $NetBSD: patch-ap,v 1.2 2009/04/24 01:32:50 hasso Exp $
3 --- Modules/socketmodule.c.orig 2010-05-23 15:22:08.000000000 +0000
4 +++ Modules/socketmodule.c
5 @@ -379,7 +379,7 @@ const char *inet_ntop(int af, const void
6  #define SOCKETCLOSE close
7  #endif
8  
9 -#if defined(HAVE_BLUETOOTH_H) || defined(HAVE_BLUETOOTH_BLUETOOTH_H) &&  !defined(__NetBSD__)
10 +#if defined(HAVE_BLUETOOTH_H) || defined(HAVE_BLUETOOTH_BLUETOOTH_H) &&  !defined(__NetBSD__) && !defined(__DragonFly__)
11  #define USE_BLUETOOTH 1
12  #if defined(__FreeBSD__)
13  #define BTPROTO_L2CAP BLUETOOTH_PROTO_L2CAP
14 @@ -393,11 +393,13 @@ const char *inet_ntop(int af, const void
15  #define _BT_L2_MEMB(sa, memb) ((sa)->l2cap_##memb)
16  #define _BT_RC_MEMB(sa, memb) ((sa)->rfcomm_##memb)
17  #define _BT_HCI_MEMB(sa, memb) ((sa)->hci_##memb)
18 -#elif defined(__NetBSD__)
19 +#elif defined(__NetBSD__) || defined(__DragonFly__)
20  #define sockaddr_l2 sockaddr_bt
21  #define sockaddr_rc sockaddr_bt
22  #define sockaddr_hci sockaddr_bt
23  #define sockaddr_sco sockaddr_bt
24 +#define SOL_HCI BTPROTO_HCI
25 +#define HCI_DATA_DIR SO_HCI_DIRECTION
26  #define _BT_L2_MEMB(sa, memb) ((sa)->bt_##memb)
27  #define _BT_RC_MEMB(sa, memb) ((sa)->bt_##memb)
28  #define _BT_HCI_MEMB(sa, memb) ((sa)->bt_##memb)
29 @@ -1076,9 +1078,13 @@ makesockaddr(int sockfd, struct sockaddr
30          case BTPROTO_HCI:
31          {
32              struct sockaddr_hci *a = (struct sockaddr_hci *) addr;
33 +#if defined(__NetBSD__) || defined(__DragonFly__)
34 +            return makebdaddr(&_BT_HCI_MEMB(a, bdaddr));
35 +#else
36              PyObject *ret = NULL;
37              ret = Py_BuildValue("i", _BT_HCI_MEMB(a, dev));
38              return ret;
39 +#endif
40          }
42  #if !defined(__FreeBSD__)
43 @@ -1350,12 +1356,25 @@ getsockaddrarg(PySocketSockObject *s, Py
44          case BTPROTO_HCI:
45          {
46              struct sockaddr_hci *addr = (struct sockaddr_hci *)addr_ret;
47 +#if defined(__NetBSD__) || defined(__DragonFly__)
48 +            char *straddr = PyString_AsString(args);
50 +            _BT_HCI_MEMB(addr, family) = AF_BLUETOOTH;
51 +            if (straddr == NULL) {
52 +                PyErr_SetString(socket_error, "getsockaddrarg: "
53 +                                "wrong format");
54 +                return 0;
55 +            }
56 +            if (setbdaddr(straddr, &_BT_HCI_MEMB(addr, bdaddr)) < 0)
57 +                return 0;
58 +#else
59              _BT_HCI_MEMB(addr, family) = AF_BLUETOOTH;
60              if (!PyArg_ParseTuple(args, "i", &_BT_HCI_MEMB(addr, dev))) {
61                  PyErr_SetString(socket_error, "getsockaddrarg: "
62                                  "wrong format");
63                  return 0;
64              }
65 +#endif
66              *len_ret = sizeof *addr;
67              return 1;
68          }
69 @@ -4588,9 +4607,13 @@ init_socket(void)
70      PyModule_AddIntConstant(m, "BTPROTO_L2CAP", BTPROTO_L2CAP);
71      PyModule_AddIntConstant(m, "BTPROTO_HCI", BTPROTO_HCI);
72      PyModule_AddIntConstant(m, "SOL_HCI", SOL_HCI);
73 +#if !defined(__NetBSD__) && !defined(__DragonFly__)
74      PyModule_AddIntConstant(m, "HCI_FILTER", HCI_FILTER);
75 +#endif
76  #if !defined(__FreeBSD__)
77 +#if !defined(__NetBSD__) && !defined(__DragonFly__)
78      PyModule_AddIntConstant(m, "HCI_TIME_STAMP", HCI_TIME_STAMP);
79 +#endif
80      PyModule_AddIntConstant(m, "HCI_DATA_DIR", HCI_DATA_DIR);
81      PyModule_AddIntConstant(m, "BTPROTO_SCO", BTPROTO_SCO);
82  #endif