Your message dated Sun, 29 Apr 2012 16:32:57 +0000
with message-id <[email protected]>
and subject line Bug#618698: fixed in proxytunnel 1.9.0-4
has caused the Debian Bug report #618698,
regarding add workaround for Apache bug 29744 when tunneling through HTTPS
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
618698: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=618698
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: proxytunnel
Version: 1.9.0-3jim
Severity: wishlist
Tags: patch

Hi,

Based on the directions at 
  http://dag.wieers.com/howto/ssh-http-tunneling/
I'm using proxytunnel to connect to an Apache server and then CONNECT
to my destination host.  A local firewall blocks this when
unencrypted, but allows SSL traffic through.  Thus, I want to use
proxytunnel's -e option.

However, as mentioned on that page:

   Tunneling to HTTPS
   proxytunnel has support for SSL tunneling by using the -e
   option. Unfortunately we discovered a bug in Apache that causes
   CONNECT (mod_proxy) to fail when SSL is being enabled. You can find
   more information in Apache's bugzilla at:
   http://issues.apache.org/bugzilla/show_bug.cgi?id=29744

That bug has been open and debated for over 7 years.  It's much easier
for me to workaround this bug in proxytunnel instead -- proxytunnel
just needs to stop using SSL as soon as the CONNECT string is sent.
Please consider the attached patch which adds this feature through a
new --buggy-encrypt-proxy (-B) option.

-jim


-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (250, 'testing'), (200, 'stable'), (50, 'unstable'), (1, 
'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.37-020637rc7-generic (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages proxytunnel depends on:
ii  libc6                         2.11.2-7   Embedded GNU C Library: Shared lib
ii  libgnutls26                   2.8.6-1    the GNU TLS library - runtime libr
ii  libmhash2                     0.9.9.9-1  Library for cryptographic hashing 

proxytunnel recommends no packages.

Versions of packages proxytunnel suggests:
ii  ssh                           1:5.5p1-5  secure shell client and server (me

-- no debconf information
diff -urN proxytunnel-old//cmdline.c proxytunnel-1.9.0//cmdline.c
--- proxytunnel-old//cmdline.c	2008-03-03 17:06:28.000000000 -0500
+++ proxytunnel-1.9.0//cmdline.c	2011-03-15 16:00:24.000000000 -0400
@@ -58,6 +58,7 @@
 #ifdef USE_SSL
 " -e, --encrypt             SSL encrypt data between local proxy and destination\n"
 " -E, --encrypt-proxy       SSL encrypt data between client and local proxy\n"
+" -B, --buggy-encrypt-proxy Like --encrypt-proxy, but stop using SSL after CONNECT\n"
 " -X, --encrypt-remproxy    Encrypt between 1st and 2nd proxy using SSL\n"
 #endif
 "\n"
@@ -130,6 +131,7 @@
 	args_info->domain_given = 0;
 	args_info->encrypt_given = 0;
 	args_info->encryptproxy_given = 0;
+	args_info->buggyencryptproxy_given = 0;
 	args_info->encryptremproxy_given = 0;
 	args_info->proctitle_given = 0;
 
@@ -155,6 +157,7 @@
 	args_info->standalone_arg = 0; \
 	args_info->encrypt_flag = 0; \
 	args_info->encryptproxy_flag = 0; \
+	args_info->buggyencryptproxy_flag = 0; \
 	args_info->encryptremproxy_flag = 0; \
 	args_info->proctitle_arg = NULL; \
 } 
@@ -197,13 +200,14 @@
 			{ "quiet",			0, NULL, 'q' },
 			{ "encrypt",		0, NULL, 'e' },
 			{ "encrypt-proxy",	0, NULL, 'E' },
+			{ "buggy-encrypt-proxy",	0, NULL, 'B' },
 			{ "encrypt-remproxy",0,NULL, 'X' },
 			{ NULL,				0, NULL, 0 }
 		};
 
-		c = getopt_long (argc, argv, "hVia:u:s:t:F:p:P:r:R:d:H:x:nvNeEXq", long_options, &option_index);
+		c = getopt_long (argc, argv, "hVia:u:s:t:F:p:P:r:R:d:H:x:nvNeEBXq", long_options, &option_index);
 #else
-		c = getopt( argc, argv, "hVia:u:s:t:F:p:P:r:R:d:H:x:nvNeEXq" );
+		c = getopt( argc, argv, "hVia:u:s:t:F:p:P:r:R:d:H:x:nvNeEBXq" );
 #endif
 
 		if (c == -1)
@@ -227,6 +231,12 @@
 				if( args_info->verbose_flag )
 					message("SSL client to proxy enabled\n");
 				break;
+
+			case 'B':	/* Turn on client to proxy SSL encryption, but only until CONNECT */
+				args_info->buggyencryptproxy_flag = !(args_info->buggyencryptproxy_flag);
+				if( args_info->verbose_flag )
+					message("SSL client to proxy enabled, only until CONNECT\n");
+				break;
 #endif
 
 			case 'i':	/* Run from inetd. */
