summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/usr.bin/nc/netcat.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/usr.bin/nc/netcat.c b/src/usr.bin/nc/netcat.c
index 8bbd183e62..1b22308d5a 100644
--- a/src/usr.bin/nc/netcat.c
+++ b/src/usr.bin/nc/netcat.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: netcat.c,v 1.150 2016/01/04 02:18:31 bcook Exp $ */ 1/* $OpenBSD: netcat.c,v 1.151 2016/05/28 19:39:16 beck Exp $ */
2/* 2/*
3 * Copyright (c) 2001 Eric Jackson <ericj@monkey.org> 3 * Copyright (c) 2001 Eric Jackson <ericj@monkey.org>
4 * Copyright (c) 2015 Bob Beck. All rights reserved. 4 * Copyright (c) 2015 Bob Beck. All rights reserved.
@@ -133,7 +133,7 @@ int unix_listen(char *);
133void set_common_sockopts(int, int); 133void set_common_sockopts(int, int);
134int map_tos(char *, int *); 134int map_tos(char *, int *);
135int map_tls(char *, int *); 135int map_tls(char *, int *);
136void report_connect(const struct sockaddr *, socklen_t); 136void report_connect(const struct sockaddr *, socklen_t, char *);
137void report_tls(struct tls *tls_ctx, char * host, char *tls_expectname); 137void report_tls(struct tls *tls_ctx, char * host, char *tls_expectname);
138void usage(int); 138void usage(int);
139ssize_t drainbuf(int, unsigned char *, size_t *, struct tls *); 139ssize_t drainbuf(int, unsigned char *, size_t *, struct tls *);
@@ -516,7 +516,7 @@ main(int argc, char *argv[])
516 err(1, "connect"); 516 err(1, "connect");
517 517
518 if (vflag) 518 if (vflag)
519 report_connect((struct sockaddr *)&z, len); 519 report_connect((struct sockaddr *)&z, len, NULL);
520 520
521 readwrite(s, NULL); 521 readwrite(s, NULL);
522 } else { 522 } else {
@@ -528,7 +528,8 @@ main(int argc, char *argv[])
528 err(1, "accept"); 528 err(1, "accept");
529 } 529 }
530 if (vflag) 530 if (vflag)
531 report_connect((struct sockaddr *)&cliaddr, len); 531 report_connect((struct sockaddr *)&cliaddr, len,
532 family == AF_UNIX ? host : NULL);
532 if ((usetls) && 533 if ((usetls) &&
533 (tls_cctx = tls_setup_server(tls_ctx, connfd, host))) 534 (tls_cctx = tls_setup_server(tls_ctx, connfd, host)))
534 readwrite(connfd, tls_cctx); 535 readwrite(connfd, tls_cctx);
@@ -1487,13 +1488,18 @@ report_tls(struct tls * tls_ctx, char * host, char *tls_expectname)
1487} 1488}
1488 1489
1489void 1490void
1490report_connect(const struct sockaddr *sa, socklen_t salen) 1491report_connect(const struct sockaddr *sa, socklen_t salen, char *path)
1491{ 1492{
1492 char remote_host[NI_MAXHOST]; 1493 char remote_host[NI_MAXHOST];
1493 char remote_port[NI_MAXSERV]; 1494 char remote_port[NI_MAXSERV];
1494 int herr; 1495 int herr;
1495 int flags = NI_NUMERICSERV; 1496 int flags = NI_NUMERICSERV;
1496 1497
1498 if (path != NULL) {
1499 fprintf(stderr, "Connection on %s received!\n", path);
1500 return;
1501 }
1502
1497 if (nflag) 1503 if (nflag)
1498 flags |= NI_NUMERICHOST; 1504 flags |= NI_NUMERICHOST;
1499 1505