On Friday 2024-11-29 22:52, Michal Suchánek wrote:
On Fri, Nov 29, 2024 at 10:31:09PM +0100, Jan Engelhardt wrote:
On Friday 2024-11-29 17:40, John Paul Adrian Glaubitz via openSUSE Factory...:
[ 12s] error: .init_b_cache/compat-usrmerge-tools.rpm: invalid signature tag (unknown) (257) [ 12s] error: .init_b_cache/compat-usrmerge-tools.rpm cannot be installed
Does anyone know what could trigger this particular problem?
Legacy signature stuff..
Sigsize | 257 | int32 | Header+payload size.
+/* Retrofit (and uniqify) signature tags for use by rpmTagGetName() and rpmQuery. */ +/* the md5 sum was broken *twice* on big endian machines */ +/* XXX 2nd underscore prevents tagTable generation */ + RPMTAG_SIG_BASE = HEADER_SIGBASE, /* this is 256 */ + RPMTAG_SIGSIZE = RPMTAG_SIG_BASE+1, /* i */
However, that means that tag 257 is in fact valid, and something got probably miscompiled if a tag is reported as invalid with the numeric value 257.
I seem to remember that RPMTAG_SIGSIZE (257) is obsoleted by RPMTAG_LONGSIGSIZE (270) and would perform the following steps: - use an x86_64 `rpm -qip` and/or `rpm -U --force --ignorearch` command on the loongarch.rpm; see if it exhibits the same problem of rejecting the file. - if so, either figure out why rpmbuild emitted tag 257 in the first place, - or file a bug report upstream that rpm is too eager rejecting "old" files (there is precedent: https://github.com/rpm-software-management/rpm/issues/1762)