summaryrefslogtreecommitdiffstats
path: root/libexec/ftp-proxy/util.c
diff options
context:
space:
mode:
authorbeck <beck@openbsd.org>2004-01-22 16:10:30 +0000
committerbeck <beck@openbsd.org>2004-01-22 16:10:30 +0000
commit0074ba7cee9291dca2d69850d78964d34ef7a48d (patch)
tree7b572c03af835848e5a451181baf970cace2f90b /libexec/ftp-proxy/util.c
parentadd gettdbbysrcdst(), just like gettdb(), but compares tdb_src as well; ok mcbride@ (diff)
downloadwireguard-openbsd-0074ba7cee9291dca2d69850d78964d34ef7a48d.tar.xz
wireguard-openbsd-0074ba7cee9291dca2d69850d78964d34ef7a48d.zip
Add a -a address option to set the address which the proxy will use
to bind the local end of outgoing connections, and some man page cleanup. Based on diff provided in pr 3538 by Karl O. Pinc <kop@meme.com> Closes pr 3538. ok dhartmei@
Diffstat (limited to 'libexec/ftp-proxy/util.c')
-rw-r--r--libexec/ftp-proxy/util.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/libexec/ftp-proxy/util.c b/libexec/ftp-proxy/util.c
index b308063d94e..17a88cae643 100644
--- a/libexec/ftp-proxy/util.c
+++ b/libexec/ftp-proxy/util.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: util.c,v 1.17 2003/12/22 21:53:40 deraadt Exp $ */
+/* $OpenBSD: util.c,v 1.18 2004/01/22 16:10:30 beck Exp $ */
/*
* Copyright (c) 1996-2001
@@ -58,6 +58,7 @@
int Debug_Level;
int Use_Rdns;
+in_addr_t Bind_Addr = INADDR_NONE;
void debuglog(int debug_level, const char *fmt, ...);
@@ -258,10 +259,13 @@ get_backchannel_socket(int type, int min_port, int max_port, int start_port,
bzero(&sa, sizeof sa);
sa.sin_family = AF_INET;
- if (sap == NULL)
- sa.sin_addr.s_addr = INADDR_ANY;
+ if (Bind_Addr == INADDR_NONE)
+ if (sap == NULL)
+ sa.sin_addr.s_addr = INADDR_ANY;
+ else
+ sa.sin_addr.s_addr = sap->sin_addr.s_addr;
else
- sa.sin_addr.s_addr = sap->sin_addr.s_addr;
+ sa.sin_addr.s_addr = Bind_Addr;
/*
* Indicate that we want to reuse a port if it happens that the