summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/ssh.scm43
1 files changed, 43 insertions, 0 deletions
diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index 5d21eeeb01..7589408e47 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -238,3 +238,46 @@ programs written in GNU Guile interpreter. It is a wrapper to the underlying
libssh library.")
(home-page "https://github.com/artyom-poptsov/libguile-ssh")
(license license:gpl3+)))
+
+(define-public corkscrew
+ (package
+ (name "corkscrew")
+ (version "2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://www.agroman.net/corkscrew/corkscrew-"
+ version ".tar.gz"))
+ (sha256 (base32
+ "1gmhas4va6gd70i2x2mpxpwpgww6413mji29mg282jms3jscn3qd"))))
+ (build-system gnu-build-system)
+ (arguments
+ ;; Replace configure phase as the ./configure script does not link
+ ;; CONFIG_SHELL and SHELL passed as parameters
+ '(#:phases
+ (alist-replace
+ 'configure
+ (lambda* (#:key outputs inputs system target
+ #:allow-other-keys #:rest args)
+ (let* ((configure (assoc-ref %standard-phases 'configure))
+ (prefix (assoc-ref outputs "out"))
+ (bash (which "bash"))
+ ;; Set --build and --host flags as the provided config.guess
+ ;; is not able to detect them
+ (flags `(,(string-append "--prefix=" prefix)
+ ,(string-append "--build=" system)
+ ,(string-append "--host="
+ (or target system)))))
+ (setenv "CONFIG_SHELL" bash)
+ (zero? (apply system* bash
+ (string-append "." "/configure")
+ flags))))
+ %standard-phases)))
+ (home-page "http://www.agroman.net/corkscrew")
+ (synopsis "A tool for tunneling SSH through HTTP proxies")
+ (description
+ "Corkscrew allows creating TCP tunnels through HTTP proxies. WARNING:
+At the moment only plain text authentication is supported, should you require
+to use it with your HTTP proxy. Digest based authentication may be supported
+in future and NTLM based authentication is most likey never be supported.")
+ (license license:gpl2+)))