1 --- Modules/socketmodule.c
2 +++ Modules/socketmodule.c
3 @@ -1850,6 +1850,11 @@ getsockaddrarg(PySocketSockObject *s, PyObject *args,
4          /* RDS sockets use sockaddr_in: fall-through */
5  #endif /* AF_RDS */
6 
7 +#ifdef AF_DIVERT
8 +    case AF_DIVERT:
9 +        /* FreeBSD divert(4) sockets use sockaddr_in: fall-through */
10 +#endif /* AF_DIVERT */
11 +
12      case AF_INET:
13      {
14          struct maybe_idna host = {NULL, NULL};
15 @@ -7628,6 +7633,14 @@ PyInit__socket(void)
16      PyModule_AddIntMacro(m, AF_SYSTEM);
17  #endif
18 
19 +/* FreeBSD divert(4) */
20 +#ifdef PF_DIVERT
21 +    PyModule_AddIntMacro(m, PF_DIVERT);
22 +#endif
23 +#ifdef AF_DIVERT
24 +    PyModule_AddIntMacro(m, AF_DIVERT);
25 +#endif
26 +
27  #ifdef AF_PACKET
28      PyModule_AddIntMacro(m, AF_PACKET);
29  #endif
30