bsd.port.mk FETCH_ARGS defaults, why "-A" ?

Michael Gmelin freebsd at grem.de
Sat Dec 28 01:05:34 UTC 2013


On Sat, 28 Dec 2013 01:56:22 +0100
Baptiste Daroussin <bapt at FreeBSD.org> wrote:

> On Sat, Dec 28, 2013 at 01:52:45AM +0100, John Marino wrote:
> > On 12/28/2013 01:49, Dimitry Andric wrote:
> > > On 28 Dec 2013, at 01:12, John Marino <freebsd.contact at marino.st>
> > > wrote:
> > >> For months I've been getting a lot of fetch failures in ports
> > >> that I couldn't reproduce outside of them.  It appears it is
> > >> caused by the default "-A" passed to fetch.
> > >>
> > >> For example, /usr/ports/emulators/javatari will fail with "make
> > >> fetch" but it will succeed with with "make fetch FETCH_ARGS=-Fpr"
> > >>
> > >> I'd like to understand why "-A" is the default.  Clearly many
> > >> distfiles could be retrieved that aren't, so I'd like to know
> > >> what -A is saving us from, and why that would be worse than the
> > >> current situation?
> > > 
> > > Crappy download sites that redirect you to ad pages, malware
> > > domains, or worse?
> > > 
> > 
> > And?
> > The checksum won't match, and the next site in the MASTER_SITES list
> > will be checked, right?  What is the downside of this redirect?
> > Keep in mind that the site was once "approved" by the port
> > maintainer, it's not some random URL stuck in a wiki.
> 
> That's to avoid infinite loop on redirection
> 
> bapt

libfetch allows a maximum um five redirects and the -A flag is
implemented in terms of limiting this to one:

http.c:
...
/* Maximum number of redirects to follow */
#define MAX_REDIRECT 5
...
  /* if the A flag is set, we only get one try */
  n = noredirect ? 1 : MAX_REDIRECT;
  i = 0;
...

-- 
Michael Gmelin


More information about the freebsd-ports mailing list