a1a075caa2
This is the reason why files >= 2G could not be added to cpio, even on 64-bit architectures. Fwrite was called with a buffer >= 2G, but the return value was truncated to int (this narrowing conversion is probably undefined behavior already; what happens next, though, is that after casting to size_t it assumes a very big numeric value of >= 2^64-2^32). So rpmbuild was failing with an unrelated errno, "cpio: write failed - Bad file descriptor". There are other reasons why this still won't work on 32-bit architectures. For one, rpmbuild mmaps a file before feeding it to cpio, and 32-bit architectures have a very limited ability, if any, to mmap 2G+ files. |
||
---|---|---|
.gear | ||
autodeps | ||
build | ||
doc | ||
lib | ||
po | ||
python | ||
rpmdb | ||
rpmio | ||
scripts | ||
tools | ||
.gitignore | ||
.lclintrc | ||
build.c | ||
build.h | ||
CHANGES | ||
configure.ac | ||
COPYING | ||
CREDITS | ||
debug.h | ||
Doxyfile.in | ||
Doxyheader | ||
gendiff | ||
GROUPS | ||
INSTALL | ||
installplatform | ||
macros.in | ||
Makefile.am | ||
platform.in | ||
README | ||
README.ALT-ru_RU.UTF-8 | ||
rpm2cpio.c | ||
rpm-4_0.spec | ||
rpm-build.buildreq | ||
rpminit | ||
rpminit.1 | ||
rpmpopt.in | ||
rpmqv.c | ||
rpmrc.in | ||
system.h | ||
TODO |
This is RPM, the Red Hat Package Manager. The latest releases are always available at: ftp://ftp.rpm.org/pub/rpm Additional RPM documentation (papers, slides, HOWTOs) can also be found at the same site, as well as http://www.rpm.org. There is a mailing list for discussion of RPM issues, rpm-list@redhat.com. To subscribe, send a message to rpm-list-request@redhat.com with the word "subscribe" in the subject line. RPM was originally written by: Erik Troan <ewt@redhat.com> Marc Ewing <marc@redhat.com> See the CREDITS file for a list of folks who have helped us out tremendously. RPM is Copyright (c) 1998 by Red Hat Software, Inc., and may be distributed under the terms of the GPL and LGPL (see the file COPYING for details).