Skip to content

Commit 21dd9fa

Browse files
authored
Avoid listing user that is not created from Vesta
1 parent 32e970d commit 21dd9fa

File tree

1 file changed

+18
-7
lines changed

1 file changed

+18
-7
lines changed

bin/v-list-users

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,14 @@ format=${1-shell}
1515
# JSON list function
1616
json_list() {
1717
echo '{'
18-
object_count=$(grep '@' /etc/passwd |wc -l)
1918
i=1
2019
while read USER; do
20+
if [ ! -f "$VESTA/data/users/$USER/user.conf" ]; then
21+
continue;
22+
fi
23+
if [ $i -gt 1 ]; then
24+
echo ","
25+
fi
2126
source $VESTA/data/users/$USER/user.conf
2227
echo -n ' "'$USER'": {
2328
"FNAME": "'$FNAME'",
@@ -74,14 +79,8 @@ json_list() {
7479
"TIME": "'$TIME'",
7580
"DATE": "'$DATE'"
7681
}'
77-
if [ "$i" -lt "$object_count" ]; then
78-
echo ','
79-
else
80-
echo
81-
fi
8282
((i++))
8383
done < <(grep '@' /etc/passwd |cut -f1 -d:)
84-
8584
echo '}'
8685
}
8786

@@ -90,6 +89,9 @@ shell_list() {
9089
echo "USER PKG WEB DNS MAIL DB DISK BW SPND DATE"
9190
echo "---- --- --- --- --- -- ---- -- ---- ----"
9291
while read USER; do
92+
if [ ! -f "$VESTA/data/users/$USER/user.conf" ]; then
93+
continue;
94+
fi
9395
source $VESTA/data/users/$USER/user.conf
9496
echo -n "$USER $PACKAGE $U_WEB_DOMAINS $U_DNS_DOMAINS $U_MAIL_DOMAINS"
9597
echo " $U_DATABASES $U_DISK $U_BANDWIDTH $SUSPENDED $DATE"
@@ -99,6 +101,9 @@ shell_list() {
99101
# PLAIN list function
100102
plain_list() {
101103
while read USER; do
104+
if [ ! -f "$VESTA/data/users/$USER/user.conf" ]; then
105+
continue;
106+
fi
102107
source $VESTA/data/users/$USER/user.conf
103108
echo -ne "$USER\t$FNAME\t$LNAME\t$PACKAGE\t$WEB_TEMPLATE\t"
104109
echo -ne "$BACKEND_TEMPLATE\t$PROXY_TEMPLATE\t$DNS_TEMPLATE\t"
@@ -131,6 +136,9 @@ csv_list() {
131136
echo -n "U_MAIL_DOMAINS,U_MAIL_DKIM,U_MAIL_ACCOUNTS,U_DATABASES"
132137
echo "U_CRON_JOBS,U_BACKUPS,LANGUAGE,TIME,DATE"
133138
while read USER; do
139+
if [ ! -f "$VESTA/data/users/$USER/user.conf" ]; then
140+
continue;
141+
fi
134142
source $VESTA/data/users/$USER/user.conf
135143
echo -n "$USER,\"$FNAME\",\"$LNAME\",$PACKAGE,$WEB_TEMPLATE,"
136144
echo -n "$BACKEND_TEMPLATE,$PROXY_TEMPLATE,$DNS_TEMPLATE,"
@@ -151,6 +159,9 @@ csv_list() {
151159
# Raw list function
152160
raw_list() {
153161
while read USER; do
162+
if [ ! -f "$VESTA/data/users/$USER/user.conf" ]; then
163+
continue;
164+
fi
154165
echo $VESTA/data/users/$USER/user.conf
155166
cat $VESTA/data/users/$USER/user.conf
156167
done < <(grep '@' /etc/passwd |cut -f1 -d:)

0 commit comments

Comments
 (0)