From bed417288e989c48a1362bb1177f436a2e2f9f4f Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Fri, 2 Apr 2010 11:31:20 +0200 Subject: Minor fixes to previous patches. --- sysdep/bsd/sysio.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'sysdep/bsd') diff --git a/sysdep/bsd/sysio.h b/sysdep/bsd/sysio.h index 9ee4ade..87c78fb 100644 --- a/sysdep/bsd/sysio.h +++ b/sysdep/bsd/sysio.h @@ -150,18 +150,18 @@ sysio_process_rx_cmsgs(sock *s, struct msghdr *msg) // log(L_WARN "RX %I %d", s->laddr, s->lifindex); } - -void -sysio_prepare_tx_cmsgs(sock *s, struct msghdr *msg) +/* Unfortunately, IP_SENDSRCADDR does not work for raw IP sockets on BSD kernels */ +static void +sysio_prepare_tx_cmsgs(sock *s, struct msghdr *msg, void *cbuf, size_t cbuflen) { struct cmsghdr *cm; struct in_addr *sa; if (!(s->flags & SKF_LADDR_TX)) - { - msg->msg_controllen = 0; - return; - } + return; + + msg->msg_control = cbuf; + msg->msg_controllen = cbuflen; if (s->iface) { -- cgit v1.2.3