Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 9 Oct 2005 11:15:57 +0200
From:      "Raphael H. Becker" <rabe@p-i-n.com>
To:        ports@freebsd.org
Subject:   Re: distfiles / md5 / plain-text via FTP proxy
Message-ID:  <20051009111557.A89611@p-i-n.com>
In-Reply-To: <20050928140328.GB99553@xor.obsecurity.org>; from kris@obsecurity.org on Wed, Sep 28, 2005 at 10:03:28AM -0400
References:  <20050928002013.11564.qmail@exxodus.fedaykin.here> <20050928053534.GB15395@local.net> <20050928100141.57485.qmail@exxodus.fedaykin.here> <20050928142537.O33058@p-i-n.com> <20050928144524.P33058@p-i-n.com> <20050928140328.GB99553@xor.obsecurity.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Sep 28, 2005 at 10:03:28AM -0400, Kris Kennaway wrote:
> On Wed, Sep 28, 2005 at 02:45:24PM +0200, Raphael H. Becker wrote:
> > Apropos "md5-secured" distfiles:
> > 
> > If you use a proxy (e.g.squid) for ftp, it might use FTP-ASCII for
> > transfer, not BINARY, which might result in a inband conversation from
> > CRLF to LF in FTP for ASCII-files (.txt, .c, ... )
> > 
> > Some ports with distfile patches as textfiles or plain c-Sources 
> > (GhostScript, squid(?), ... ) complain about bad md5-sums.
> > 
> > Deleting this files and refetching without proxy 
> > (ftp_proxy="" portupgrade -rF foo/bar) is a manual workaround for this.
> > 
> > In some environments you don't have ftp without a (squid)proxy.
> > 
> > Any idea or better workaround?
> 
> I'd like to know one too.  This is arguably a bug in squid, since it
> should not be rewriting content without me telling it to.

No workaround, but how to repeat:

$ ftp_proxy="" fetch -o gdevlx50.c_noproxy \
        "ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ghostscript/gdevlx50.c"

$ ftp_proxy="http://localhost:3128/" fetch -o gdevlx50.c_proxy \
        "ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ghostscript/gdevlx50.c" 

$ wc -lc gdevlx50.c_*                                                              
    2732   99428 gdevlx50.c_noproxy
    2732  102160 gdevlx50.c_proxy

$ file gdevlx50.c_*
gdevlx50.c_noproxy: ASCII C program text
gdevlx50.c_proxy:   ASCII C program text, with CRLF line terminators

$ md5 gdevlx50.c_*
MD5 (gdevlx50.c_noproxy) = 081e355c866316a56fbbff5b59f2b7cf
MD5 (gdevlx50.c_proxy) = 06b0518d1d0aeedd61d4c7d27921cf62

$ grep gdevlx50.c /usr/ports/print/ghostscript-gnu/distinfo  
MD5 (ghostscript/gdevlx50.c) = 081e355c866316a56fbbff5b59f2b7cf
SIZE (ghostscript/gdevlx50.c) = 99428

All plain text distfiles fetched using ftp through squid are affected!


My personal workaround for this is a MASTER_SITE_OVERRIDE in
/etc/make.conf with a http-Server:
MASTER_SITE_OVERRIDE?=http://ftp.plusline.de/FreeBSD/distfiles/${DIST_SUBDIR}/

$ http_proxy="http://localhost:3128/" fetch -o gdevlx50.c_proxy_http \
        "http://ftp.plusline.de/FreeBSD/distfiles/ghostscript/gdevlx50.c"

$ md5 gdevlx50.c_*
MD5 (gdevlx50.c_noproxy) = 081e355c866316a56fbbff5b59f2b7cf
MD5 (gdevlx50.c_proxy) = 06b0518d1d0aeedd61d4c7d27921cf62
MD5 (gdevlx50.c_proxy_http) = 081e355c866316a56fbbff5b59f2b7cf


Regards
Raphael Becker



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051009111557.A89611>