aboutsummaryrefslogtreecommitdiff
path: root/usr.bin
diff options
context:
space:
mode:
Diffstat (limited to 'usr.bin')
-rw-r--r--usr.bin/whois/Makefile7
-rw-r--r--usr.bin/whois/whois.c8
2 files changed, 11 insertions, 4 deletions
diff --git a/usr.bin/whois/Makefile b/usr.bin/whois/Makefile
index e6ab08f11d328..3b6e7aa4a4146 100644
--- a/usr.bin/whois/Makefile
+++ b/usr.bin/whois/Makefile
@@ -2,4 +2,11 @@
PROG= whois
+.if defined(SOCKS)
+CFLAGS+=-DSOCKS
+CFLAGS+=-Dconnect=Rconnect -Dgetsockname=Rgetsockname -Dlisten=Rlisten \
+ -Daccept=Raccept -Drcmd=Rrcmd -Dbind=Rbind -Dselect=Rselect
+LDADD+= -lsocks
+.endif
+
.include <bsd.prog.mk>
diff --git a/usr.bin/whois/whois.c b/usr.bin/whois/whois.c
index 77d6c50d1664e..ca832ae75fe24 100644
--- a/usr.bin/whois/whois.c
+++ b/usr.bin/whois/whois.c
@@ -63,6 +63,10 @@ main(argc, argv)
int s;
char *host;
+#ifdef SOCKS
+ SOCKSinit(argv[0]);
+#endif
+
host = NICHOST;
while ((ch = getopt(argc, argv, "h:")) != EOF)
switch((char)ch) {
@@ -93,10 +97,6 @@ main(argc, argv)
}
bzero((caddr_t)&sin, sizeof (sin));
sin.sin_family = hp->h_addrtype;
- if (bind(s, (struct sockaddr *)&sin, sizeof(sin)) < 0) {
- perror("whois: bind");
- exit(1);
- }
bcopy(hp->h_addr, (char *)&sin.sin_addr, hp->h_length);
sp = getservbyname("whois", "tcp");
if (sp == NULL) {