Compare commits
8 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bde66d56e4 | ||
|
|
5f71c16a5f | ||
|
|
32714148a6 | ||
|
|
38d624cc02 | ||
|
|
a4d2f420b8 | ||
|
|
be66241d4a | ||
|
|
a2bb33d3ff | ||
|
|
2c689830eb |
8 changed files with 241 additions and 21 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
corkscrew-2.0.tar.gz
|
||||
21
Makefile
21
Makefile
|
|
@ -1,21 +0,0 @@
|
|||
# Makefile for source rpm: corkscrew
|
||||
# $Id$
|
||||
NAME := corkscrew
|
||||
SPECFILE = $(firstword $(wildcard *.spec))
|
||||
|
||||
define find-makefile-common
|
||||
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||
|
||||
ifeq ($(MAKEFILE_COMMON),)
|
||||
# attept a checkout
|
||||
define checkout-makefile-common
|
||||
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||
endif
|
||||
|
||||
include $(MAKEFILE_COMMON)
|
||||
44
corkscrew-2.0-from-debian.patch
Normal file
44
corkscrew-2.0-from-debian.patch
Normal file
|
|
@ -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
|
||||
12
corkscrew-2.0-typo.patch
Normal file
12
corkscrew-2.0-typo.patch
Normal file
|
|
@ -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.
|
||||
|
||||
|
||||
97
corkscrew.1
Normal file
97
corkscrew.1
Normal file
|
|
@ -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 <agroman@agroman.net>.
|
||||
Thomas Seyrat <tomasera@debian.org> is the debian maintainer for this
|
||||
package. This manual page was written by Laurent Fousse
|
||||
<laurent@komite.net>, for the Debian GNU/Linux system (but may be used
|
||||
by others).
|
||||
86
corkscrew.spec
Normal file
86
corkscrew.spec
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
Summary: Tool for tunneling SSH through HTTP proxies
|
||||
Name: corkscrew
|
||||
Version: 2.0
|
||||
Release: 8%{?dist}
|
||||
License: GPLv2
|
||||
Group: Applications/Internet
|
||||
URL: http://www.agroman.net/corkscrew/
|
||||
Source0: http://www.agroman.net/corkscrew/%{name}-%{version}.tar.gz
|
||||
Source1: %{name}.1
|
||||
|
||||
Patch0: %{name}-%{version}-from-debian.patch
|
||||
Patch1: %{name}-%{version}-typo.patch
|
||||
|
||||
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
||||
|
||||
%description
|
||||
Corkscrew is a tool for tunneling SSH through HTTP proxies.
|
||||
|
||||
It has been tested with the following HTTP proxies :
|
||||
* Gauntlet
|
||||
* CacheFlow
|
||||
* JunkBuster
|
||||
* Apache mod_proxy
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
|
||||
%build
|
||||
%configure
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
|
||||
|
||||
make install INSTALL="%{__install} -p" DESTDIR=$RPM_BUILD_ROOT
|
||||
|
||||
# man page
|
||||
install -p -m644 %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc AUTHORS
|
||||
%doc ChangeLog
|
||||
%doc COPYING
|
||||
%doc README
|
||||
%doc TODO
|
||||
%{_bindir}/%{name}
|
||||
%{_mandir}/man1/%{name}.1.gz
|
||||
|
||||
%changelog
|
||||
* Sat Feb 09 2008 Debarshi Ray <rishi@fedoraproject.org> - 2.0-8
|
||||
- Rebuilding with gcc-4.3 in Rawhide.
|
||||
|
||||
* Fri Nov 16 2007 Debarshi Ray <rishi@fedoraproject.org> - 2.0-7
|
||||
- Fixed the value of Release according to Fedora dist tag guidelines.
|
||||
- Preserved timestamps using 'install -p'.
|
||||
|
||||
* Fri Aug 03 2007 Debarshi Ray <rishi@fedoraproject.org> - 2.0-6
|
||||
- Moved the online manual page from Patch0 to Source1.
|
||||
|
||||
* Fri Aug 03 2007 Debarshi Ray <rishi@fedoraproject.org> - 2.0-5
|
||||
- Changed value of License according to Fedora licensing guidelines.
|
||||
|
||||
* Sun Jun 10 2007 Debarshi Ray <rishi@fedoraproject.org> - 2.0-4
|
||||
- Removed 'export CC=gcc' from the build stanza.
|
||||
|
||||
* Wed Jun 06 2007 Debarshi Ray <rishi@fedoraproject.org> - 2.0-3
|
||||
- Removed '[ -d $RPM_BUILD_ROOT ]' from the install stanza.
|
||||
- Changed value of BuildRoot as per recommendations in Fedora packaging
|
||||
guidelines.
|
||||
|
||||
* Sat May 19 2007 Debarshi Ray <rishi@fedoraproject.org> - 2.0-2
|
||||
- Addressed warnings generated by rpmlint, and changed Source0 into a URL.
|
||||
- Added AUTHORS, ChangeLog, COPYING and TODO in the list of documentation
|
||||
files.
|
||||
- Added online manual page and patches to README and corkscrew.c from Debian.
|
||||
- Fixed a typo in README.
|
||||
|
||||
* Sat May 12 2007 Debarshi Ray <rishi@fedoraproject.org> - 2.0-1
|
||||
- Initial build.
|
||||
1
sources
1
sources
|
|
@ -0,0 +1 @@
|
|||
35df77e7f0e59c0ec4f80313be52c10a corkscrew-2.0.tar.gz
|
||||
Loading…
Add table
Add a link
Reference in a new issue