If the kernel doesn't support it we'll simply never get the notification. In
other words, there's no downside to always enabling this, so let's do that.
Signed-off-by: Kristof Provost <kprovost@netgate.com>
Message-Id: <
20250729093907.37849-1-kprovost@netgate.com>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg32402.html
Acked-by: Gert Doering <gert@greenie.muc.de>
Signed-off-by: Gert Doering <gert@greenie.muc.de>
else
AC_MSG_ERROR([DCO support can't be enabled])
fi
- else
- AC_CHECK_DECLS(
- [OVPN_NOTIF_FLOAT],
- [AC_DEFINE([ENABLE_DCO_FLOAT_FREEBSD], [1], [We have DCO float notifications on FreeBSD])],
- ,
- [[
- #include <net/if_ovpn.h>
- ]]
- )
fi
;;
*-mingw*)
return (nvl);
}
-#ifdef ENABLE_DCO_FLOAT_FREEBSD
static bool
nvlist_to_sockaddr(const nvlist_t *nvl, struct sockaddr_storage *ss)
{
return (true);
}
-#endif /* ifdef ENABLE_DCO_FLOAT_FREEBSD */
int
dco_new_peer(dco_context_t *dco, unsigned int peerid, int sd,
dco->dco_message_type = OVPN_CMD_SWAP_KEYS;
break;
-#ifdef ENABLE_DCO_FLOAT_FREEBSD
case OVPN_NOTIF_FLOAT: {
const nvlist_t *address;
dco->dco_message_type = OVPN_CMD_FLOAT_PEER;
break;
}
-#endif
default:
msg(M_WARN, "Unknown kernel notification %d", type);