Exercising the connect fallback needs a host that resolves to a dead address first and a live one next, deterministically and offline. A true SYN black-hole can't be simulated without root, but a refused address can. HTTRACK_DEBUG_RESOLVE="host:ip[,ip...]" pins a host's resolution to a fixed address list (curl --resolve style), reusing the PR1 resolver seam: an addrinfo backend that synthesizes the listed addresses for the named host and delegates other hosts to libc (copying into its own allocations so one freeaddrinfo frees both). It is a debug/test hook, inert unless the env var is set, and IPv6-build-only like the rest of the resolver list. The new local crawl test binds the server to 127.0.0.1 and resolves a host to 127.0.0.2 (refused) then 127.0.0.1: the mirror only succeeds via the fallback. A V6_SUPPORT substitution (mirroring HTTPS_SUPPORT) lets it skip on non-IPv6 builds. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Signed-off-by: Xavier Roche <roche@httrack.com>
HTTrack Website Copier - Development Repository
About
Copy websites to your computer (Offline browser)
HTTrack is an offline browser utility, allowing you to download a World Wide website from the Internet to a local directory, building recursively all directories, getting html, images, and other files from the server to your computer.
HTTrack arranges the original site's relative link-structure. Simply open a page of the "mirrored" website in your browser, and you can browse the site from link to link, as if you were viewing it online.
HTTrack can also update an existing mirrored site, and resume interrupted downloads. HTTrack is fully configurable, and has an integrated help system.
WinHTTrack is the Windows 2000/XP/Vista/Seven release of HTTrack, and WebHTTrack the Linux/Unix/BSD release.
Website
Main Website: http://www.httrack.com/
Compile trunk release
A git checkout ships only the autotools sources, so ./bootstrap (which runs
autoreconf) regenerates configure first; this needs autoconf, automake and
libtool. Released tarballs already include configure, so building from a
tarball skips ./bootstrap.
git clone https://github.com/xroche/httrack.git --recurse-submodules
cd httrack
./bootstrap
./configure --prefix=$HOME/usr && make -j8 && make install
Or use the one-shot wrapper (bootstrap + configure + make), which forwards its
arguments to configure:
./build.sh --prefix=$HOME/usr