From 1cf058fe106e01d55e9269503994e2e9b274b07a Mon Sep 17 00:00:00 2001 From: "F. Jason Park" Date: Mon, 14 Feb 2022 02:36:57 -0800 Subject: [PATCH 1/4] Set coding system for SOCKS connections to binary * lisp/net/socks.el (socks-opens-connection): Don't perform conversions when receiving and sending text. * test/lisp/net/socks-tests.el (socks-tests-canned-server-create): Fix bug in process filter to prevent prepared outgoing responses from being implicitly encoded as utf-8. --- lisp/net/socks.el | 1 + test/lisp/net/socks-tests.el | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/lisp/net/socks.el b/lisp/net/socks.el index 8df0773e1d..c15b323c9c 100644 --- a/lisp/net/socks.el +++ b/lisp/net/socks.el @@ -340,6 +340,7 @@ socks-open-connection version) ;; Initialize process and info about the process + (set-process-coding-system proc 'binary 'binary) (set-process-filter proc #'socks-filter) (set-process-query-on-exit-flag proc nil) (process-put proc 'socks t) diff --git a/test/lisp/net/socks-tests.el b/test/lisp/net/socks-tests.el index 461796bdf9..708b964020 100644 --- a/test/lisp/net/socks-tests.el +++ b/test/lisp/net/socks-tests.el @@ -137,13 +137,14 @@ socks-tests-canned-server-create (pats socks-tests-canned-server-patterns) (filt (lambda (proc line) (pcase-let ((`(,pat . ,resp) (pop pats))) + (setq resp (apply #'unibyte-string (append resp nil))) (unless (or (and (vectorp pat) (equal pat (vconcat line))) (string-match-p pat line)) (error "Unknown request: %s" line)) (let ((print-escape-control-characters t)) (message "[%s] <- %s" name (prin1-to-string line)) (message "[%s] -> %s" name (prin1-to-string resp))) - (process-send-string proc (concat resp))))) + (process-send-string proc resp)))) (serv (make-network-process :server 1 :buffer (get-buffer-create name) :filter filt -- 2.34.1