[packages/rpm] - pattern_Release cannot be overriden, change it in main macro file

Jeffrey Johnson n3npq at me.com
Fri Sep 14 20:16:52 CEST 2012


On Sep 14, 2012, at 8:31 AM, Elan Ruusamäe wrote:

> On 14.09.2012 15:18, baggins wrote:
>> @@ -0,0 +1,11 @@
>> +--- rpm-5.4.10/macros/macros.in~	2012-09-12 13:52:19.305575500 +0200
>> ++++ rpm-5.4.10/macros/macros.in	2012-09-14 14:15:34.115044785 +0200
>> +@@ -778,7 +778,7 @@
>> + %pattern_Name		^[A-Za-z0-9][A-Za-z0-9+._-]*$
>> + %pattern_Epoch		^[0-9]+$
>> + %pattern_Version	^[A-Za-z0-9+._~]+$
>> +-%pattern_Release	^[A-Za-z0-9+._]+$
>> ++%pattern_Release	^[A-Za-z0-9+._@{}%]+$
>> + %pattern_Disttag	^[A-Za-z0-9]+$
>> + %pattern_Repotag	^[A-Za-z0-9]+$
>> + %pattern_Distepoch	^[A-Za-z0-9.]+$
> 
> i'm wondering, are these patterns locale insensitive?
> 

The specific answer is likely not locale insensitive, because PCRE is locale sensitive.

The patterns are to catch malicious odd characters in patterns that script kiddies blindly
extract from packages directly into scripts.

Meanwhile the *.spec is in the C locale (and all the usual localizations -- while permitted --
are ignored).

Of course there is noting stopping anyone from littering *.spec files with any
octets they wish, and the usual
	Sh*t happens.
will ensue,

> i hope they are, otherwise under LC_ALL=et_EE letters 'tuv' won't be matched
> 

*shrug*

Running rpmbuild in anything other than the C locale has no known benefit or usage case.

73 de Jeff



More information about the pld-devel-en mailing list