Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Oct 2006 20:12:12 GMT
From:      Toomas Aas<toomas.aas@raad.tartu.ee>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   bin/104505: portsnap update may freak out with certain non-standard values of LANG
Message-ID:  <200610172012.k9HKCCVJ026430@www.freebsd.org>
Resent-Message-ID: <200610172020.k9HKKIgq011926@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         104505
>Category:       bin
>Synopsis:       portsnap update may freak out with certain non-standard values of LANG
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Oct 17 20:20:18 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Toomas Aas
>Release:        6.2-PRERELEASE
>Organization:
Tartu City Government
>Environment:
FreeBSD my.machine.name 6.2-PRERELEASE FreeBSD 6.2-PRERELEASE #0: Wed Oct 11 18:36:44 EEST 2006     toomas@my.machine.name:/usr/obj/usr/src/sys/MYKERNEL  i386
>Description:
I generally have LANG set to et_EE.ISO8859-15 in my environment. When I run 'portsnap update', it sometimes aborts with this message:

# portsnap fetch
Looking up portsnap.FreeBSD.org mirrors... 2 mirrors found.
Fetching snapshot tag from portsnap1.FreeBSD.org... done.
Fetching snapshot metadata... done.

Portsnap metadata is correctly signed, but contains
at least one line which appears bogus.
Cowardly refusing to proceed any further.

If I unsetenv LANG and immediately run 'portsnap fetch' again, it succeeds.

I guess the problem has something to do with this check in fetch_metadata_sanity() function of /usr/sbin/portsnap:

if grep -qvE "^[0-9A-Z.]+\|[0-9a-f]{64}$" tINDEX.new; then
	fetch_metadata_freakout
	return 1
fi

Here we see a grep for regex containing range A-Z. The problem is that in Estonian language Z is not at the end of the alphabet but in the middle, so A-Z doesn't cover the entire alphabet.

Maybe something like :alpha: (or even :alnum:) could be used instead?
>How-To-Repeat:
setenv LANG et_EE.ISO8859-15
/usr/sbin/portsnap fetch

(results may vary depending of the actual portsnap metadata at the moment of testing)
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:



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