1 |
If a package hard codes the UID or GID when adding a user or group to |
2 |
the system and that UID/GID already exists, we should abort rather than |
3 |
changing the UID/GID. |
4 |
--- |
5 |
eclass/user.eclass | 6 ++++-- |
6 |
1 file changed, 4 insertions(+), 2 deletions(-) |
7 |
|
8 |
diff --git a/eclass/user.eclass b/eclass/user.eclass |
9 |
index f6a10a6bee2..0d0f9d9eb89 100644 |
10 |
--- a/eclass/user.eclass |
11 |
+++ b/eclass/user.eclass |
12 |
@@ -130,7 +130,8 @@ enewuser() { |
13 |
if [[ -n ${euid} && ${euid} != -1 ]] ; then |
14 |
if [[ ${euid} -gt 0 ]] ; then |
15 |
if [[ -n $(egetent passwd ${euid}) ]] ; then |
16 |
- euid="next" |
17 |
+ eerror "UID is already taken" |
18 |
+ die "user ${euser} needs a new UID" |
19 |
fi |
20 |
else |
21 |
eerror "Userid given but is not greater than 0 !" |
22 |
@@ -290,7 +291,8 @@ enewgroup() { |
23 |
if [[ ! -z ${egid} ]] ; then |
24 |
if [[ ${egid} -gt 0 ]] ; then |
25 |
if [[ -n $(egetent group ${egid}) ]] ; then |
26 |
- egid="next available; requested gid taken" |
27 |
+ eerror "GID is already taken" |
28 |
+ die "group ${egroup} needs a new GID" |
29 |
fi |
30 |
else |
31 |
eerror "Groupid given but is not greater than 0 !" |
32 |
-- |
33 |
2.21.0 |