bin/104505: portsnap update may freak out with certain non-standard values of LANG

Toomas Aas toomas.aas at raad.tartu.ee
Tue Oct 17 13:20:19 PDT 2006


>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 at 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:


More information about the freebsd-bugs mailing list