diff -urN proxytunnel-old//cmdline.h proxytunnel-1.9.0//cmdline.h
--- proxytunnel-old//cmdline.h	2008-02-22 16:25:02.000000000 -0500
+++ proxytunnel-1.9.0//cmdline.h	2011-03-15 16:00:24.000000000 -0400
@@ -46,6 +46,7 @@
 	int standalone_arg;		/* Turn on stdalone (-a) on port */
 	int encrypt_flag;		/* Turn on SSL encryption (default=off). */
 	int encryptproxy_flag;	/* Turn on client to proxy SSL encryption (def=off).*/
+	int buggyencryptproxy_flag;	/* Turn on client to proxy SSL encryption, only until CONNECT (def=off).*/
 	int encryptremproxy_flag;  /* Turn on local to remote proxy SSL encryption (def=off).*/
 	char *proctitle_arg;	/* Override process title (default=off). */
 	int help_given;			/* Whether help was given. */
@@ -68,6 +69,7 @@
 	int quiet_given;		/* Whether quiet mode was given. */
 	int header_given;		/* Whether extra headers are given */
 	int encrypt_given;		/* Whether encrypt was given */
+	int buggyencryptproxy_given;	/* Whether encrypt was given */
 	int encryptproxy_given;	/* Whether encrypt was given */
 	int encryptremproxy_given;   /* Whether encrypt was given */
 	int proctitle_given;	/* Whether to override process title */
