aboutsummaryrefslogtreecommitdiff
path: root/usr.bin/finger/net.c
diff options
context:
space:
mode:
authorAndras Olah <olah@FreeBSD.org>1996-03-15 16:41:49 +0000
committerAndras Olah <olah@FreeBSD.org>1996-03-15 16:41:49 +0000
commit03801815df3636750dc04b92fe617d4ac374d76f (patch)
tree9fe9faa95cdc47f0c3c3d2944c0af1992ad1171a /usr.bin/finger/net.c
parentdedc04fe957353897c9bb2bc4bfb1d95f63cec6e (diff)
downloadsrc-03801815df3636750dc04b92fe617d4ac374d76f.tar.gz
src-03801815df3636750dc04b92fe617d4ac374d76f.zip
Allow the user to disable the use of T/TCP by setting the -T option.
This option becomes useless when all TCP stacks are fixed out there.
Notes
Notes: svn path=/head/; revision=14631
Diffstat (limited to 'usr.bin/finger/net.c')
-rw-r--r--usr.bin/finger/net.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/usr.bin/finger/net.c b/usr.bin/finger/net.c
index 697e86264717..4f04c0478411 100644
--- a/usr.bin/finger/net.c
+++ b/usr.bin/finger/net.c
@@ -58,6 +58,7 @@ netfinger(name)
char *name;
{
extern int lflag;
+ extern int Tflag;
register FILE *fp;
register int c, lastc;
struct in_addr defaddr;
@@ -119,6 +120,12 @@ netfinger(name)
iov[msg.msg_iovlen].iov_base = "\r\n";
iov[msg.msg_iovlen++].iov_len = 2;
+ /* -T disables T/TCP: compatibility option to finger broken hosts */
+ if (Tflag && connect(s, (struct sockaddr *)&sin, sizeof (sin))) {
+ perror("finger: connect");
+ return;
+ }
+
if (sendmsg(s, &msg, MSG_EOF) < 0) {
perror("finger: sendmsg");
close(s);