Package: checkinstall / 1.6.2+git20170426.d24a630-2

Metadata

Package Version Patches format
checkinstall 1.6.2+git20170426.d24a630-2 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
0001 Document changes applied in the debian package.patch | (download)

NLS_SUPPORT | 4 2 + 2 - 0 !
README | 2 1 + 1 - 0 !
2 files changed, 3 insertions(+), 3 deletions(-)

 [patch] document changes applied in the debian package

Some documentation refers to the location of gettext files and
checkinstallrc, which we modify.

0002 Change default configuration.patch | (download)

checkinstallrc-dist | 18 9 + 9 - 0 !
1 file changed, 9 insertions(+), 9 deletions(-)

 [patch] change default configuration


0003 Change the textdomaindir to match debian installatio.patch | (download)

checkinstall.in | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 [patch] change the textdomaindir to match debian installation

===================================================================

0004 Load checkinstallrc from etc.patch | (download)

checkinstall.in | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 [patch] load checkinstallrc from /etc


0007 Drop cases for glibc 2.4.patch | (download)

installwatch/installwatch.c | 31 0 + 31 - 0 !
1 file changed, 31 deletions(-)

 [patch] drop cases for glibc < 2.4

Some functions definitions were dependent on the glibc version. Since
2.7 is in stable, drop everything for < 2.4.

0008 Set file permissions to o g instead of 644.patch | (download)

checkinstall.in | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 [patch] set file permissions to o=g instead of 644

When --reset-uids is passed, match world permissions with group
permissions instead of forcing 644 for everything. This is mainly to
protect against build systems that do not take more restrictive umasks
into account.

0011 fix crash when sizeof mode_t sizeof int.patch | (download)

installwatch/installwatch.c | 6 3 + 3 - 0 !
1 file changed, 3 insertions(+), 3 deletions(-)

 [patch] fix crash when sizeof(mode_t) < sizeof(int)

On Debian GNU/kfreebsd mode_t is uint16_t. According to GCC this gets
promoted to an int:

installwatch.c:3835:11: warning: 'short unsigned int' is promoted to 'int' when passed through '...' [enabled by default]
installwatch.c:3835:11: note: (so you should pass 'int' not 'short unsigned int' to 'va_arg')
installwatch.c:3835:11: note: if this code is reached, the program will abort

and according to "man va_arg" this indeed is documented to lead to
random behavior:

 "If there is no next argnument, or if type is not compatible with the
  type of the actual next argument (as promoted according to the
  default argument promotions), random errors will occur.

This patch simply uses int instead of mode_t and fixes Debian bug
702314 (checkinstall aborts with illegal instruction on kFreeBSD).

0012 add debian cflags.patch | (download)

installwatch/Makefile | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 build with dh clags

This allows proper hardening to be done

0013 fix installcheck tests.patch | (download)

installwatch/Makefile | 4 2 + 2 - 0 !
installwatch/test-installwatch.c | 64 2 + 62 - 0 !
2 files changed, 4 insertions(+), 64 deletions(-)

 fix installcheck tests

There are a bunch of things that need to be fixed in order to get the installcheck tests working again

0014 fix xstat64.patch | (download)

installwatch/installwatch.c | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 checkinstall: segmentation fault when invoking `checkinstall cmake -p cmake_install.cmake`
0015 add renameat2.patch | (download)

installwatch/installwatch.c | 14 14 + 0 - 0 !
1 file changed, 14 insertions(+)

 add renameat2 to installwatch

installwatch is missing support for the newer renameat2 syscall.  This is a
problem because `mv` defaults to using it in newer versions.