Use a sane umask(2) before unpacking package files.
See https://github.com/voidlinux/void-packages/issues/835 for more information.
This commit is contained in:
parent
b23855f692
commit
91b7b2fd5a
3
NEWS
3
NEWS
@ -1,5 +1,8 @@
|
||||
xbps-0.44 (???):
|
||||
|
||||
* libxbps: use a sane umask(2) while unpacking package files from
|
||||
binary packages (see https://github.com/voidlinux/void-packages/issues/835)
|
||||
|
||||
* xbps-dgraph(8): the -m/--metadata option (default mode) is now properly
|
||||
accepted. Regression introduced in 0.42.
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*-
|
||||
* Copyright (c) 2008-2014 Juan Romero Pardines.
|
||||
* Copyright (c) 2008-2015 Juan Romero Pardines.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@ -502,6 +502,7 @@ xbps_unpack_binary_pkg(struct xbps_handle *xhp, xbps_dictionary_t pkg_repod)
|
||||
const char *pkgver;
|
||||
char *bpkg = NULL;
|
||||
int pkg_fd = -1, rv = 0;
|
||||
mode_t myumask;
|
||||
|
||||
assert(xbps_object_type(pkg_repod) == XBPS_TYPE_DICTIONARY);
|
||||
|
||||
@ -529,6 +530,8 @@ xbps_unpack_binary_pkg(struct xbps_handle *xhp, xbps_dictionary_t pkg_repod)
|
||||
archive_read_support_compression_xz(ar);
|
||||
archive_read_support_format_tar(ar);
|
||||
|
||||
myumask = umask(022);
|
||||
|
||||
pkg_fd = open(bpkg, O_RDONLY|O_CLOEXEC);
|
||||
if (pkg_fd == -1) {
|
||||
rv = errno;
|
||||
@ -594,5 +597,8 @@ out:
|
||||
if (bpkg)
|
||||
free(bpkg);
|
||||
|
||||
/* restore */
|
||||
umask(myumask);
|
||||
|
||||
return rv;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user