Merge pull request #116 from Duncaen/umask

umask "fixes"
This commit is contained in:
Juan RP 2019-06-15 13:08:32 +02:00 committed by GitHub
commit 82e7d11db8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 1 deletions

View File

@ -69,6 +69,7 @@ pfcexec(struct xbps_handle *xhp, const char *file, const char **argv)
} }
} }
} }
umask(022);
(void)execv(file, __UNCONST(argv)); (void)execv(file, __UNCONST(argv));
_exit(errno); _exit(errno);
/* NOTREACHED */ /* NOTREACHED */

View File

@ -103,12 +103,14 @@ xbps_repo_sync(struct xbps_handle *xhp, const char *uri)
/* /*
* Create repodir in metadir. * Create repodir in metadir.
*/ */
prev_umask = umask(022);
if ((rv = xbps_mkpath(lrepodir, 0755)) == -1) { if ((rv = xbps_mkpath(lrepodir, 0755)) == -1) {
if (errno != EEXIST) { if (errno != EEXIST) {
xbps_set_cb_state(xhp, XBPS_STATE_REPOSYNC_FAIL, xbps_set_cb_state(xhp, XBPS_STATE_REPOSYNC_FAIL,
errno, NULL, "[reposync] failed " errno, NULL, "[reposync] failed "
"to create repodir `%s': %s", lrepodir, "to create repodir `%s': %s", lrepodir,
strerror(errno)); strerror(errno));
umask(prev_umask);
free(lrepodir); free(lrepodir);
return rv; return rv;
} }
@ -117,6 +119,7 @@ xbps_repo_sync(struct xbps_handle *xhp, const char *uri)
xbps_set_cb_state(xhp, XBPS_STATE_REPOSYNC_FAIL, errno, NULL, xbps_set_cb_state(xhp, XBPS_STATE_REPOSYNC_FAIL, errno, NULL,
"[reposync] failed to change dir to repodir `%s': %s", "[reposync] failed to change dir to repodir `%s': %s",
lrepodir, strerror(errno)); lrepodir, strerror(errno));
umask(prev_umask);
free(lrepodir); free(lrepodir);
return -1; return -1;
} }
@ -131,7 +134,6 @@ xbps_repo_sync(struct xbps_handle *xhp, const char *uri)
/* /*
* Download plist index file from repository. * Download plist index file from repository.
*/ */
prev_umask = umask(022);
if ((rv = xbps_fetch_file(xhp, repodata, NULL)) == -1) { if ((rv = xbps_fetch_file(xhp, repodata, NULL)) == -1) {
/* reposync error cb */ /* reposync error cb */
fetchstr = xbps_fetch_error_string(); fetchstr = xbps_fetch_error_string();