diff options
author | Stef Walter <stef@thewalter.net> | 2010-10-28 13:55:21 +0000 |
---|---|---|
committer | Stef Walter <stef@thewalter.net> | 2011-01-23 15:47:45 -0600 |
commit | e4c5c1f56e27da22aa0cd7960eee723750d6f3fe (patch) | |
tree | 8cdd759b94bca96688bab3260e32dd3ae78718ac /common/smtppass.c | |
parent | 4337c7c0506800ff662e55806eb1867812b9802b (diff) |
Fix problem on linux not detecting netfilter header.
Diffstat (limited to 'common/smtppass.c')
-rw-r--r-- | common/smtppass.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/common/smtppass.c b/common/smtppass.c index 4119335..08ea5ef 100644 --- a/common/smtppass.c +++ b/common/smtppass.c @@ -45,6 +45,9 @@ #include <sys/socket.h> #include <sys/param.h> #include <sys/stat.h> +#include <sys/socket.h> + +#include <netinet/in.h> #include <ctype.h> #include <stdlib.h> @@ -60,7 +63,8 @@ #include "usuals.h" -#ifdef LINUX_TRANSPARENT_PROXY +#if LINUX_NETFILTER +#include <linux/types.h> #include <linux/netfilter_ipv4.h> #endif @@ -754,7 +758,7 @@ static int make_connections(spctx_t* ctx, int client) memset(&addr, 0, sizeof(addr)); SANY_LEN(addr) = sizeof(addr); -#ifdef LINUX_TRANSPARENT_PROXY +#ifdef LINUX_NETFILTER if(getsockopt(ctx->client.fd, SOL_IP, SO_ORIGINAL_DST, &SANY_ADDR(addr), &SANY_LEN(addr)) == -1) #else if(getsockname(ctx->client.fd, &SANY_ADDR(addr), &SANY_LEN(addr)) == -1) |