annotate security/shadow/shadow.sh @ 1274:5e4b7e6fe8ed

security/shadow: upgrade to 4.9
author David Demelier <markand@malikania.fr>
date Thu, 11 Nov 2021 07:28:44 +0100
parents 325631424c65
children 9867e578b1a9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1217
27d1a83dc8d6 misc: change shebang to /bin/sh
David Demelier <markand@malikania.fr>
parents: 1216
diff changeset
1 #!/bin/sh
100
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 #
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 # Copyright (c) 2019 David Demelier <markand@malikania.fr>
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 #
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 # Permission to use, copy, modify, and/or distribute this software for any
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 # purpose with or without fee is hereby granted, provided that the above
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # copyright notice and this permission notice appear in all copies.
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 #
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 #
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
17
1221
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
18 PKGNAME=shadow
1274
5e4b7e6fe8ed security/shadow: upgrade to 4.9
David Demelier <markand@malikania.fr>
parents: 1222
diff changeset
19 PKGVERSION=4.9
1221
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
20 PKGREVISION=1
1274
5e4b7e6fe8ed security/shadow: upgrade to 4.9
David Demelier <markand@malikania.fr>
parents: 1222
diff changeset
21 PKGLICENSE="BSD-3-Clause"
1221
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
22 PKGSUMMARY="password and account management"
1274
5e4b7e6fe8ed security/shadow: upgrade to 4.9
David Demelier <markand@malikania.fr>
parents: 1222
diff changeset
23 PKGWWW="https://github.com/shadow-maint/shadow"
5e4b7e6fe8ed security/shadow: upgrade to 4.9
David Demelier <markand@malikania.fr>
parents: 1222
diff changeset
24 PKGDOWNLOAD="https://github.com/shadow-maint/shadow/releases/download/v$PKGVERSION/$PKGNAME-$PKGVERSION.tar.xz"
1221
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
25 PKGOPTIONS="ACL ATTR NLS PAM SELINUX"
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
26 PKGPROTECT="etc/login.defs
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
27 etc/pam.d/chage
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
28 etc/pam.d/chfn
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
29 etc/pam.d/chgpasswd
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
30 etc/pam.d/chpasswd
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
31 etc/pam.d/chsh
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
32 etc/pam.d/groupadd
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
33 etc/pam.d/groupdel
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
34 etc/pam.d/groupmems
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
35 etc/pam.d/groupmod
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
36 etc/pam.d/login
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
37 etc/pam.d/newusers
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
38 etc/pam.d/passwd
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
39 etc/pam.d/su
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
40 etc/pam.d/useradd
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
41 etc/pam.d/userdel
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
42 etc/pam.d/usermod
a47aaf9743a0 misc: backed out changeset 4ccc42bf0284
David Demelier <markand@malikania.fr>
parents: 1220
diff changeset
43 etc/shadow"
136
e737b80da269 core: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 100
diff changeset
44
100
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 : ${CHOST:=$(uname -m)-linux-musl}
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
46 : ${CBUILD:=$(uname -m)-linux-musl}
499
e26b9aeac296 security: convert packages to clang
David Demelier <markand@malikania.fr>
parents: 431
diff changeset
47 : ${CC:=clang}
100
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
48 : ${CFLAGS:=-O2}
136
e737b80da269 core: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 100
diff changeset
49 : ${LDFLAGS:=}
e737b80da269 core: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 100
diff changeset
50 : ${LIBS:=}
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
51 : ${ACL:=yes}
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
52 : ${ATTR:=yes}
100
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
53 : ${NLS:=yes}
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
54 : ${PAM:=yes}
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
55 : ${SELINUX:=no}
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
56
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
57 if [ "$ACL" = "yes" ]; then
902
a133976e0783 vanilla: remove all origins, closes #2203
David Demelier <markand@malikania.fr>
parents: 831
diff changeset
58 PKGDEPENDS="acl $PKGDEPENDS"
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
59 with_acl="--with-acl"
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
60 else
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
61 with_acl="--without-acl"
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
62 fi
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
63
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
64 if [ "$ATTR" = "yes" ]; then
902
a133976e0783 vanilla: remove all origins, closes #2203
David Demelier <markand@malikania.fr>
parents: 831
diff changeset
65 PKGDEPENDS="acl $PKGDEPENDS"
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
66 with_attr="--with-attr"
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
67 else
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
68 with_attr="--without-attr"
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
69 fi
100
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
70
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
71 if [ "$NLS" = "yes" ]; then
902
a133976e0783 vanilla: remove all origins, closes #2203
David Demelier <markand@malikania.fr>
parents: 831
diff changeset
72 PKGDEPENDS="gettext $PKGDEPENDS"
100
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
73 with_nls="--enable-nls"
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
74 else
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
75 with_nls="--disable-nls"
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
76 fi
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
77
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
78 if [ "$PAM" = "yes" ]; then
1023
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
79 PKGDEPENDS="linux-pam $PKGDEPENDS"
549
bad483aace64 vanilla: use prefix= instead
David Demelier <markand@malikania.fr>
parents: 536
diff changeset
80 with_pam="--with-libpam"
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
81 else
549
bad483aace64 vanilla: use prefix= instead
David Demelier <markand@malikania.fr>
parents: 536
diff changeset
82 with_pam="--without-libpam"
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
83 fi
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
84
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
85 if [ "$SELINUX" = "yes" ]; then
549
bad483aace64 vanilla: use prefix= instead
David Demelier <markand@malikania.fr>
parents: 536
diff changeset
86 with_selinux="--with-selinux"
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
87 else
549
bad483aace64 vanilla: use prefix= instead
David Demelier <markand@malikania.fr>
parents: 536
diff changeset
88 with_selinux="--without-selinux"
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
89 fi
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
90
1222
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
91 build()
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
92 {
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
93 rm -rf $PKGNAME-$PKGVERSION
1274
5e4b7e6fe8ed security/shadow: upgrade to 4.9
David Demelier <markand@malikania.fr>
parents: 1222
diff changeset
94 tar -xvf $PKGNAME-$PKGVERSION.tar.xz
1222
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
95 cd $PKGNAME-$PKGVERSION
100
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
96
1222
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
97 #
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
98 # Disable groups, it's provided by busybox/coreutils and documentation
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
99 # by man-pages.
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
100 #
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
101 sed -i 's/groups$(EXEEXT) //' src/Makefile.in
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
102 find man -name Makefile.in -exec sed -i 's/groups\.1 / /' {} \;
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
103 find man -name Makefile.in -exec sed -i 's/getspnam\.3 / /' {} \;
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
104 find man -name Makefile.in -exec sed -i 's/passwd\.5 / /' {} \;
100
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
105
1222
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
106 CC="$CC" \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
107 CFLAGS="$CFLAGS" \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
108 LDFLAGS="$LDFLAGS" \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
109 LIBS="$LIBS" \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
110 ./configure \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
111 --build=$CBUILD \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
112 --host=$CHOST \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
113 --prefix= \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
114 --bindir=/bin \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
115 --sbindir=/bin \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
116 --enable-shared \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
117 $with_acl \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
118 $with_attr \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
119 $with_nls \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
120 $with_pam \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
121 $with_selinux
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
122 make ubindir=/bin usbindir=/bin
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
123 make DESTDIR=$DESTDIR ubindir=/bin usbindir=/bin install
100
00d0621f86b1 core/shadow: initial import, closes #1046
David Demelier <markand@malikania.fr>
parents:
diff changeset
124
1222
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
125 if [ "$PAM" = "yes" ]; then
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
126 for i in \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
127 chage chfn chgpasswd chpasswd chsh groupadd groupdel \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
128 groupmems groupmod login newusers passwd su useradd \
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
129 userdel usermod; do
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
130 install -Dm0600 ../$i $DESTDIR/etc/pam.d/$i
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
131 done
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
132 fi
387
81a30cce56ef core/shadow: add PAM support
David Demelier <markand@malikania.fr>
parents: 147
diff changeset
133
1222
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
134 cd ..
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
135 rm -rf $PKGNAME-$PKGVERSION
325631424c65 misc: bring back build function
David Demelier <markand@malikania.fr>
parents: 1221
diff changeset
136 }