diff -urN proxytunnel-old//debian/changelog proxytunnel-1.9.0//debian/changelog
--- proxytunnel-old//debian/changelog	2011-03-17 13:55:18.000000000 -0400
+++ proxytunnel-1.9.0//debian/changelog	2011-03-15 16:00:24.000000000 -0400
@@ -1,3 +1,11 @@
+proxytunnel (1.9.0-3jim) unstable; urgency=low
+
+  * Add patch to support buggy Apache servers via the
+    --buggy-encrypt-proxy option (for more info on the bug, see
+    https://issues.apache.org/bugzilla/show_bug.cgi?id=29744)
+
+ -- Jim Paris <[email protected]>  Tue, 15 Mar 2011 15:48:19 -0400
+
 proxytunnel (1.9.0-3) unstable; urgency=low
 
   * Provide more useful error messages from GNUTLS
diff -urN proxytunnel-old//http.c proxytunnel-1.9.0//http.c
--- proxytunnel-old//http.c	2008-02-26 18:31:01.000000000 -0500
+++ proxytunnel-1.9.0//http.c	2011-03-15 16:00:24.000000000 -0400
@@ -149,6 +149,11 @@
 //	if( args_info.verbose_flag )
 //		message( "Data received from local proxy:\n");
 
+	if( args_info.buggyencryptproxy_flag && pts->ssl ) {
+		message( "Switching to non-SSL communication\n");
+		pts->ssl = 0;
+	}
+
 	/* Read the first line of the response and analyze it */
 	analyze_HTTP(pts);
 
diff -urN proxytunnel-old//proxytunnel.1 proxytunnel-1.9.0//proxytunnel.1
--- proxytunnel-old//proxytunnel.1	2011-03-17 13:55:18.000000000 -0400
+++ proxytunnel-1.9.0//proxytunnel.1	2011-03-15 16:00:24.000000000 -0400
@@ -61,6 +61,11 @@
 .B \-E, \-\-encrypt-proxy
 Encrypt the data between the client and the local proxy using SSL.
 .TP
+.B \-B, \-\-buggy-encrypt-proxy
+Encrypt the data between the client and the local proxy using SSL,
+but stop using SSL immediately after the CONNECT exchange to workaround
+server bugs.
+.TP
 .B \-X, \-\-encrypt-remproxy
 Encrypt the data between the local proxy and the second-level proxy
 using SSL.
diff -urN proxytunnel-old//proxytunnel.c proxytunnel-1.9.0//proxytunnel.c
--- proxytunnel-old//proxytunnel.c	2011-03-17 13:55:18.000000000 -0400
+++ proxytunnel-1.9.0//proxytunnel.c	2011-03-15 16:00:24.000000000 -0400
@@ -274,7 +274,7 @@
 
 #ifdef USE_SSL
 			/* If --encrypt-proxy is specified, connect to the proxy using SSL */
-			if ( args_info.encryptproxy_flag )
+			if ( args_info.encryptproxy_flag || args_info.buggyencryptproxy_flag )
 				stream_enable_ssl(stunnel);
 #endif /* USE_SSL */
 
@@ -385,9 +385,10 @@
 	/* Only one of -E/-e/-R can be specified. */
 	if ((args_info.encrypt_flag ? 1 : 0) +
 		(args_info.encryptproxy_flag ? 1 : 0) +
+		(args_info.buggyencryptproxy_flag ? 1 : 0) +
 		(args_info.encryptremproxy_flag ? 1 : 0) > 1)
 	{
-		message("Error: only one of --encrypt-proxy, --encrypt-remproxy and --encrypt can be specified for a tunnel\n");
+		message("Error: only one of --encrypt-proxy, --buggy-encrypt-proxy, --encrypt-remproxy and --encrypt can be specified for a tunnel\n");
 		exit( 1 );
 	}
 
@@ -410,7 +411,7 @@
 
 		/* If --encrypt-proxy is specified, connect to the proxy using SSL */
 #ifdef USE_SSL
-		if ( args_info.encryptproxy_flag )
+		if ( args_info.encryptproxy_flag || args_info.buggyencryptproxy_flag )
 			stream_enable_ssl(stunnel);
 #endif /* USE_SSL */
 
diff -urN proxytunnel-old//README proxytunnel-1.9.0//README
--- proxytunnel-old//README	2008-03-03 17:09:28.000000000 -0500
+++ proxytunnel-1.9.0//README	2011-03-15 16:00:24.000000000 -0400
@@ -34,6 +34,7 @@
  -d, --dest=STRING         Destination host:port combination
  -e, --encrypt             SSL encrypt data between local proxy and destination
  -E, --encrypt-proxy       SSL encrypt data between client and local proxy
+ -B, --buggy-encrypt-proxy Like --encrypt-proxy, but stop using SSL after CONNECT
  -X, --encrypt-remproxy    Encrypt between 1st and 2nd proxy using SSL
 
 Additional options for specific features:

--- End Message ---
--- Begin Message ---
Source: proxytunnel
Source-Version: 1.9.0-4

We believe that the bug you reported is fixed in the latest version of
proxytunnel, which is due to be installed in the Debian FTP archive:

proxytunnel_1.9.0-4.debian.tar.gz
  to main/p/proxytunnel/proxytunnel_1.9.0-4.debian.tar.gz
proxytunnel_1.9.0-4.dsc
  to main/p/proxytunnel/proxytunnel_1.9.0-4.dsc
proxytunnel_1.9.0-4_amd64.deb
  to main/p/proxytunnel/proxytunnel_1.9.0-4_amd64.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Julian Gilbey <[email protected]> (supplier of updated proxytunnel package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Sun, 29 Apr 2012 16:38:21 +0100
Source: proxytunnel
Binary: proxytunnel
Architecture: source amd64
Version: 1.9.0-4
Distribution: unstable
Urgency: low
Maintainer: Julian Gilbey <[email protected]>
Changed-By: Julian Gilbey <[email protected]>
Description: 
 proxytunnel - Create tcp tunnels trough HTTPS proxies, for using with SSH
Closes: 614689 618698 664470
Changes: 
 proxytunnel (1.9.0-4) unstable; urgency=low
 .
   * Add patch to support buggy Apache servers via the
     --buggy-encrypt-proxy option (for more info on the bug, see
     https://issues.apache.org/bugzilla/show_bug.cgi?id=29744)
     - with thanks to Jim Paris <[email protected]> for this patch (Closes:
     #618698)
   * Don't install changelog twice (Closes: #614689)
   * Update Standards-Version and debhelper compat level
   * Fix FTBFS on GNU/kFreeBSD. Thanks to Steven Chamberlain.  (Closes:
     #664470)
Checksums-Sha1: 
 e3dcf4121cffccd627d252fb54d049cd7f4be746 1080 proxytunnel_1.9.0-4.dsc
 b386497a78d83787ed886c722b69e1e56b2f8aab 8888 proxytunnel_1.9.0-4.debian.tar.gz
 09e9de1a0cd2356bb6ce8a87f146268c987ed725 32274 proxytunnel_1.9.0-4_amd64.deb
Checksums-Sha256: 
 5a8c960913bff409f42e701176a6082954aa0c6f824203af483c45c00210c805 1080 
proxytunnel_1.9.0-4.dsc
 590cacb1644bdf4446015a30e444882cf8920f18dad0ac60b58a685a3950da53 8888 
proxytunnel_1.9.0-4.debian.tar.gz
 c46685d6af94f3317c0d55fb1ba9438a10e974af0cc98519bd55013c0d13f61c 32274 
proxytunnel_1.9.0-4_amd64.deb
Files: 
 9186baf11dae10a3ef8a0ae35e4ec76a 1080 net optional proxytunnel_1.9.0-4.dsc
 d333ed902c7b7880208b0ec7a53c12cd 8888 net optional 
proxytunnel_1.9.0-4.debian.tar.gz
 639decd487843dceecb14f7767a4472c 32274 net optional 
proxytunnel_1.9.0-4_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAk+daNcACgkQDU59w/205Fn0ygCfVMTjzxznoDK/D1d8aJp9JPXF
izwAoIAIVnp1RGa0whWxHkkdRPN/mGma
=q5d4
-----END PGP SIGNATURE-----



--- End Message ---

Reply via email to