iIf SOCKS_PROXY is empty, don't use a proxy - holymoly - A tor enabled gopher client written in CHICKEN scheme Err vernunftzentrum.de 70 hgit clone git://vernunftzentrum.de/holymoly.git URL:git://vernunftzentrum.de/holymoly.git vernunftzentrum.de 70 1Log /ckeen/repos/holymoly/log.gph vernunftzentrum.de 70 1Files /ckeen/repos/holymoly/files.gph vernunftzentrum.de 70 1Refs /ckeen/repos/holymoly/refs.gph vernunftzentrum.de 70 1README /ckeen/repos/holymoly/file/README.gph vernunftzentrum.de 70 1LICENSE /ckeen/repos/holymoly/file/LICENSE.gph vernunftzentrum.de 70 i--- Err vernunftzentrum.de 70 1commit 2e0a144bd6c14b237e97a7844cda4d80111544e2 /ckeen/repos/holymoly/commit/2e0a144bd6c14b237e97a7844cda4d80111544e2.gph vernunftzentrum.de 70 1parent 2807d65d10534ac55dbc94a86c70aadea97952e3 /ckeen/repos/holymoly/commit/2807d65d10534ac55dbc94a86c70aadea97952e3.gph vernunftzentrum.de 70 hAuthor: Christian Kellermann URL:mailto:ckeen@pestilenz.org vernunftzentrum.de 70 iDate: Tue, 24 Apr 2018 10:53:29 +0200 Err vernunftzentrum.de 70 i Err vernunftzentrum.de 70 iIf SOCKS_PROXY is empty, don't use a proxy Err vernunftzentrum.de 70 i Err vernunftzentrum.de 70 iDiffstat: Err vernunftzentrum.de 70 i holymoly.scm | 17 ++++++++++------- Err vernunftzentrum.de 70 i Err vernunftzentrum.de 70 i1 file changed, 10 insertions(+), 7 deletions(-) Err vernunftzentrum.de 70 i--- Err vernunftzentrum.de 70 1diff --git a/holymoly.scm b/holymoly.scm /ckeen/repos/holymoly/file/holymoly.scm.gph vernunftzentrum.de 70 i@@ -33,12 +33,13 @@ Err vernunftzentrum.de 70 i (entry-port e)))) Err vernunftzentrum.de 70 i Err vernunftzentrum.de 70 i (define proxy Err vernunftzentrum.de 70 i- (let* ((conf Err vernunftzentrum.de 70 i- (string-split Err vernunftzentrum.de 70 i- (or Err vernunftzentrum.de 70 i- (get-environment-variable "SOCKS_PROXY") Err vernunftzentrum.de 70 i- "localhost:9050") Err vernunftzentrum.de 70 i- ":")) Err vernunftzentrum.de 70 i+ (and-let* Err vernunftzentrum.de 70 i+ ((proxy-vals (or (get-environment-variable "SOCKS_PROXY") Err vernunftzentrum.de 70 i+ "localhost:9050")) Err vernunftzentrum.de 70 i+ (conf Err vernunftzentrum.de 70 i+ (if (not (string-null? proxy-vals)) Err vernunftzentrum.de 70 i+ (string-split proxy-vals ":") Err vernunftzentrum.de 70 i+ #f)) ;; no proxy configured, so abort here Err vernunftzentrum.de 70 i (proxy-host (car conf)) Err vernunftzentrum.de 70 i (proxy-port (string->number (cadr conf)))) Err vernunftzentrum.de 70 i (make-parameter (cons proxy-host proxy-port)))) Err vernunftzentrum.de 70 i@@ -158,7 +159,9 @@ Err vernunftzentrum.de 70 i (define (request-resource server #!optional (resource index) (port gopher-port) until-eof?) Err vernunftzentrum.de 70 i (new-status "Connecting to ~a:~a ~a " server port resource) Err vernunftzentrum.de 70 i (condition-case Err vernunftzentrum.de 70 i- (let-values (((i o _) (connect/socksv5 (car (proxy)) (cdr (proxy)) server port))) Err vernunftzentrum.de 70 i+ (let-values (((i o _) (if proxy Err vernunftzentrum.de 70 i+ (connect/socksv5 (car (proxy)) (cdr (proxy)) server port) Err vernunftzentrum.de 70 i+ (receive (i o) (tcp-connect server port) (values i o #f))))) Err vernunftzentrum.de 70 i (new-status "connected.") Err vernunftzentrum.de 70 i (display (string-append resource (string #\linefeed #\return)) o) Err vernunftzentrum.de 70 i (let ((response (if until-eof? Err vernunftzentrum.de 70 .