7d95763414
Split up the ubuntu patch OBS-URL: https://build.opensuse.org/request/show/197181 OBS-URL: https://build.opensuse.org/package/show/network:utilities/netcat-openbsd?expand=0&rev=12
110 lines
3.2 KiB
Diff
110 lines
3.2 KiB
Diff
Index: netcat-openbsd-1.89/netcat.c
|
|
===================================================================
|
|
--- netcat-openbsd-1.89.orig/netcat.c 2008-06-19 16:49:57.000000000 -0400
|
|
+++ netcat-openbsd-1.89/netcat.c 2008-06-19 17:04:22.000000000 -0400
|
|
@@ -73,6 +73,7 @@
|
|
#define UDP_SCAN_TIMEOUT 3 /* Seconds */
|
|
|
|
/* Command Line Options */
|
|
+int Cflag = 0; /* CRLF line-ending */
|
|
int dflag; /* detached, no stdin */
|
|
int iflag; /* Interval Flag */
|
|
int jflag; /* use jumbo frames if we can */
|
|
@@ -136,7 +137,7 @@
|
|
sv = NULL;
|
|
|
|
while ((ch = getopt(argc, argv,
|
|
- "46Ddhi:jklnP:p:rSs:tT:Uuvw:X:x:z")) != -1) {
|
|
+ "46Ddhi:jklnP:p:rSs:tT:Uuvw:X:x:zC")) != -1) {
|
|
switch (ch) {
|
|
case '4':
|
|
family = AF_INET;
|
|
@@ -226,6 +227,9 @@
|
|
case 'T':
|
|
Tflag = parse_iptos(optarg);
|
|
break;
|
|
+ case 'C':
|
|
+ Cflag = 1;
|
|
+ break;
|
|
default:
|
|
usage(1);
|
|
}
|
|
@@ -738,8 +742,16 @@
|
|
else if (n == 0) {
|
|
goto shutdown_wr;
|
|
} else {
|
|
- if (atomicio(vwrite, nfd, buf, n) != n)
|
|
- return;
|
|
+ if ((Cflag) && (buf[n-1]=='\n')) {
|
|
+ if (atomicio(vwrite, nfd, buf, n-1) != (n-1))
|
|
+ return;
|
|
+ if (atomicio(vwrite, nfd, "\r\n", 2) != 2)
|
|
+ return;
|
|
+ }
|
|
+ else {
|
|
+ if (atomicio(vwrite, nfd, buf, n) != n)
|
|
+ return;
|
|
+ }
|
|
}
|
|
}
|
|
else if (pfd[1].revents & POLLHUP) {
|
|
@@ -944,6 +956,7 @@
|
|
#endif
|
|
" \t-s addr\t Local source address\n\
|
|
\t-T ToS\t Set IP Type of Service\n\
|
|
+ \t-C Send CRLF as line-ending\n\
|
|
\t-t Answer TELNET negotiation\n\
|
|
\t-U Use UNIX domain socket\n\
|
|
\t-u UDP mode\n\
|
|
@@ -959,7 +972,7 @@
|
|
void
|
|
usage(int ret)
|
|
{
|
|
- fprintf(stderr, "usage: nc [-46DdhklnrStUuvz] [-i interval] [-P proxy_username] [-p source_port]\n");
|
|
+ fprintf(stderr, "usage: nc [-46DdhklnrStUuvzC] [-i interval] [-P proxy_username] [-p source_port]\n");
|
|
fprintf(stderr, "\t [-s source_ip_address] [-T ToS] [-w timeout] [-X proxy_protocol]\n");
|
|
fprintf(stderr, "\t [-x proxy_address[:port]] [hostname] [port[s]]\n");
|
|
if (ret)
|
|
Index: netcat-openbsd-1.89/nc.1
|
|
===================================================================
|
|
--- netcat-openbsd-1.89.orig/nc.1 2008-06-19 16:49:39.000000000 -0400
|
|
+++ netcat-openbsd-1.89/nc.1 2008-06-19 16:54:36.000000000 -0400
|
|
@@ -34,7 +34,7 @@
|
|
.Sh SYNOPSIS
|
|
.Nm nc
|
|
.Bk -words
|
|
-.Op Fl 46DdhklnrStUuvz
|
|
+.Op Fl 46DdhklnrStUuvzC
|
|
.Op Fl i Ar interval
|
|
.Op Fl P Ar proxy_username
|
|
.Op Fl p Ar source_port
|
|
@@ -140,6 +140,10 @@
|
|
It is an error to use this option in conjunction with the
|
|
.Fl l
|
|
option.
|
|
+.It Fl q
|
|
+after EOF on stdin, wait the specified number of seconds and then quit. If
|
|
+.Ar seconds
|
|
+is negative, wait forever.
|
|
.It Fl r
|
|
Specifies that source and/or destination ports should be chosen randomly
|
|
instead of sequentially within a range or in the order that the system
|
|
@@ -159,6 +163,8 @@
|
|
.Dq reliability ,
|
|
or an 8-bit hexadecimal value preceded by
|
|
.Dq 0x .
|
|
+.It Fl C
|
|
+Send CRLF as line-ending
|
|
.It Fl t
|
|
Causes
|
|
.Nm
|
|
@@ -317,7 +323,7 @@
|
|
of requests required by the server.
|
|
As another example, an email may be submitted to an SMTP server using:
|
|
.Bd -literal -offset indent
|
|
-$ nc localhost 25 \*(Lt\*(Lt EOF
|
|
+$ nc [-C] localhost 25 \*(Lt\*(Lt EOF
|
|
HELO host.example.com
|
|
MAIL FROM:\*(Ltuser@host.example.com\*(Gt
|
|
RCPT TO:\*(Ltuser2@host.example.com\*(Gt
|