Code

Replacing the system call pread() with lseek()/xread()/lseek() sequence.
[git.git] / git-ls-remote.sh
index 2c0b52122f1c3ee7278912966b1584dadd8b5aea..03b624ef33dd3690a3cf24b4eaab830e5875789b 100755 (executable)
@@ -53,6 +53,10 @@ http://* | https://* | ftp://* )
         if [ -n "$GIT_SSL_NO_VERIFY" ]; then
             curl_extra_args="-k"
         fi
+       if [ -n "$GIT_CURL_FTP_NO_EPSV" -o \
+               "`git-repo-config --bool http.noEPSV`" = true ]; then
+               curl_extra_args="${curl_extra_args} --disable-epsv"
+       fi
        curl -nsf $curl_extra_args --header "Pragma: no-cache" "$peek_repo/info/refs" ||
                echo "failed    slurping"
        ;;
@@ -90,7 +94,7 @@ while read sha1 path
 do
        case "$sha1" in
        failed)
-               die "Failed to find remote refs"
+               exit 1 ;;
        esac
        case "$path" in
        refs/heads/*)