Skip to content

Commit 33ddfca

Browse files
committed
Merge branch 'js/t5564-socks-use-short-path' into jch
* js/t5564-socks-use-short-path: t5564: use a short path for the SOCKS proxy socket
2 parents cf5abd7 + b33bea2 commit 33ddfca

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

t/t5564-http-proxy.sh

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,20 @@ start_socks() {
5050

5151
# The %30 tests that the correct amount of percent-encoding is applied to the
5252
# proxy string passed to curl.
53+
# Use a short path for the socket to avoid exceeding the 108-character
54+
# Unix domain socket limit when the trash directory path is long.
55+
SOCKS_TMPDIR=$(mktemp -d)
56+
SOCKS_SOCK="$SOCKS_TMPDIR/%30.sock"
57+
5358
test_lazy_prereq SOCKS_PROXY '
5459
test_have_prereq PERL &&
55-
start_socks "$TRASH_DIRECTORY/%30.sock"
60+
start_socks "$SOCKS_SOCK"
5661
'
5762

5863
test_atexit '
5964
test ! -e "$TRASH_DIRECTORY/socks.pid" ||
6065
kill "$(cat "$TRASH_DIRECTORY/socks.pid")"
66+
rm -rf "$SOCKS_TMPDIR"
6167
'
6268

6369
# The below tests morally ought to be gated on a prerequisite that Git is
@@ -70,7 +76,8 @@ old_libcurl_error() {
7076

7177
test_expect_success SOCKS_PROXY 'clone via Unix socket' '
7278
test_when_finished "rm -rf clone" &&
73-
test_config_global http.proxy "socks4://localhost$PWD/%2530.sock" && {
79+
socks_proxy_url="socks4://localhost$(echo "$SOCKS_SOCK" | sed "s/%/%25/g")" &&
80+
test_config_global http.proxy "$socks_proxy_url" && {
7481
{
7582
GIT_TRACE_CURL=$PWD/trace \
7683
GIT_TRACE_CURL_COMPONENTS=socks \

0 commit comments

Comments
 (0)