/
niceSOFT
/
util-linux
Обзор
Документация
Войти
/
niceSOFT
/
util-linux
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
tests/ts/su/group
86 строк
3 KB
Thomas Weißschuh
tests: fold ts_skip_subtest into ts_skip
20 май 2026, 10:55
20 май 2026, 10:55
b610224
Код
Авторство
О чём код?
#!/usr/bin/env bash # This file is part of util-linux. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This file is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # Copyright (C) 2025 Christian Goeschel Ndjomouo <cgoesc2@wgu.edu> TS_TOPDIR="${0%/*}/../.." TS_DESC="group" . "$TS_TOPDIR/functions.sh" ts_init "$*" ts_skip_nonroot ts_check_test_command "$TS_CMD_SU" ts_check_prog "groupadd" ts_check_prog "groupdel" ts_check_prog "getent" TS_CMD_ID="id" username="$(whoami)" grp_name="ts_grp" if ! groupadd --force "$grp_name"; then ts_skip "could not create group '$grp_name'" fi # Since here '-c' comes after <user> it'll be passed to the actual shell # instead of being interpreted by su(1). ts_init_subtest "primary-no-login" "$TS_CMD_SU" --group "$grp_name" "$username" \ -c "$TS_CMD_ID --groups --name" 2>> "$TS_ERRLOG" \ | grep -o "$grp_name" \ | uniq >> "$TS_OUTPUT" ts_finalize_subtest ts_init_subtest "primary-login" "$TS_CMD_SU" --group "$grp_name" - "$username" \ -c "$TS_CMD_ID --groups --name" 2>> "$TS_ERRLOG" \ | grep -o "$grp_name" \ | uniq >> "$TS_OUTPUT" grep -q 'Authentication failure' "$TS_ERRLOG" && ts_skip "authentication failure" ts_finalize_subtest ts_init_subtest "supplemental-no-login" "$TS_CMD_SU" --supp-group "$grp_name" "$username" \ -c "$TS_CMD_ID --groups --name" 2>> "$TS_ERRLOG" \ | grep -o "$grp_name" \ | uniq >> "$TS_OUTPUT" ts_finalize_subtest ts_init_subtest "supplemental-login" "$TS_CMD_SU" --supp-group "$grp_name" - "$username" \ -c "$TS_CMD_ID --groups --name" 2>> "$TS_ERRLOG" \ | grep -o "$grp_name" \ | uniq >> "$TS_OUTPUT" grep -q 'Authentication failure' "$TS_ERRLOG" && ts_skip "authentication failure" ts_finalize_subtest ts_init_subtest "group-id" grp_id="$(cat /etc/group | grep -E "^$grp_name" | cut -d: -f 3)" "$TS_CMD_SU" --group "$grp_id" "$username" \ -c "$TS_CMD_ID --groups --name" 2>> "$TS_ERRLOG" \ | grep -o "$grp_name" \ | uniq >> "$TS_OUTPUT" ts_finalize_subtest groupdel "$grp_name" ts_finalize