mirror of
https://github.com/systemd/systemd
synced 2026-03-19 11:34:46 +01:00
Compare commits
No commits in common. "abfbfee36cc3a13f52e662e98338971dcbf3a87d" and "b5ce2feebc8bcc02e03661de9d49b3ea0cd064a4" have entirely different histories.
abfbfee36c
...
b5ce2feebc
6
po/ko.po
6
po/ko.po
@ -9,7 +9,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: systemd\n"
|
"Project-Id-Version: systemd\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2021-01-08 17:48+0100\n"
|
"POT-Creation-Date: 2021-01-08 17:48+0100\n"
|
||||||
"PO-Revision-Date: 2021-06-22 10:04+0000\n"
|
"PO-Revision-Date: 2021-04-15 10:01+0000\n"
|
||||||
"Last-Translator: simmon <simmon@nplob.com>\n"
|
"Last-Translator: simmon <simmon@nplob.com>\n"
|
||||||
"Language-Team: Korean <https://translate.fedoraproject.org/projects/systemd/"
|
"Language-Team: Korean <https://translate.fedoraproject.org/projects/systemd/"
|
||||||
"master/ko/>\n"
|
"master/ko/>\n"
|
||||||
@ -18,7 +18,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Generator: Weblate 4.7\n"
|
"X-Generator: Weblate 4.5.3\n"
|
||||||
"X-Poedit-SourceCharset: UTF-8\n"
|
"X-Poedit-SourceCharset: UTF-8\n"
|
||||||
|
|
||||||
#: src/core/org.freedesktop.systemd1.policy.in:22
|
#: src/core/org.freedesktop.systemd1.policy.in:22
|
||||||
@ -112,7 +112,7 @@ msgstr "홈 영역 암호 변경"
|
|||||||
#: src/home/org.freedesktop.home1.policy:64
|
#: src/home/org.freedesktop.home1.policy:64
|
||||||
msgid ""
|
msgid ""
|
||||||
"Authentication is required to change the password of a user's home area."
|
"Authentication is required to change the password of a user's home area."
|
||||||
msgstr "사용자 홈 영역의 비밀번호를 변경하려면 인증이 필요합니다."
|
msgstr "사용자 홈 영역의 암호를 바꾸려면 인증이 필요합니다."
|
||||||
|
|
||||||
#: src/hostname/org.freedesktop.hostname1.policy:20
|
#: src/hostname/org.freedesktop.hostname1.policy:20
|
||||||
msgid "Set hostname"
|
msgid "Set hostname"
|
||||||
|
|||||||
@ -402,7 +402,7 @@ static int routing_policy_rule_set_netlink_message(const RoutingPolicyRule *rule
|
|||||||
|
|
||||||
/* link may be NULL. */
|
/* link may be NULL. */
|
||||||
|
|
||||||
if (rule->from_prefixlen > 0) {
|
if (in_addr_is_set(rule->family, &rule->from)) {
|
||||||
r = netlink_message_append_in_addr_union(m, FRA_SRC, rule->family, &rule->from);
|
r = netlink_message_append_in_addr_union(m, FRA_SRC, rule->family, &rule->from);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return log_link_error_errno(link, r, "Could not append FRA_SRC attribute: %m");
|
return log_link_error_errno(link, r, "Could not append FRA_SRC attribute: %m");
|
||||||
@ -412,7 +412,7 @@ static int routing_policy_rule_set_netlink_message(const RoutingPolicyRule *rule
|
|||||||
return log_link_error_errno(link, r, "Could not set source prefix length: %m");
|
return log_link_error_errno(link, r, "Could not set source prefix length: %m");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rule->to_prefixlen > 0) {
|
if (in_addr_is_set(rule->family, &rule->to)) {
|
||||||
r = netlink_message_append_in_addr_union(m, FRA_DST, rule->family, &rule->to);
|
r = netlink_message_append_in_addr_union(m, FRA_DST, rule->family, &rule->to);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return log_link_error_errno(link, r, "Could not append FRA_DST attribute: %m");
|
return log_link_error_errno(link, r, "Could not append FRA_DST attribute: %m");
|
||||||
|
|||||||
@ -531,7 +531,7 @@ int mode_to_inaccessible_node(
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int mount_flags_to_string(long unsigned flags, char **ret) {
|
static int mount_flags_to_string(long unsigned flags, char **ret) {
|
||||||
static const struct {
|
static const struct {
|
||||||
long unsigned flag;
|
long unsigned flag;
|
||||||
const char *name;
|
const char *name;
|
||||||
@ -564,8 +564,6 @@ int mount_flags_to_string(long unsigned flags, char **ret) {
|
|||||||
};
|
};
|
||||||
_cleanup_free_ char *str = NULL;
|
_cleanup_free_ char *str = NULL;
|
||||||
|
|
||||||
assert(ret);
|
|
||||||
|
|
||||||
for (size_t i = 0; i < ELEMENTSOF(map); i++)
|
for (size_t i = 0; i < ELEMENTSOF(map); i++)
|
||||||
if (flags & map[i].flag) {
|
if (flags & map[i].flag) {
|
||||||
if (!strextend_with_separator(&str, "|", map[i].name))
|
if (!strextend_with_separator(&str, "|", map[i].name))
|
||||||
|
|||||||
@ -89,7 +89,6 @@ int mount_option_mangle(
|
|||||||
char **ret_remaining_options);
|
char **ret_remaining_options);
|
||||||
|
|
||||||
int mode_to_inaccessible_node(const char *runtime_dir, mode_t mode, char **dest);
|
int mode_to_inaccessible_node(const char *runtime_dir, mode_t mode, char **dest);
|
||||||
int mount_flags_to_string(long unsigned flags, char **ret);
|
|
||||||
|
|
||||||
/* Useful for usage with _cleanup_(), unmounts, removes a directory and frees the pointer */
|
/* Useful for usage with _cleanup_(), unmounts, removes a directory and frees the pointer */
|
||||||
static inline char* umount_and_rmdir_and_free(char *p) {
|
static inline char* umount_and_rmdir_and_free(char *p) {
|
||||||
|
|||||||
@ -7,7 +7,6 @@
|
|||||||
#include "capability-util.h"
|
#include "capability-util.h"
|
||||||
#include "fd-util.h"
|
#include "fd-util.h"
|
||||||
#include "fileio.h"
|
#include "fileio.h"
|
||||||
#include "missing_mount.h"
|
|
||||||
#include "mount-util.h"
|
#include "mount-util.h"
|
||||||
#include "namespace-util.h"
|
#include "namespace-util.h"
|
||||||
#include "path-util.h"
|
#include "path-util.h"
|
||||||
@ -22,8 +21,6 @@ static void test_mount_option_mangle(void) {
|
|||||||
char *opts = NULL;
|
char *opts = NULL;
|
||||||
unsigned long f;
|
unsigned long f;
|
||||||
|
|
||||||
log_info("/* %s */", __func__);
|
|
||||||
|
|
||||||
assert_se(mount_option_mangle(NULL, MS_RDONLY|MS_NOSUID, &f, &opts) == 0);
|
assert_se(mount_option_mangle(NULL, MS_RDONLY|MS_NOSUID, &f, &opts) == 0);
|
||||||
assert_se(f == (MS_RDONLY|MS_NOSUID));
|
assert_se(f == (MS_RDONLY|MS_NOSUID));
|
||||||
assert_se(opts == NULL);
|
assert_se(opts == NULL);
|
||||||
@ -79,61 +76,11 @@ static void test_mount_option_mangle(void) {
|
|||||||
opts = mfree(opts);
|
opts = mfree(opts);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void test_mount_flags_to_string_one(unsigned long flags, const char *expected) {
|
|
||||||
_cleanup_free_ char *x = NULL;
|
|
||||||
int r;
|
|
||||||
|
|
||||||
r = mount_flags_to_string(flags, &x);
|
|
||||||
log_info("flags: %#lX → %d/\"%s\"", flags, r, strnull(x));
|
|
||||||
assert_se(r >= 0);
|
|
||||||
assert_se(streq(x, expected));
|
|
||||||
}
|
|
||||||
|
|
||||||
static void test_mount_flags_to_string(void) {
|
|
||||||
log_info("/* %s */", __func__);
|
|
||||||
|
|
||||||
test_mount_flags_to_string_one(0, "0");
|
|
||||||
test_mount_flags_to_string_one(MS_RDONLY, "MS_RDONLY");
|
|
||||||
test_mount_flags_to_string_one(MS_NOSUID, "MS_NOSUID");
|
|
||||||
test_mount_flags_to_string_one(MS_NODEV, "MS_NODEV");
|
|
||||||
test_mount_flags_to_string_one(MS_NOEXEC, "MS_NOEXEC");
|
|
||||||
test_mount_flags_to_string_one(MS_SYNCHRONOUS, "MS_SYNCHRONOUS");
|
|
||||||
test_mount_flags_to_string_one(MS_REMOUNT, "MS_REMOUNT");
|
|
||||||
test_mount_flags_to_string_one(MS_MANDLOCK, "MS_MANDLOCK");
|
|
||||||
test_mount_flags_to_string_one(MS_DIRSYNC, "MS_DIRSYNC");
|
|
||||||
test_mount_flags_to_string_one(MS_NOSYMFOLLOW, "MS_NOSYMFOLLOW");
|
|
||||||
test_mount_flags_to_string_one(MS_NOATIME, "MS_NOATIME");
|
|
||||||
test_mount_flags_to_string_one(MS_NODIRATIME, "MS_NODIRATIME");
|
|
||||||
test_mount_flags_to_string_one(MS_BIND, "MS_BIND");
|
|
||||||
test_mount_flags_to_string_one(MS_MOVE, "MS_MOVE");
|
|
||||||
test_mount_flags_to_string_one(MS_REC, "MS_REC");
|
|
||||||
test_mount_flags_to_string_one(MS_SILENT, "MS_SILENT");
|
|
||||||
test_mount_flags_to_string_one(MS_POSIXACL, "MS_POSIXACL");
|
|
||||||
test_mount_flags_to_string_one(MS_UNBINDABLE, "MS_UNBINDABLE");
|
|
||||||
test_mount_flags_to_string_one(MS_PRIVATE, "MS_PRIVATE");
|
|
||||||
test_mount_flags_to_string_one(MS_SLAVE, "MS_SLAVE");
|
|
||||||
test_mount_flags_to_string_one(MS_SHARED, "MS_SHARED");
|
|
||||||
test_mount_flags_to_string_one(MS_RELATIME, "MS_RELATIME");
|
|
||||||
test_mount_flags_to_string_one(MS_KERNMOUNT, "MS_KERNMOUNT");
|
|
||||||
test_mount_flags_to_string_one(MS_I_VERSION, "MS_I_VERSION");
|
|
||||||
test_mount_flags_to_string_one(MS_STRICTATIME, "MS_STRICTATIME");
|
|
||||||
test_mount_flags_to_string_one(MS_LAZYTIME, "MS_LAZYTIME");
|
|
||||||
test_mount_flags_to_string_one(MS_LAZYTIME|MS_STRICTATIME, "MS_STRICTATIME|MS_LAZYTIME");
|
|
||||||
test_mount_flags_to_string_one(UINT_MAX,
|
|
||||||
"MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|MS_SYNCHRONOUS|MS_REMOUNT|"
|
|
||||||
"MS_MANDLOCK|MS_DIRSYNC|MS_NOSYMFOLLOW|MS_NOATIME|MS_NODIRATIME|"
|
|
||||||
"MS_BIND|MS_MOVE|MS_REC|MS_SILENT|MS_POSIXACL|MS_UNBINDABLE|"
|
|
||||||
"MS_PRIVATE|MS_SLAVE|MS_SHARED|MS_RELATIME|MS_KERNMOUNT|"
|
|
||||||
"MS_I_VERSION|MS_STRICTATIME|MS_LAZYTIME|fc000200");
|
|
||||||
}
|
|
||||||
|
|
||||||
static void test_bind_remount_recursive(void) {
|
static void test_bind_remount_recursive(void) {
|
||||||
_cleanup_(rm_rf_physical_and_freep) char *tmp = NULL;
|
_cleanup_(rm_rf_physical_and_freep) char *tmp = NULL;
|
||||||
_cleanup_free_ char *subdir = NULL;
|
_cleanup_free_ char *subdir = NULL;
|
||||||
const char *p;
|
const char *p;
|
||||||
|
|
||||||
log_info("/* %s */", __func__);
|
|
||||||
|
|
||||||
if (geteuid() != 0 || have_effective_cap(CAP_SYS_ADMIN) <= 0) {
|
if (geteuid() != 0 || have_effective_cap(CAP_SYS_ADMIN) <= 0) {
|
||||||
(void) log_tests_skipped("not running privileged");
|
(void) log_tests_skipped("not running privileged");
|
||||||
return;
|
return;
|
||||||
@ -187,8 +134,6 @@ static void test_bind_remount_recursive(void) {
|
|||||||
static void test_bind_remount_one(void) {
|
static void test_bind_remount_one(void) {
|
||||||
pid_t pid;
|
pid_t pid;
|
||||||
|
|
||||||
log_info("/* %s */", __func__);
|
|
||||||
|
|
||||||
if (geteuid() != 0 || have_effective_cap(CAP_SYS_ADMIN) <= 0) {
|
if (geteuid() != 0 || have_effective_cap(CAP_SYS_ADMIN) <= 0) {
|
||||||
(void) log_tests_skipped("not running privileged");
|
(void) log_tests_skipped("not running privileged");
|
||||||
return;
|
return;
|
||||||
@ -221,7 +166,6 @@ int main(int argc, char *argv[]) {
|
|||||||
test_setup_logging(LOG_DEBUG);
|
test_setup_logging(LOG_DEBUG);
|
||||||
|
|
||||||
test_mount_option_mangle();
|
test_mount_option_mangle();
|
||||||
test_mount_flags_to_string();
|
|
||||||
test_bind_remount_recursive();
|
test_bind_remount_recursive();
|
||||||
test_bind_remount_one();
|
test_bind_remount_one();
|
||||||
|
|
||||||
|
|||||||
@ -16,11 +16,59 @@ $KERNEL_APPEND
|
|||||||
. "${TEST_BASE_DIR:?}/test-functions"
|
. "${TEST_BASE_DIR:?}/test-functions"
|
||||||
|
|
||||||
check_result_nspawn() {
|
check_result_nspawn() {
|
||||||
check_result_nspawn_unittests "${1}"
|
local workspace="${1:?}"
|
||||||
|
local ret=1
|
||||||
|
|
||||||
|
[[ -e "$workspace/testok" ]] && ret=0
|
||||||
|
|
||||||
|
if [[ -s "$workspace/failed" ]]; then
|
||||||
|
ret=$((ret + 1))
|
||||||
|
echo "=== Failed test log ==="
|
||||||
|
cat "$workspace/failed"
|
||||||
|
else
|
||||||
|
if [[ -s "$workspace/skipped" ]]; then
|
||||||
|
echo "=== Skipped test log =="
|
||||||
|
cat "$workspace/skipped"
|
||||||
|
fi
|
||||||
|
if [[ -s "$workspace/testok" ]]; then
|
||||||
|
echo "=== Passed tests ==="
|
||||||
|
cat "$workspace/testok"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
save_journal "$workspace/var/log/journal"
|
||||||
|
_umount_dir "${initdir:?}"
|
||||||
|
|
||||||
|
[[ -n "${TIMED_OUT:=}" ]] && ret=1
|
||||||
|
return $ret
|
||||||
}
|
}
|
||||||
|
|
||||||
check_result_qemu() {
|
check_result_qemu() {
|
||||||
check_result_qemu_unittests
|
local ret=1
|
||||||
|
|
||||||
|
mount_initdir
|
||||||
|
[[ -e "${initdir:?}/testok" ]] && ret=0
|
||||||
|
|
||||||
|
if [[ -s "$initdir/failed" ]]; then
|
||||||
|
ret=$((ret + 1))
|
||||||
|
echo "=== Failed test log ==="
|
||||||
|
cat "$initdir/failed"
|
||||||
|
else
|
||||||
|
if [[ -s "$initdir/skipped" ]]; then
|
||||||
|
echo "=== Skipped test log =="
|
||||||
|
cat "$initdir/skipped"
|
||||||
|
fi
|
||||||
|
if [[ -s "$initdir/testok" ]]; then
|
||||||
|
echo "=== Passed tests ==="
|
||||||
|
cat "$initdir/testok"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
save_journal "$initdir/var/log/journal"
|
||||||
|
_umount_dir "$initdir"
|
||||||
|
|
||||||
|
[[ -n "${TIMED_OUT:=}" ]] && ret=1
|
||||||
|
return $ret
|
||||||
}
|
}
|
||||||
|
|
||||||
do_test "$@"
|
do_test "$@"
|
||||||
|
|||||||
@ -1 +0,0 @@
|
|||||||
../TEST-01-BASIC/Makefile
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
set -e
|
|
||||||
|
|
||||||
TEST_DESCRIPTION="Run unit tests under qemu"
|
|
||||||
# this subset of unit tests requires qemu, so they are ran here to avoid slowing down TEST-02
|
|
||||||
TEST_NO_NSPAWN=1
|
|
||||||
|
|
||||||
# embed some newlines in the kernel command line to stress our test suite
|
|
||||||
KERNEL_APPEND="
|
|
||||||
|
|
||||||
frobnicate!
|
|
||||||
|
|
||||||
$KERNEL_APPEND
|
|
||||||
"
|
|
||||||
|
|
||||||
# shellcheck source=test/test-functions
|
|
||||||
. "${TEST_BASE_DIR:?}/test-functions"
|
|
||||||
|
|
||||||
check_result_nspawn() {
|
|
||||||
check_result_nspawn_unittests "${1}"
|
|
||||||
}
|
|
||||||
|
|
||||||
check_result_qemu() {
|
|
||||||
check_result_qemu_unittests
|
|
||||||
}
|
|
||||||
|
|
||||||
do_test "$@"
|
|
||||||
@ -864,7 +864,6 @@ install_modules() {
|
|||||||
|
|
||||||
instmods loop
|
instmods loop
|
||||||
instmods vfat
|
instmods vfat
|
||||||
instmods nls_ascii =nls
|
|
||||||
instmods dummy
|
instmods dummy
|
||||||
|
|
||||||
if [[ "$LOOKS_LIKE_SUSE" ]]; then
|
if [[ "$LOOKS_LIKE_SUSE" ]]; then
|
||||||
@ -1229,66 +1228,6 @@ check_result_qemu() {
|
|||||||
return $ret
|
return $ret
|
||||||
}
|
}
|
||||||
|
|
||||||
check_result_nspawn_unittests() {
|
|
||||||
local workspace="${1:?}"
|
|
||||||
local ret=1
|
|
||||||
|
|
||||||
[[ -e "$workspace/testok" ]] && ret=0
|
|
||||||
|
|
||||||
if [[ -s "$workspace/failed" ]]; then
|
|
||||||
ret=$((ret + 1))
|
|
||||||
echo "=== Failed test log ==="
|
|
||||||
cat "$workspace/failed"
|
|
||||||
else
|
|
||||||
if [[ -s "$workspace/skipped" ]]; then
|
|
||||||
echo "=== Skipped test log =="
|
|
||||||
cat "$workspace/skipped"
|
|
||||||
# We might have only skipped tests - that should not fail the job
|
|
||||||
ret=0
|
|
||||||
fi
|
|
||||||
if [[ -s "$workspace/testok" ]]; then
|
|
||||||
echo "=== Passed tests ==="
|
|
||||||
cat "$workspace/testok"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
save_journal "$workspace/var/log/journal"
|
|
||||||
_umount_dir "${initdir:?}"
|
|
||||||
|
|
||||||
[[ -n "${TIMED_OUT:=}" ]] && ret=1
|
|
||||||
return $ret
|
|
||||||
}
|
|
||||||
|
|
||||||
check_result_qemu_unittests() {
|
|
||||||
local ret=1
|
|
||||||
|
|
||||||
mount_initdir
|
|
||||||
[[ -e "${initdir:?}/testok" ]] && ret=0
|
|
||||||
|
|
||||||
if [[ -s "$initdir/failed" ]]; then
|
|
||||||
ret=$((ret + 1))
|
|
||||||
echo "=== Failed test log ==="
|
|
||||||
cat "$initdir/failed"
|
|
||||||
else
|
|
||||||
if [[ -s "$initdir/skipped" ]]; then
|
|
||||||
echo "=== Skipped test log =="
|
|
||||||
cat "$initdir/skipped"
|
|
||||||
# We might have only skipped tests - that should not fail the job
|
|
||||||
ret=0
|
|
||||||
fi
|
|
||||||
if [[ -s "$initdir/testok" ]]; then
|
|
||||||
echo "=== Passed tests ==="
|
|
||||||
cat "$initdir/testok"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
save_journal "$initdir/var/log/journal"
|
|
||||||
_umount_dir "$initdir"
|
|
||||||
|
|
||||||
[[ -n "${TIMED_OUT:=}" ]] && ret=1
|
|
||||||
return $ret
|
|
||||||
}
|
|
||||||
|
|
||||||
strip_binaries() {
|
strip_binaries() {
|
||||||
dinfo "Strip binaries"
|
dinfo "Strip binaries"
|
||||||
if [[ "$STRIP_BINARIES" = "no" ]]; then
|
if [[ "$STRIP_BINARIES" = "no" ]]; then
|
||||||
|
|||||||
@ -14,7 +14,6 @@ OutgoingInterface=test1
|
|||||||
|
|
||||||
[RoutingPolicyRule]
|
[RoutingPolicyRule]
|
||||||
IncomingInterface=test1
|
IncomingInterface=test1
|
||||||
From=::/0
|
|
||||||
Table=8
|
Table=8
|
||||||
Priority=100
|
Priority=100
|
||||||
Family=ipv6
|
Family=ipv6
|
||||||
@ -24,9 +23,3 @@ IncomingInterface=test1
|
|||||||
Table=9
|
Table=9
|
||||||
Priority=101
|
Priority=101
|
||||||
Family=both
|
Family=both
|
||||||
|
|
||||||
[RoutingPolicyRule]
|
|
||||||
IncomingInterface=test1
|
|
||||||
From=0.0.0.0/8
|
|
||||||
Table=10
|
|
||||||
Priority=102
|
|
||||||
|
|||||||
@ -1858,7 +1858,7 @@ class NetworkdNetworkTests(unittest.TestCase, Utilities):
|
|||||||
'routing-policy-rule-reconfigure2.network',
|
'routing-policy-rule-reconfigure2.network',
|
||||||
]
|
]
|
||||||
|
|
||||||
routing_policy_rule_tables = ['7', '8', '9', '10', '1011']
|
routing_policy_rule_tables = ['7', '8', '9', '1011']
|
||||||
routes = [['blackhole', '202.54.1.2'], ['unreachable', '202.54.1.3'], ['prohibit', '202.54.1.4']]
|
routes = [['blackhole', '202.54.1.2'], ['unreachable', '202.54.1.3'], ['prohibit', '202.54.1.4']]
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -2108,13 +2108,6 @@ class NetworkdNetworkTests(unittest.TestCase, Utilities):
|
|||||||
self.assertRegex(output, 'iif test1')
|
self.assertRegex(output, 'iif test1')
|
||||||
self.assertRegex(output, 'lookup 8')
|
self.assertRegex(output, 'lookup 8')
|
||||||
|
|
||||||
output = check_output('ip rule list iif test1 priority 102')
|
|
||||||
print(output)
|
|
||||||
self.assertRegex(output, '102:')
|
|
||||||
self.assertRegex(output, 'from 0.0.0.0/8')
|
|
||||||
self.assertRegex(output, 'iif test1')
|
|
||||||
self.assertRegex(output, 'lookup 10')
|
|
||||||
|
|
||||||
def test_routing_policy_rule_issue_11280(self):
|
def test_routing_policy_rule_issue_11280(self):
|
||||||
copy_unit_to_networkd_unit_path('routing-policy-rule-test1.network', '11-dummy.netdev',
|
copy_unit_to_networkd_unit_path('routing-policy-rule-test1.network', '11-dummy.netdev',
|
||||||
'routing-policy-rule-dummy98.network', '12-dummy.netdev')
|
'routing-policy-rule-dummy98.network', '12-dummy.netdev')
|
||||||
|
|||||||
@ -4,8 +4,7 @@ set -o pipefail
|
|||||||
|
|
||||||
NPROC=$(nproc)
|
NPROC=$(nproc)
|
||||||
MAX_QUEUE_SIZE=${NPROC:-2}
|
MAX_QUEUE_SIZE=${NPROC:-2}
|
||||||
TESTS_GLOB=${TESTS_GLOB:-test-*}
|
mapfile -t TEST_LIST < <(find /usr/lib/systemd/tests/ -maxdepth 1 -type f -name "test-*")
|
||||||
mapfile -t TEST_LIST < <(find /usr/lib/systemd/tests/ -maxdepth 1 -type f -name "${TESTS_GLOB}")
|
|
||||||
|
|
||||||
# reset state
|
# reset state
|
||||||
rm -fv /failed-tests /skipped-tests /skipped
|
rm -fv /failed-tests /skipped-tests /skipped
|
||||||
@ -79,12 +78,10 @@ done
|
|||||||
|
|
||||||
# Wait for remaining running tasks
|
# Wait for remaining running tasks
|
||||||
for key in "${!running[@]}"; do
|
for key in "${!running[@]}"; do
|
||||||
wait ${running[$key]} && ec=0 || ec=$?
|
wait ${running[$key]}
|
||||||
|
ec=$?
|
||||||
report_result "$key" $ec
|
report_result "$key" $ec
|
||||||
unset running["$key"]
|
unset running["$key"]
|
||||||
done
|
done
|
||||||
|
|
||||||
# Test logs are sometimes lost, as the system shuts down immediately after
|
|
||||||
journalctl --sync
|
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|||||||
@ -1,7 +0,0 @@
|
|||||||
[Unit]
|
|
||||||
Description=TEST-61-UNITTESTS-QEMU
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
ExecStartPre=rm -f /failed /testok
|
|
||||||
ExecStart=/usr/lib/systemd/tests/testdata/units/%N.sh
|
|
||||||
Type=oneshot
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
set -eux
|
|
||||||
set -o pipefail
|
|
||||||
|
|
||||||
TESTS_GLOB="test-loop-block"
|
|
||||||
. $(dirname $0)/testsuite-02.sh
|
|
||||||
|
|
||||||
exit 0
|
|
||||||
Loading…
x
Reference in New Issue
Block a user