mirror of
https://github.com/systemd/systemd
synced 2025-10-04 19:24:44 +02:00
Compare commits
13 Commits
bcc73cafdb
...
3ea86aa673
Author | SHA1 | Date | |
---|---|---|---|
![]() |
3ea86aa673 | ||
![]() |
b5a7f13a42 | ||
![]() |
7157c7c4a5 | ||
![]() |
08cf7c70b9 | ||
![]() |
c119eb0edc | ||
![]() |
635894a493 | ||
![]() |
fa43d54b55 | ||
![]() |
2c3b3e2fd9 | ||
![]() |
6ce3b1fa33 | ||
![]() |
d54f1e4329 | ||
![]() |
04a99c48d2 | ||
![]() |
1f4e9f6d60 | ||
![]() |
4d13e4dcbb |
33
po/ko.po
33
po/ko.po
@ -4,12 +4,12 @@
|
|||||||
# Seong-ho Cho <shcho@gnome.org>, 2015, 2021.
|
# Seong-ho Cho <shcho@gnome.org>, 2015, 2021.
|
||||||
# Dongsu Park <dongsu@endocode.com>, 2015.
|
# Dongsu Park <dongsu@endocode.com>, 2015.
|
||||||
# simmon <simmon@nplob.com>, 2021.
|
# simmon <simmon@nplob.com>, 2021.
|
||||||
# 김인수 <simmon@nplob.com>, 2022, 2023, 2024.
|
# 김인수 <simmon@nplob.com>, 2022, 2023, 2024, 2025.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-07-23 15:38+0100\n"
|
"POT-Creation-Date: 2025-07-23 15:38+0100\n"
|
||||||
"PO-Revision-Date: 2024-11-29 12:38+0000\n"
|
"PO-Revision-Date: 2025-07-26 09:04+0000\n"
|
||||||
"Last-Translator: 김인수 <simmon@nplob.com>\n"
|
"Last-Translator: 김인수 <simmon@nplob.com>\n"
|
||||||
"Language-Team: Korean <https://translate.fedoraproject.org/projects/systemd/"
|
"Language-Team: Korean <https://translate.fedoraproject.org/projects/systemd/"
|
||||||
"main/ko/>\n"
|
"main/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 5.8.2\n"
|
"X-Generator: Weblate 5.12.2\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
|
||||||
@ -143,13 +143,11 @@ msgstr "사용자의 홈 영역을 활성화에 인증이 필요합니다."
|
|||||||
|
|
||||||
#: src/home/org.freedesktop.home1.policy:93
|
#: src/home/org.freedesktop.home1.policy:93
|
||||||
msgid "Manage Home Directory Signing Keys"
|
msgid "Manage Home Directory Signing Keys"
|
||||||
msgstr ""
|
msgstr "홈 디렉토리의 서명 키를 관리합니다"
|
||||||
|
|
||||||
#: src/home/org.freedesktop.home1.policy:94
|
#: src/home/org.freedesktop.home1.policy:94
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Authentication is required to manage system services or other units."
|
|
||||||
msgid "Authentication is required to manage signing keys for home directories."
|
msgid "Authentication is required to manage signing keys for home directories."
|
||||||
msgstr "시스템 서비스 또는 기타 단위를 관리하려면 인증이 필요합니다."
|
msgstr "홈 디렉토리를 위해 서명 키를 관리하려면 인증이 필요합니다."
|
||||||
|
|
||||||
#: src/home/pam_systemd_home.c:336
|
#: src/home/pam_systemd_home.c:336
|
||||||
#, c-format
|
#, c-format
|
||||||
@ -841,18 +839,13 @@ msgid ""
|
|||||||
msgstr "로컬 가상 장비 및 컨테이너를 생성하려면 인증이 필요합니다."
|
msgstr "로컬 가상 장비 및 컨테이너를 생성하려면 인증이 필요합니다."
|
||||||
|
|
||||||
#: src/machine/org.freedesktop.machine1.policy:106
|
#: src/machine/org.freedesktop.machine1.policy:106
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Create a local virtual machine or container"
|
|
||||||
msgid "Register a local virtual machine or container"
|
msgid "Register a local virtual machine or container"
|
||||||
msgstr "로컬 가상 장비 및 컨테이너 생성"
|
msgstr "로컬 가상 장비나 컨테이너를 등록합니다"
|
||||||
|
|
||||||
#: src/machine/org.freedesktop.machine1.policy:107
|
#: src/machine/org.freedesktop.machine1.policy:107
|
||||||
#, fuzzy
|
|
||||||
#| msgid ""
|
|
||||||
#| "Authentication is required to create a local virtual machine or container."
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Authentication is required to register a local virtual machine or container."
|
"Authentication is required to register a local virtual machine or container."
|
||||||
msgstr "로컬 가상 장비 및 컨테이너를 생성하려면 인증이 필요합니다."
|
msgstr "로컬 가상 장비나 컨테이너를 등록하려면 인증이 필요합니다."
|
||||||
|
|
||||||
#: src/machine/org.freedesktop.machine1.policy:116
|
#: src/machine/org.freedesktop.machine1.policy:116
|
||||||
msgid "Manage local virtual machine and container images"
|
msgid "Manage local virtual machine and container images"
|
||||||
@ -1072,13 +1065,11 @@ msgstr "질의 결과를 승락하려면 인증이 필요합니다."
|
|||||||
|
|
||||||
#: src/resolve/org.freedesktop.resolve1.policy:154
|
#: src/resolve/org.freedesktop.resolve1.policy:154
|
||||||
msgid "Subscribe to DNS configuration"
|
msgid "Subscribe to DNS configuration"
|
||||||
msgstr ""
|
msgstr "DNS 구성으로 등록하다"
|
||||||
|
|
||||||
#: src/resolve/org.freedesktop.resolve1.policy:155
|
#: src/resolve/org.freedesktop.resolve1.policy:155
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Authentication is required to subscribe query results."
|
|
||||||
msgid "Authentication is required to subscribe to DNS configuration."
|
msgid "Authentication is required to subscribe to DNS configuration."
|
||||||
msgstr "질의 결과를 승락하려면 인증이 필요합니다."
|
msgstr "DNS 구성으로 등록하려면 인증이 필요합니다."
|
||||||
|
|
||||||
#: src/resolve/org.freedesktop.resolve1.policy:165
|
#: src/resolve/org.freedesktop.resolve1.policy:165
|
||||||
msgid "Dump cache"
|
msgid "Dump cache"
|
||||||
@ -1216,14 +1207,10 @@ msgid ""
|
|||||||
msgstr "'$(unit)'의 처리에 유닉스 신호를 전송하려면 인증이 필요합니다."
|
msgstr "'$(unit)'의 처리에 유닉스 신호를 전송하려면 인증이 필요합니다."
|
||||||
|
|
||||||
#: src/core/dbus-unit.c:620
|
#: src/core/dbus-unit.c:620
|
||||||
#, fuzzy
|
|
||||||
#| msgid ""
|
|
||||||
#| "Authentication is required to send a UNIX signal to the processes of "
|
|
||||||
#| "'$(unit)'."
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Authentication is required to send a UNIX signal to the processes of "
|
"Authentication is required to send a UNIX signal to the processes of "
|
||||||
"subgroup of '$(unit)'."
|
"subgroup of '$(unit)'."
|
||||||
msgstr "'$(unit)'의 처리에 유닉스 신호를 전송하려면 인증이 필요합니다."
|
msgstr "'$(unit)'의 하위그룹 처리로 유닉스 신호를 전송하려면 인증이 필요합니다."
|
||||||
|
|
||||||
#: src/core/dbus-unit.c:648
|
#: src/core/dbus-unit.c:648
|
||||||
msgid "Authentication is required to reset the \"failed\" state of '$(unit)'."
|
msgid "Authentication is required to reset the \"failed\" state of '$(unit)'."
|
||||||
|
@ -6,8 +6,12 @@
|
|||||||
|
|
||||||
/* The following macros add 1 when converting things, since 0 is a valid mode, while the pointer
|
/* The following macros add 1 when converting things, since 0 is a valid mode, while the pointer
|
||||||
* NULL is special */
|
* NULL is special */
|
||||||
#define PTR_TO_MODE(p) ((mode_t) ((uintptr_t) (p)-1))
|
static inline mode_t PTR_TO_MODE(void *p) {
|
||||||
#define MODE_TO_PTR(u) ((void *) ((uintptr_t) (u)+1))
|
return p ? (mode_t) ((uintptr_t) p - 1) : MODE_INVALID;
|
||||||
|
}
|
||||||
|
static inline void* MODE_TO_PTR(mode_t m) {
|
||||||
|
return m == MODE_INVALID ? NULL : (void *) ((uintptr_t) m + 1);
|
||||||
|
}
|
||||||
|
|
||||||
int rmdir_parents(const char *path, const char *stop);
|
int rmdir_parents(const char *path, const char *stop);
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ int ordered_set_put_strdup_full(OrderedSet **s, const struct hash_ops *hash_ops,
|
|||||||
}
|
}
|
||||||
|
|
||||||
int ordered_set_put_strdupv_full(OrderedSet **s, const struct hash_ops *hash_ops, char **l) {
|
int ordered_set_put_strdupv_full(OrderedSet **s, const struct hash_ops *hash_ops, char **l) {
|
||||||
int n = 0, r;
|
int r, ret = 0;
|
||||||
|
|
||||||
assert(s);
|
assert(s);
|
||||||
|
|
||||||
@ -70,14 +70,14 @@ int ordered_set_put_strdupv_full(OrderedSet **s, const struct hash_ops *hash_ops
|
|||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
n += r;
|
ret = ret || r > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return n;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
int ordered_set_put_string_set_full(OrderedSet **s, const struct hash_ops *hash_ops, OrderedSet *l) {
|
int ordered_set_put_string_set_full(OrderedSet **s, const struct hash_ops *hash_ops, OrderedSet *l) {
|
||||||
int n = 0, r;
|
int r, ret = 0;
|
||||||
char *p;
|
char *p;
|
||||||
|
|
||||||
assert(s);
|
assert(s);
|
||||||
@ -89,10 +89,10 @@ int ordered_set_put_string_set_full(OrderedSet **s, const struct hash_ops *hash_
|
|||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
n += r;
|
ret = ret || r > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return n;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ordered_set_print(FILE *f, const char *field, OrderedSet *s) {
|
void ordered_set_print(FILE *f, const char *field, OrderedSet *s) {
|
||||||
|
@ -31,10 +31,12 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
|
|||||||
DO_NOT_OPTIMIZE(parse_number8(str8, &(uint64_t){ 0 }, size % 2 == 0 ? NULL : &tail8));
|
DO_NOT_OPTIMIZE(parse_number8(str8, &(uint64_t){ 0 }, size % 2 == 0 ? NULL : &tail8));
|
||||||
|
|
||||||
const char16_t *tail16 = NULL;
|
const char16_t *tail16 = NULL;
|
||||||
_cleanup_free_ char16_t *str16 = memdup_str16(data, size);
|
_cleanup_free_ char16_t *str16 = ASSERT_SE_PTR(memdup_str16(data, size));
|
||||||
DO_NOT_OPTIMIZE(parse_number16(str16, &(uint64_t){ 0 }, size % 2 == 0 ? NULL : &tail16));
|
DO_NOT_OPTIMIZE(parse_number16(str16, &(uint64_t){ 0 }, size % 2 == 0 ? NULL : &tail16));
|
||||||
|
|
||||||
_cleanup_free_ char16_t *pattern = memdup_str16(data, len), *haystack = memdup_str16(data + len, len2);
|
_cleanup_free_ char16_t
|
||||||
|
*pattern = ASSERT_SE_PTR(memdup_str16(data, len)),
|
||||||
|
*haystack = ASSERT_SE_PTR(memdup_str16(data + len, len2));
|
||||||
DO_NOT_OPTIMIZE(efi_fnmatch(pattern, haystack));
|
DO_NOT_OPTIMIZE(efi_fnmatch(pattern, haystack));
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -2244,8 +2244,11 @@ static int setup_private_users_child(int unshare_ready_fd, const char *uid_map,
|
|||||||
|
|
||||||
/* Wait until the parent unshared the user namespace */
|
/* Wait until the parent unshared the user namespace */
|
||||||
uint64_t c;
|
uint64_t c;
|
||||||
if (read(unshare_ready_fd, &c, sizeof(c)) < 0)
|
ssize_t n = read(unshare_ready_fd, &c, sizeof(c));
|
||||||
|
if (n < 0)
|
||||||
return log_debug_errno(errno, "Failed to read from signaling eventfd: %m");
|
return log_debug_errno(errno, "Failed to read from signaling eventfd: %m");
|
||||||
|
if (n != sizeof(c))
|
||||||
|
return log_debug_errno(SYNTHETIC_ERRNO(EIO), "Short read from signaling eventfd.");
|
||||||
|
|
||||||
/* Disable the setgroups() system call in the child user namespace, for good, unless PrivateUsers=full
|
/* Disable the setgroups() system call in the child user namespace, for good, unless PrivateUsers=full
|
||||||
* and using the system service manager. */
|
* and using the system service manager. */
|
||||||
|
@ -286,6 +286,8 @@ static int enumerate_dir_d(
|
|||||||
log_debug("Adding to drops: %s %s %s %s %s/%s",
|
log_debug("Adding to drops: %s %s %s %s %s/%s",
|
||||||
unit, glyph(GLYPH_ARROW_RIGHT), *file, glyph(GLYPH_ARROW_RIGHT), path, *file);
|
unit, glyph(GLYPH_ARROW_RIGHT), *file, glyph(GLYPH_ARROW_RIGHT), path, *file);
|
||||||
r = path_put(&h, path, *file, /* override = */ false);
|
r = path_put(&h, path, *file, /* override = */ false);
|
||||||
|
if (r < 0)
|
||||||
|
return r;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -198,7 +198,7 @@ int dns_add_new_service(DnsServiceBrowser *sb, DnsResourceRecord *rr, int owner_
|
|||||||
/* If next_time is still in the past, the service is being added
|
/* If next_time is still in the past, the service is being added
|
||||||
* after it has already expired. Just schedule a 100%
|
* after it has already expired. Just schedule a 100%
|
||||||
* maintenance query. */
|
* maintenance query. */
|
||||||
next_time = usec + USEC_PER_SEC;
|
next_time = usec_add(usec, USEC_PER_SEC);
|
||||||
s->rr_ttl_state = DNS_RECORD_TTL_STATE_100_PERCENT;
|
s->rr_ttl_state = DNS_RECORD_TTL_STATE_100_PERCENT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -133,8 +133,10 @@ int cpu_set_realloc(CPUSet *c, size_t n) {
|
|||||||
return -ERANGE;
|
return -ERANGE;
|
||||||
|
|
||||||
n = CPU_ALLOC_SIZE(n);
|
n = CPU_ALLOC_SIZE(n);
|
||||||
if (n <= c->allocated)
|
if (n <= c->allocated) {
|
||||||
|
assert(c->set || n == 0);
|
||||||
return 0;
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (!GREEDY_REALLOC0(c->set, DIV_ROUND_UP(n, sizeof(cpu_set_t))))
|
if (!GREEDY_REALLOC0(c->set, DIV_ROUND_UP(n, sizeof(cpu_set_t))))
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
@ -177,7 +179,7 @@ int cpu_set_add_set(CPUSet *c, const CPUSet *src) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int cpu_set_add_range(CPUSet *c, size_t start, size_t end) {
|
int cpu_set_add_range(CPUSet *c, size_t start, size_t end) {
|
||||||
int r;
|
int r;
|
||||||
|
|
||||||
assert(c);
|
assert(c);
|
||||||
@ -222,7 +224,7 @@ int config_parse_cpu_set(
|
|||||||
void *userdata) {
|
void *userdata) {
|
||||||
|
|
||||||
CPUSet *c = ASSERT_PTR(data);
|
CPUSet *c = ASSERT_PTR(data);
|
||||||
int r, level = ltype ? LOG_DEBUG : LOG_DEBUG;
|
int r, level = ltype ? LOG_DEBUG : LOG_ERR;
|
||||||
bool critical = ltype;
|
bool critical = ltype;
|
||||||
|
|
||||||
assert(critical || lvalue);
|
assert(critical || lvalue);
|
||||||
|
@ -24,6 +24,7 @@ void cpu_set_done(CPUSet *c);
|
|||||||
int cpu_set_realloc(CPUSet *c, size_t n);
|
int cpu_set_realloc(CPUSet *c, size_t n);
|
||||||
int cpu_set_add(CPUSet *c, size_t i);
|
int cpu_set_add(CPUSet *c, size_t i);
|
||||||
int cpu_set_add_set(CPUSet *c, const CPUSet *src);
|
int cpu_set_add_set(CPUSet *c, const CPUSet *src);
|
||||||
|
int cpu_set_add_range(CPUSet *c, size_t start, size_t end);
|
||||||
int cpu_set_add_all(CPUSet *c);
|
int cpu_set_add_all(CPUSet *c);
|
||||||
|
|
||||||
char* cpu_set_to_string(const CPUSet *c);
|
char* cpu_set_to_string(const CPUSet *c);
|
||||||
|
@ -3350,8 +3350,7 @@ static int read_presets(RuntimeScope scope, const char *root_dir, UnitFilePreset
|
|||||||
if (strchr(COMMENTS, line[0]))
|
if (strchr(COMMENTS, line[0]))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
parameter = first_word(line, "enable");
|
if ((parameter = first_word(line, "enable"))) {
|
||||||
if (parameter) {
|
|
||||||
char *unit_name;
|
char *unit_name;
|
||||||
char **instances = NULL;
|
char **instances = NULL;
|
||||||
|
|
||||||
@ -3367,10 +3366,8 @@ static int read_presets(RuntimeScope scope, const char *root_dir, UnitFilePreset
|
|||||||
.action = PRESET_ENABLE,
|
.action = PRESET_ENABLE,
|
||||||
.instances = instances,
|
.instances = instances,
|
||||||
};
|
};
|
||||||
}
|
|
||||||
|
|
||||||
parameter = first_word(line, "disable");
|
} else if ((parameter = first_word(line, "disable"))) {
|
||||||
if (parameter) {
|
|
||||||
char *pattern;
|
char *pattern;
|
||||||
|
|
||||||
pattern = strdup(parameter);
|
pattern = strdup(parameter);
|
||||||
@ -3381,10 +3378,8 @@ static int read_presets(RuntimeScope scope, const char *root_dir, UnitFilePreset
|
|||||||
.pattern = pattern,
|
.pattern = pattern,
|
||||||
.action = PRESET_DISABLE,
|
.action = PRESET_DISABLE,
|
||||||
};
|
};
|
||||||
}
|
|
||||||
|
|
||||||
parameter = first_word(line, "ignore");
|
} else if ((parameter = first_word(line, "ignore"))) {
|
||||||
if (parameter) {
|
|
||||||
char *pattern;
|
char *pattern;
|
||||||
|
|
||||||
pattern = strdup(parameter);
|
pattern = strdup(parameter);
|
||||||
@ -3397,7 +3392,7 @@ static int read_presets(RuntimeScope scope, const char *root_dir, UnitFilePreset
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rule.action) {
|
if (rule.action != 0) {
|
||||||
if (!GREEDY_REALLOC(ps.rules, ps.n_rules + 1))
|
if (!GREEDY_REALLOC(ps.rules, ps.n_rules + 1))
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
|
@ -262,4 +262,25 @@ TEST(print_cpu_alloc_size) {
|
|||||||
log_info("CPU_ALLOC_SIZE(8191) = %zu", CPU_ALLOC_SIZE(8191));
|
log_info("CPU_ALLOC_SIZE(8191) = %zu", CPU_ALLOC_SIZE(8191));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST(cpu_set_add) {
|
||||||
|
_cleanup_(cpu_set_done) CPUSet c = {};
|
||||||
|
|
||||||
|
for (size_t i = 0; i < 8192; i++)
|
||||||
|
ASSERT_OK(cpu_set_add(&c, 8191));
|
||||||
|
|
||||||
|
ASSERT_ERROR(cpu_set_add(&c, 8192), ERANGE);
|
||||||
|
ASSERT_ERROR(cpu_set_add(&c, SIZE_MAX), ERANGE);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(cpu_set_add_range) {
|
||||||
|
_cleanup_(cpu_set_done) CPUSet c = {};
|
||||||
|
|
||||||
|
ASSERT_ERROR(cpu_set_add_range(&c, 0, 8192), ERANGE);
|
||||||
|
ASSERT_ERROR(cpu_set_add_range(&c, 0, SIZE_MAX), ERANGE);
|
||||||
|
ASSERT_SIGNAL(cpu_set_add_range(&c, 100, 0), SIGABRT);
|
||||||
|
|
||||||
|
ASSERT_OK(cpu_set_add_range(&c, 0, 0));
|
||||||
|
ASSERT_OK(cpu_set_add_range(&c, 0, 8191));
|
||||||
|
}
|
||||||
|
|
||||||
DEFINE_TEST_MAIN(LOG_DEBUG);
|
DEFINE_TEST_MAIN(LOG_DEBUG);
|
||||||
|
@ -90,18 +90,19 @@ TEST(set_put_string_set) {
|
|||||||
_cleanup_ordered_set_free_ OrderedSet *m = NULL, *q = NULL;
|
_cleanup_ordered_set_free_ OrderedSet *m = NULL, *q = NULL;
|
||||||
_cleanup_free_ char **final = NULL; /* "just free" because the strings are in the set */
|
_cleanup_free_ char **final = NULL; /* "just free" because the strings are in the set */
|
||||||
|
|
||||||
assert_se(ordered_set_put_strdup(&m, "1") == 1);
|
ASSERT_OK_POSITIVE(ordered_set_put_strdup(&m, "1"));
|
||||||
assert_se(ordered_set_put_strdup(&m, "22") == 1);
|
ASSERT_OK_POSITIVE(ordered_set_put_strdup(&m, "22"));
|
||||||
assert_se(ordered_set_put_strdup(&m, "333") == 1);
|
ASSERT_OK_POSITIVE(ordered_set_put_strdup(&m, "333"));
|
||||||
|
|
||||||
assert_se(ordered_set_put_strdup(&q, "11") == 1);
|
ASSERT_OK_POSITIVE(ordered_set_put_strdup(&q, "11"));
|
||||||
assert_se(ordered_set_put_strdup(&q, "22") == 1);
|
ASSERT_OK_POSITIVE(ordered_set_put_strdup(&q, "22"));
|
||||||
assert_se(ordered_set_put_strdup(&q, "33") == 1);
|
ASSERT_OK_POSITIVE(ordered_set_put_strdup(&q, "33"));
|
||||||
|
|
||||||
assert_se(ordered_set_put_string_set(&m, q) == 2);
|
ASSERT_OK_POSITIVE(ordered_set_put_string_set(&m, q));
|
||||||
|
ASSERT_OK_ZERO(ordered_set_put_string_set(&m, q));
|
||||||
|
|
||||||
assert_se(final = ordered_set_get_strv(m));
|
ASSERT_NOT_NULL(final = ordered_set_get_strv(m));
|
||||||
assert_se(strv_equal(final, STRV_MAKE("1", "22", "333", "11", "33")));
|
ASSERT_TRUE(strv_equal(final, STRV_MAKE("1", "22", "333", "11", "33")));
|
||||||
|
|
||||||
ordered_set_print(stdout, "BAR=", m);
|
ordered_set_print(stdout, "BAR=", m);
|
||||||
}
|
}
|
||||||
|
@ -1165,8 +1165,11 @@ uuid="deadbeef-dead-dead-beef-111111111111", name="mdpart1", size=8M
|
|||||||
uuid="deadbeef-dead-dead-beef-222222222222", name="mdpart2", size=32M
|
uuid="deadbeef-dead-dead-beef-222222222222", name="mdpart2", size=32M
|
||||||
uuid="deadbeef-dead-dead-beef-333333333333", name="mdpart3", size=16M
|
uuid="deadbeef-dead-dead-beef-333333333333", name="mdpart3", size=16M
|
||||||
EOF
|
EOF
|
||||||
|
udevadm wait --settle --timeout=30 "$raid_dev" "${raid_dev}1" "${raid_dev}2" "${raid_dev}3"
|
||||||
# FIXME: For some reasons, the command sometimes stuck and the test will timeout.
|
# FIXME: For some reasons, the command sometimes stuck and the test will timeout.
|
||||||
# Let's enable debug logging and set a timeout to make not consume CI resource.
|
# Let's enable debug logging and set a timeout to make not consume CI resource.
|
||||||
|
# UPDATE: The above 'udevadm wait' command should fix the issue.
|
||||||
|
# But, let's keep the debug option for a while.
|
||||||
SYSTEMD_LOG_LEVEL=debug timeout 30 udevadm trigger --settle --parent-match "$raid_dev"
|
SYSTEMD_LOG_LEVEL=debug timeout 30 udevadm trigger --settle --parent-match "$raid_dev"
|
||||||
udevadm wait --settle --timeout=30 "/dev/disk/by-id/md-uuid-$uuid-part2"
|
udevadm wait --settle --timeout=30 "/dev/disk/by-id/md-uuid-$uuid-part2"
|
||||||
mkfs.ext4 -L "$part_name" "/dev/disk/by-id/md-uuid-$uuid-part2"
|
mkfs.ext4 -L "$part_name" "/dev/disk/by-id/md-uuid-$uuid-part2"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user