summaryrefslogtreecommitdiff
path: root/net/uucp/patches/patch-ad
diff options
context:
space:
mode:
Diffstat (limited to 'net/uucp/patches/patch-ad')
-rw-r--r--net/uucp/patches/patch-ad150
1 files changed, 150 insertions, 0 deletions
diff --git a/net/uucp/patches/patch-ad b/net/uucp/patches/patch-ad
new file mode 100644
index 00000000000..f2be91bf438
--- /dev/null
+++ b/net/uucp/patches/patch-ad
@@ -0,0 +1,150 @@
+$NetBSD: patch-ad,v 1.1 2006/10/30 03:33:59 jlam Exp $
+
+--- cu.c.orig 2003-05-29 02:08:45.000000000 -0400
++++ cu.c
+@@ -258,6 +258,8 @@ main (argc, argv)
+ enum txonxoffsetting txonxoff = XONXOFF_ON;
+ /* -I: configuration file name. */
+ const char *zconfig = NULL;
++ /* -F/-f: Hard/Soft flow control. */
++ boolean hflow = TRUE;
+ int iopt;
+ pointer puuconf;
+ int iuuconf;
+@@ -295,7 +297,7 @@ main (argc, argv)
+ }
+ }
+
+- while ((iopt = getopt_long (argc, argv, "a:c:deE:hnI:l:op:s:tvx:z:",
++ while ((iopt = getopt_long (argc, argv, "a:c:deE:fFhnI:l:op:qs:tvx:z:",
+ asCulongopts, (int *) NULL)) != EOF)
+ {
+ switch (iopt)
+@@ -322,6 +324,16 @@ main (argc, argv)
+ zCuvar_escape = optarg;
+ break;
+
++ case 'f':
++ /* No h/w flow control. */
++ hflow = FALSE;
++ break;
++
++ case 'F':
++ /* Use h/w flow control. */
++ hflow = TRUE;
++ break;
++
+ case 'h':
+ /* Local echo. */
+ fCulocalecho = TRUE;
+@@ -348,6 +360,11 @@ main (argc, argv)
+ zport = optarg;
+ break;
+
++ case 'q':
++ /* Quiet file transfers */
++ fCuvar_verbose = FALSE;
++ break;
++
+ case 's':
+ /* Speed. */
+ ibaud = strtol (optarg, (char **) NULL, 10);
+@@ -599,6 +616,8 @@ main (argc, argv)
+ sport.uuconf_palloc = NULL;
+ sport.uuconf_u.uuconf_sdirect.uuconf_zdevice = NULL;
+ sport.uuconf_u.uuconf_sdirect.uuconf_ibaud = ibaud;
++ sport.uuconf_u.uuconf_sdirect.uuconf_fcarrier = FALSE;
++ sport.uuconf_u.uuconf_sdirect.uuconf_fhardflow = hflow;
+
+ if (! fconn_init (&sport, &sconn, UUCONF_PORTTYPE_UNKNOWN))
+ ucuabort ();
+@@ -842,11 +861,14 @@ ucuhelp ()
+ printf (" -e: Set even parity\n");
+ printf (" -o: Set odd parity\n");
+ printf (" --parity={odd,even}: Set parity\n");
++ printf (" -f: Use hardware flow control\n");
++ printf (" -F: Turn off hardware flow control (default)\n");
+ printf (" -E,--escape char: Set escape character\n");
+ printf (" -h,--halfduplex: Echo locally\n");
+ printf (" --nostop: Turn off XON/XOFF handling\n");
+ printf (" -t,--mapcr: Map carriage return to carriage return/linefeed\n");
+ printf (" -n,--prompt: Prompt for phone number\n");
++ printf (" -q: Be quiet during file transfers\n");
+ printf (" -d: Set maximum debugging level\n");
+ printf (" -x,--debug debug: Set debugging type\n");
+ #if HAVE_TAYLOR_CONFIG
+@@ -1013,7 +1035,7 @@ fcudo_cmd (puuconf, qconn, bcmd)
+ switch (bcmd)
+ {
+ default:
+- if (! isprint (*zCuvar_escape))
++ if (! isprint (BUCHAR (*zCuvar_escape)))
+ sprintf (abescape, "\\%03o", BUCHAR (*zCuvar_escape));
+ else
+ {
+@@ -1111,7 +1133,7 @@ fcudo_cmd (puuconf, qconn, bcmd)
+ return TRUE;
+
+ case '?':
+- if (! isprint (*zCuvar_escape))
++ if (! isprint (BUCHAR (*zCuvar_escape)))
+ sprintf (abescape, "\\%03o", BUCHAR (*zCuvar_escape));
+ else
+ {
+@@ -1248,7 +1270,7 @@ icuunrecogvar (puuconf, argc, argv, pvar
+ {
+ char abescape[5];
+
+- if (! isprint (*zCuvar_escape))
++ if (! isprint (BUCHAR (*zCuvar_escape)))
+ sprintf (abescape, "\\%03o", BUCHAR (*zCuvar_escape));
+ else
+ {
+@@ -1302,7 +1324,7 @@ uculist_vars ()
+ {
+ int cchar;
+
+- if (! isprint (*z))
++ if (! isprint (BUCHAR (*z)))
+ {
+ sprintf (abchar, "\\%03o", BUCHAR (*z));
+ cchar = 4;
+@@ -1415,7 +1437,7 @@ icuunrecogfn (puuconf, argc, argv, pvar,
+ {
+ char abescape[5];
+
+- if (! isprint (*zCuvar_escape))
++ if (! isprint (BUCHAR (*zCuvar_escape)))
+ sprintf (abescape, "\\%03o", BUCHAR (*zCuvar_escape));
+ else
+ {
+@@ -2049,7 +2071,7 @@ fcusend_buf (qconn, zbufarg, cbufarg)
+ fnl = FALSE;
+ for (i = 0, zget = zbuf; i < csend; i++, zget++)
+ {
+- if (isprint (*zget)
++ if (isprint (BUCHAR (*zget))
+ || *zget == '\t')
+ *zput++ = *zget;
+ else if (*zget == '\n')
+@@ -2082,8 +2104,10 @@ fcusend_buf (qconn, zbufarg, cbufarg)
+ mode. Echo checking of a newline is different from checking
+ of normal characters; when we send a newline we look for
+ *zCuvar_echonl. */
++ /* Don't check for newlines unless "echocheck" is on or "binary mode"
++ is off. From NetBSD PR bin/6834 by Frederick Bruckman. */
+ if ((fCuvar_echocheck && ! fCuvar_binary)
+- || (fnl && *zCuvar_echonl != '\0'))
++ && (fnl && *zCuvar_echonl != '\0'))
+ {
+ long iend;
+
+@@ -2101,7 +2125,7 @@ fcusend_buf (qconn, zbufarg, cbufarg)
+ }
+ else
+ {
+- if (! fCuvar_echocheck || ! isprint (*zget))
++ if (! fCuvar_echocheck || ! isprint (BUCHAR (*zget)))
+ continue;
+ bwant = *zget;
+ }