1 |
commit: 8029ba6c8920e379ea1f5f71afc297bfd30925b3 |
2 |
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Apr 20 20:31:38 2019 +0000 |
4 |
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Apr 20 20:33:43 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8029ba6c |
7 |
|
8 |
app-misc/uptimed: Attempt to fix privilege escalation in pkg_postinst |
9 |
|
10 |
Bug: https://bugs.gentoo.org/630810 |
11 |
Package-Manager: Portage-2.3.64, Repoman-2.3.12 |
12 |
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org> |
13 |
|
14 |
app-misc/uptimed/uptimed-0.4.0-r1.ebuild | 19 +++++++++++++------ |
15 |
app-misc/uptimed/uptimed-0.4.1.ebuild | 19 +++++++++++++------ |
16 |
2 files changed, 26 insertions(+), 12 deletions(-) |
17 |
|
18 |
diff --git a/app-misc/uptimed/uptimed-0.4.0-r1.ebuild b/app-misc/uptimed/uptimed-0.4.0-r1.ebuild |
19 |
index 2fbdfafd16b..cea4bac4db8 100644 |
20 |
--- a/app-misc/uptimed/uptimed-0.4.0-r1.ebuild |
21 |
+++ b/app-misc/uptimed/uptimed-0.4.0-r1.ebuild |
22 |
@@ -1,9 +1,9 @@ |
23 |
-# Copyright 1999-2017 Gentoo Foundation |
24 |
+# Copyright 1999-2019 Gentoo Authors |
25 |
# Distributed under the terms of the GNU General Public License v2 |
26 |
|
27 |
EAPI=6 |
28 |
|
29 |
-inherit autotools eutils user systemd |
30 |
+inherit autotools ltprune user systemd |
31 |
|
32 |
DESCRIPTION="System uptime record daemon that keeps track of your highest uptimes" |
33 |
HOMEPAGE="https://github.com/rpodgorny/uptimed/" |
34 |
@@ -36,15 +36,22 @@ src_install() { |
35 |
local DOCS=( ChangeLog README.md TODO AUTHORS CREDITS INSTALL.cgi sample-cgi/* ) |
36 |
default |
37 |
prune_libtool_files --all |
38 |
- keepdir /var/spool/uptimed |
39 |
- fowners uptimed:uptimed /var/spool/uptimed |
40 |
+ |
41 |
+ local spooldir="/var/spool/${PN}" |
42 |
+ keepdir ${spooldir} |
43 |
+ fowners uptimed:uptimed ${spooldir} |
44 |
+ |
45 |
newinitd "${FILESDIR}"/${PN}.init-r1 uptimed |
46 |
systemd_dounit "${FILESDIR}/${PN}.service" |
47 |
} |
48 |
|
49 |
pkg_postinst() { |
50 |
- einfo "Fixing permissions in /var/spool/${PN}" |
51 |
- chown -R uptimed:uptimed /var/spool/${PN} |
52 |
+ local spooldir="/var/spool/${PN}" |
53 |
+ if [[ -d "${spooldir}" ]] ; then |
54 |
+ einfo "Fixing permissions in ${spooldir}" |
55 |
+ find ${spooldir} -type f -print0 \ |
56 |
+ | xargs --null chown uptimed:uptimed || die |
57 |
+ fi |
58 |
echo |
59 |
elog "Start uptimed with '/etc/init.d/uptimed start' (for openRC)" |
60 |
elog "or systemctl start uptimed (for systemd)" |
61 |
|
62 |
diff --git a/app-misc/uptimed/uptimed-0.4.1.ebuild b/app-misc/uptimed/uptimed-0.4.1.ebuild |
63 |
index 498d1fc6475..cc06a89220a 100644 |
64 |
--- a/app-misc/uptimed/uptimed-0.4.1.ebuild |
65 |
+++ b/app-misc/uptimed/uptimed-0.4.1.ebuild |
66 |
@@ -1,4 +1,4 @@ |
67 |
-# Copyright 1999-2018 Gentoo Foundation |
68 |
+# Copyright 1999-2019 Gentoo Authors |
69 |
# Distributed under the terms of the GNU General Public License v2 |
70 |
|
71 |
EAPI=6 |
72 |
@@ -33,16 +33,23 @@ src_configure() { |
73 |
src_install() { |
74 |
local DOCS=( ChangeLog README.md TODO AUTHORS CREDITS INSTALL.cgi sample-cgi/* ) |
75 |
default |
76 |
- find "${ED}" \( -name '*.a' -o -name '*.la' \) -delete || die |
77 |
- keepdir /var/spool/uptimed |
78 |
- fowners uptimed:uptimed /var/spool/uptimed |
79 |
+ find "${ED}" -name '*.la' -delete || die |
80 |
+ |
81 |
+ local spooldir="/var/spool/${PN}" |
82 |
+ keepdir ${spooldir} |
83 |
+ fowners uptimed:uptimed ${spooldir} |
84 |
+ |
85 |
newinitd "${FILESDIR}"/${PN}.init-r1 uptimed |
86 |
systemd_dounit "${FILESDIR}/${PN}.service" |
87 |
} |
88 |
|
89 |
pkg_postinst() { |
90 |
- einfo "Fixing permissions in /var/spool/${PN}" |
91 |
- chown -R uptimed:uptimed /var/spool/${PN} |
92 |
+ local spooldir="/var/spool/${PN}" |
93 |
+ if [[ -d "${spooldir}" ]] ; then |
94 |
+ einfo "Fixing permissions in ${spooldir}" |
95 |
+ find ${spooldir} -type f -print0 \ |
96 |
+ | xargs --null chown uptimed:uptimed || die |
97 |
+ fi |
98 |
echo |
99 |
elog "Start uptimed with '/etc/init.d/uptimed start' (for openRC)" |
100 |
elog "or systemctl start uptimed (for systemd)" |