diff options
Diffstat (limited to '')
| -rw-r--r-- | src/usr.bin/nc/netcat.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/usr.bin/nc/netcat.c b/src/usr.bin/nc/netcat.c index 4bef71a7ca..a034bbab8c 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.108 2012/07/07 09:36:30 haesbaert Exp $ */ | 1 | /* $OpenBSD: netcat.c,v 1.109 2012/07/07 15:33:02 haesbaert Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2001 Eric Jackson <ericj@monkey.org> | 3 | * Copyright (c) 2001 Eric Jackson <ericj@monkey.org> |
| 4 | * | 4 | * |
| @@ -345,11 +345,17 @@ main(int argc, char *argv[]) | |||
| 345 | if (s < 0) | 345 | if (s < 0) |
| 346 | err(1, NULL); | 346 | err(1, NULL); |
| 347 | /* | 347 | /* |
| 348 | * For UDP, we will use recvfrom() initially | 348 | * For UDP and -k, don't connect the socket, let it |
| 349 | * to wait for a caller, then use the regular | 349 | * receive datagrams from multiple socket pairs. |
| 350 | * functions to talk to the caller. | ||
| 351 | */ | 350 | */ |
| 352 | if (uflag) { | 351 | if (uflag && kflag) |
| 352 | readwrite(s); | ||
| 353 | /* | ||
| 354 | * For UDP and not -k, we will use recvfrom() initially | ||
| 355 | * to wait for a caller, then use the regular functions | ||
| 356 | * to talk to the caller. | ||
| 357 | */ | ||
| 358 | else if (uflag && !kflag) { | ||
| 353 | int rv, plen; | 359 | int rv, plen; |
| 354 | char buf[16384]; | 360 | char buf[16384]; |
| 355 | struct sockaddr_storage z; | 361 | struct sockaddr_storage z; |
