-diff -Naur openssh-3.5p1/clientloop.c openssh-3.5p1-p/clientloop.c
---- openssh-3.5p1/clientloop.c Wed Sep 4 08:32:13 2002
-+++ openssh-3.5p1-p/clientloop.c Tue Nov 5 15:46:26 2002
-@@ -96,6 +96,9 @@
+--- openssh-4.0p1/clientloop.c.orig 2005-03-01 11:24:33.000000000 +0100
++++ openssh-4.0p1/clientloop.c 2005-03-10 15:10:05.000000000 +0100
+@@ -104,6 +104,9 @@
*/
extern char *host;
/*
* Flag to indicate that we have received a window change signal which has
* not yet been processed. This will cause a message indicating the new
-@@ -892,6 +895,10 @@
- signal(SIGINT, signal_handler);
- signal(SIGQUIT, signal_handler);
- signal(SIGTERM, signal_handler);
-+
+@@ -1236,6 +1239,8 @@
+ signal(SIGQUIT, signal_handler);
+ if (signal(SIGTERM, SIG_IGN) != SIG_IGN)
+ signal(SIGTERM, signal_handler);
+ if (enable_sigpipe)
+ signal(SIGPIPE, signal_handler);
-+
+ signal(SIGWINCH, window_change_handler);
+
if (have_pty)
- signal(SIGWINCH, window_change_handler);
+diff -urN openssh-3.9p1.org/ssh.0 openssh-3.9p1/ssh.0
+--- openssh-3.9p1.org/ssh.0 2004-08-17 19:03:29.327565840 +0200
++++ openssh-3.9p1/ssh.0 2004-08-17 19:03:41.809668272 +0200
+@@ -235,6 +235,8 @@
+ that enable them to authenticate using the identities loaded into
+ the agent.
-diff -Naur openssh-3.5p1/ssh.1 openssh-3.5p1-p/ssh.1
---- openssh-3.5p1/ssh.1 Mon Sep 30 04:00:56 2002
-+++ openssh-3.5p1-p/ssh.1 Tue Nov 5 15:51:54 2002
-@@ -48,7 +48,7 @@
- .Op Ar command
- .Pp
++ -B Enable SIGPIPE processing.
++
+ -a Disables forwarding of the authentication agent connection.
+
+ -b bind_address
+--- openssh-5.6p1/ssh.1~ 2010-08-24 14:05:48.000000000 +0300
++++ openssh-5.6p1/ssh.1 2010-08-24 14:06:57.879253682 +0300
+@@ -44,7 +44,7 @@
+ .Sh SYNOPSIS
.Nm ssh
--.Op Fl afgknqstvxACNTX1246
-+.Op Fl afgknqstvxABCNTX1246
+ .Bk -words
+-.Op Fl 1246AaCfgKkMNnqsTtVvXxYy
++.Op Fl 1246AaBCfgKkMNnqsTtVvXxYy
.Op Fl b Ar bind_address
.Op Fl c Ar cipher_spec
- .Op Fl e Ar escape_char
-@@ -412,6 +412,9 @@
- .It Fl b Ar bind_address
- Specify the interface to transmit from on machines with multiple
- interfaces or aliased addresses.
+ .Op Fl D Oo Ar bind_address : Oc Ns Ar port
+@@ -425,6 +425,10 @@
+ on the local machine as the source address
+ of the connection.
+ Only useful on systems with more than one address.
+.It Fl B
+Enables processing of SIGPIPE. Useful when using ssh output as input for
-+another process, for example in a shell script.
- .It Fl c Ar blowfish|3des|des
- Selects the cipher to use for encrypting the session.
- .Ar 3des
-diff -Naur openssh-3.5p1/ssh.c openssh-3.5p1-p/ssh.c
---- openssh-3.5p1/ssh.c Thu Sep 19 04:05:04 2002
-+++ openssh-3.5p1-p/ssh.c Tue Nov 5 15:44:57 2002
-@@ -143,6 +143,9 @@
++another process, for example in a shell script. Be careful - it may break
++port/X11 forwarding when used.
+ .It Fl C
+ Requests compression of all data (including stdin, stdout, stderr, and
+ data for forwarded X11 and TCP/IP connections).
+--- openssh-4.0p1/ssh.c.orig 2005-03-02 02:04:33.000000000 +0100
++++ openssh-4.0p1/ssh.c 2005-03-10 15:11:10.000000000 +0100
+@@ -135,6 +135,9 @@
/* Should we execute a command or invoke a subsystem? */
int subsystem_flag = 0;
/* # of replies received for global requests */
static int client_global_request_id = 0;
-@@ -161,6 +164,7 @@
- fprintf(stderr, " -F config Config file (default: ~/%s).\n",
- _PATH_SSH_USER_CONFFILE);
- fprintf(stderr, " -A Enable authentication agent forwarding.\n");
-+ fprintf(stderr, " -B Enable SIGPIPE processing.\n");
- fprintf(stderr, " -a Disable authentication agent forwarding (default).\n");
- #ifdef AFS
- fprintf(stderr, " -k Disable Kerberos ticket and AFS token forwarding.\n");
-@@ -275,7 +279,7 @@
+@@ -157,7 +160,7 @@
+ usage(void)
+ {
+ fprintf(stderr,
+-"usage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]\n"
++"usage: ssh [-1246AaBCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]\n"
+ " [-D [bind_address:]port] [-e escape_char] [-F configfile]\n"
+ " [-i identity_file] [-L [bind_address:]port:host:hostport]\n"
+ " [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]\n"
+@@ -275,7 +275,7 @@
- again:
- while ((opt = getopt(ac, av,
-- "1246ab:c:e:fgi:kl:m:no:p:qstvxACD:F:I:L:NPR:TVX")) != -1) {
-+ "1246ab:c:e:fgi:kl:m:no:p:qstvxABCD:F:I:L:NPR:TVX")) != -1) {
+ again:
+ while ((opt = getopt(ac, av, "1246ab:c:e:fgi:kl:m:no:p:qstvx"
+- "ACD:F:I:KL:MNO:PR:S:TVw:W:XYy")) != -1) {
++ "ABCD:F:I:KL:MNO:PR:S:TVw:W:XYy")) != -1) {
switch (opt) {
case '1':
options.protocol = SSH_PROTO_1;
-@@ -314,6 +318,9 @@
+@@ -291,6 +294,9 @@
case 'A':
options.forward_agent = 1;
break;
+ case 'B':
+ enable_sigpipe = 1;
+ break;
- #ifdef AFS
case 'k':
- options.kerberos_tgt_passing = 0;
+ options.gss_deleg_creds = 0;
+ break;