Subject: [alpine-aports] [PATCH] testing/corkscrew: new aport

From: Matt Dainty <[email-masked]>
Date: Fri, 15 Apr 2016 11:57:36 +0100

http://agroman.net/corkscrew/
Tool for tunneling SSH through HTTP proxies
---
 testing/corkscrew/APKBUILD                        | 65 +++++++++++++++
 testing/corkscrew/corkscrew-2.0-autoconf.patch    | 10 +++
 testing/corkscrew/corkscrew-2.0-from-debian.patch | 44 ++++++++++
 testing/corkscrew/corkscrew-2.0-typo.patch        | 12 +++
 testing/corkscrew/corkscrew.1                     | 97 +++++++++++++++++++++++
 5 files changed, 228 insertions(+)
 create mode 100644 testing/corkscrew/APKBUILD
 create mode 100644 testing/corkscrew/corkscrew-2.0-autoconf.patch
 create mode 100644 testing/corkscrew/corkscrew-2.0-from-debian.patch
 create mode 100644 testing/corkscrew/corkscrew-2.0-typo.patch
 create mode 100644 testing/corkscrew/corkscrew.1

diff --git a/testing/corkscrew/APKBUILD b/testing/corkscrew/APKBUILD
new file mode 100644
index 0000000..6029e62
--- /dev/null
+++ b/testing/corkscrew/APKBUILD
@@ -0,0 +1,65 @@
+# Contributor: Matt Dainty <[email-masked]>
+# Maintainer:
+pkgname=corkscrew
+pkgver=2.0
+pkgrel=0
+pkgdesc="Tool for tunneling SSH through HTTP proxies"
+url="http://agroman.net/corkscrew/"
+arch="all"
+license="GPL"
+depends=""
+makedepends="autoconf automake"
+install=""
+subpackages="$pkgname-doc"
+source="http://agroman.net/$pkgname/$pkgname-$pkgver.tar.gz
+	corkscrew-2.0-from-debian.patch
+	corkscrew-2.0-typo.patch
+	corkscrew-2.0-autoconf.patch
+	corkscrew.1
+	"
+
+_builddir="$srcdir"/$pkgname-$pkgver
+prepare() {
+	local i
+	cd "$_builddir"
+	for i in $source; do
+		case $i in
+		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+		esac
+	done
+	aclocal && autoheader && autoconf && automake --add-missing --force || return 1
+}
+
+build() {
+	cd "$_builddir"
+	./configure \
+		--build=$CBUILD \
+		--host=$CHOST \
+		--prefix=/usr \
+		|| return 1
+	make || return 1
+}
+
+package() {
+	cd "$_builddir"
+	make DESTDIR="$pkgdir" install || return 1
+
+	install -m644 -D "$srcdir"/corkscrew.1 \
+		"$pkgdir"/usr/share/man/man1/corkscrew.1 || return 1
+}
+
+md5sums="35df77e7f0e59c0ec4f80313be52c10a  corkscrew-2.0.tar.gz
+877c4d390dde4af6669f26ead2d4f3d9  corkscrew-2.0-from-debian.patch
+2c8c799949903a166bb08a6747a3563c  corkscrew-2.0-typo.patch
+bd80d0cc791e83734d7521ccc59badb6  corkscrew-2.0-autoconf.patch
+bf041e99c7395e32460c34b3a01c9db1  corkscrew.1"
+sha256sums="0d0fcbb41cba4a81c4ab494459472086f377f9edb78a2e2238ed19b58956b0be  corkscrew-2.0.tar.gz
+6dd9455f3063cab53fd95c416d5706d921d19a050794cf53df7f2f51e5a97511  corkscrew-2.0-from-debian.patch
+94a2137fbfe09b2c417dab251ce98e75ca4bc219c0002eaaeb84236f26361fe5  corkscrew-2.0-typo.patch
+b4fb8a9c40e1902f718a9e2bd03bf43976fe57903f977d20d6e81812f97ac777  corkscrew-2.0-autoconf.patch
+67f442ffccda98b05a1b4b42c9e4064f538467361d36fcca1401398efd3a44b2  corkscrew.1"
+sha512sums="bfea81064601cdf67ba1730b49e3a5f7aa377423edbfb052ff0f6b2776b49e104852b7f126f4668d37541a706313ef37d9b4535126e94bb202db4ac38f693e6f  corkscrew-2.0.tar.gz
+58b8360155aefc636dfed3c1be89ebbcf39b623dacea12d1fdf3c5831f3b6d06c4f8510a3ccc125f24644a0ca27606c10af99e22266fdd7eca5a3677504f88fb  corkscrew-2.0-from-debian.patch
+6a685588231485b3808909d12885ed4265f9dd471bf89774ee7f4603577a866c16b296642f223c5ca91eb75c71c552d3aac249bed451dcdffbdacc19abda309d  corkscrew-2.0-typo.patch
+3ad3ac14717e2f8120bd7415426232e081cdc3a1c46437a54a4e27f7cc3777ecf266cd52a9917a48317dedc5c529363a404d4ff556f20c52bf0c00ee4003e799  corkscrew-2.0-autoconf.patch
+a59c99056ef4c12dec854ab0b571b9778b78c3d429193c1365ef2c1a37edb478e8d7e7948e830b22dfe3fb724e6be0b6176ac541da1fa5a2678a608f2b025e90  corkscrew.1"
diff --git a/testing/corkscrew/corkscrew-2.0-autoconf.patch b/testing/corkscrew/corkscrew-2.0-autoconf.patch
new file mode 100644
index 0000000..1ce6daf
--- /dev/null
+++ b/testing/corkscrew/corkscrew-2.0-autoconf.patch
@@ -0,0 +1,10 @@
+--- corkscrew-2.0/configure.in.orig
++++ corkscrew-2.0/configure.in
+@@ -1,7 +1,6 @@
+ AC_INIT(corkscrew.c)
+ AM_INIT_AUTOMAKE(corkscrew, 2.0)
+ AM_CONFIG_HEADER(config.h:config.in)
+-AM_C_PROTOTYPES
+ 
+ AC_PROG_CC
+ AC_PROG_AWK
diff --git a/testing/corkscrew/corkscrew-2.0-from-debian.patch b/testing/corkscrew/corkscrew-2.0-from-debian.patch
new file mode 100644
index 0000000..fa13434
--- /dev/null
+++ b/testing/corkscrew/corkscrew-2.0-from-debian.patch
@@ -0,0 +1,44 @@
+diff -urNp corkscrew-2.0.orig/corkscrew.c corkscrew-2.0/corkscrew.c
+--- corkscrew-2.0.orig/corkscrew.c	2007-05-19 09:56:05.000000000 +0530
++++ corkscrew-2.0/corkscrew.c	2007-05-19 10:07:00.000000000 +0530
+@@ -176,6 +176,7 @@ char *argv[];
+ #endif
+ 	char *host = NULL, *desthost = NULL, *destport = NULL;
+ 	char *up = NULL;
++	char *tmp = NULL;
+ 	int port, sent, setup, code, csock;
+ 	fd_set rfd, sfd;
+ 	struct timeval tv;
+@@ -262,6 +263,11 @@ char *argv[];
+ 						fprintf(stderr, "Proxy could not open connnection to %s: %s\n", desthost, descr);
+ 						exit(-1);
+ 					}
++					if (tmp = strstr(buffer,"\r\n\r\n"))
++					{
++					    tmp += 4;
++					    write(1, tmp, strlen(tmp));
++					}
+ 				}
+ 			}
+ 			if (FD_ISSET(csock, &sfd) && (sent == 0)) {
+diff -urNp corkscrew-2.0.orig/README corkscrew-2.0/README
+--- corkscrew-2.0.orig/README	2007-05-19 09:56:05.000000000 +0530
++++ corkscrew-2.0/README	2007-05-19 09:56:48.000000000 +0530
+@@ -47,7 +47,7 @@ Setting up Corkscrew with SSH/OpenSSH is
+ the following line to your ~/.ssh/config file will usually do
+ the trick (replace proxy.example.com and 8080 with correct values):
+ 
+-ProxyCommand /usr/local/bin/corkscrew proxy.example.com 8080 %h %p
++ProxyCommand /usr/bin/corkscrew proxy.example.com 8080 %h %p
+ 
+ NOTE: Command line syntax has changed since version 1.5.  Please
+ notice that the proxy port is NOT optional anymore and is required
+@@ -70,7 +70,7 @@ chmod 600 myauth
+ Now you will have to change the ProxyCommand line in your ~/.ssh/config
+ file.  Here's an example :
+ 
+-ProxyCommand /usr/local/bin/corkscrew proxy.work.com 80 %h %p ~/.ssh/myauth
++ProxyCommand /usr/bin/corkscrew proxy.work.com 80 %h %p ~/.ssh/myauth
+ 
+ The proxy authentication feature is very new and has not been tested
+ extensively so your mileage may vary.  If you encounter any problems
diff --git a/testing/corkscrew/corkscrew-2.0-typo.patch b/testing/corkscrew/corkscrew-2.0-typo.patch
new file mode 100644
index 0000000..01e9de7
--- /dev/null
+++ b/testing/corkscrew/corkscrew-2.0-typo.patch
@@ -0,0 +1,12 @@
+diff -urNp corkscrew-2.0.orig/README corkscrew-2.0/README
+--- corkscrew-2.0.orig/README	2007-05-19 10:56:12.000000000 +0530
++++ corkscrew-2.0/README	2007-05-19 10:56:45.000000000 +0530
+@@ -83,7 +83,7 @@ if you could include the following infor
+ 
+ *NOTE: I have had problems using the auth features with Mircosoft Proxy
+  server.  The problems are sporadic, and I believe that they are related
+- to the round-robin setup that I was testing it again.  Your mileage may
++ to the round-robin setup that I was testing it against.  Your mileage may
+  vary.
+ 
+ 
diff --git a/testing/corkscrew/corkscrew.1 b/testing/corkscrew/corkscrew.1
new file mode 100644
index 0000000..1c19c63
--- /dev/null
+++ b/testing/corkscrew/corkscrew.1
@@ -0,0 +1,97 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH CORKSCREW 1 "November 22, 2003"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+corkscrew \- Tunnel TCP connections through HTTP proxies
+.SH SYNOPSIS
+.B corkscrew
+.BR 
+proxy
+.BR 
+proxyport 
+.BR
+targethost
+.BR
+targetport
+.BR
+[ authfile ]
+.br
+.SH DESCRIPTION
+This manual page documents briefly the
+.BR corkscrew
+command.
+This manual page was written for the Debian distribution
+because the original program does not have a manual page.
+
+corkscrew is a simple tool to tunnel TCP connections through an HTTP
+proxy supporting the CONNECT method. It reads stdin and writes to
+stdout during the connection, just like netcat.
+It can be used for instance to connect to an SSH server running on
+a remote 443 port through a strict HTTPS proxy.
+
+
+.SH PARAMETERS
+
+.TP
+.B proxy
+This is the name of the host running the HTTP proxy.
+.TP
+.B proxyport
+This is the port on which to connect on the proxy.
+.TP
+.B target
+This is the host to reach through the proxy.
+.TP
+.B targetport
+This is the port to connect to on the target host.
+
+.SH COMMON USAGE
+
+The common usage of corkscrew is to put the following line in your
+ssh_config:
+
+ProxyCommand corkscrew proxy proxyport %h %p
+
+This will let your ssh connection go through the proxy with the help
+of corkscrew.
+
+.SH AUTH FILE
+
+The auth file is made of one single line containing your username and
+password in the form:
+
+username:password
+
+You should add the path to your auth file in the proxy command
+described above:
+
+ProxyCommand corkscrew proxy proxyport %h %p auth-file
+
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIssh_config\fR\|(5)
+
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+.SH AUTHOR
+corkscrew was written by Pat Padgett <[email-masked]>.
+Thomas Seyrat <[email-masked]> is the debian maintainer for this
+package.  This manual page was written by Laurent Fousse
+<[email-masked]>, for the Debian GNU/Linux system (but may be used
+by others).
-- 
2.7.1

---
Unsubscribe:  [email-masked]
Help:         [email-masked]
---