mirror of
https://github.com/systemd/systemd-stable.git
synced 2024-10-28 20:25:25 +03:00
commit
965bfcd6b2
@ -1223,7 +1223,7 @@ int log_syntax_internal(
|
||||
log_target == LOG_TARGET_NULL)
|
||||
return -ERRNO_VALUE(error);
|
||||
|
||||
errno = error;
|
||||
errno = ERRNO_VALUE(error);
|
||||
|
||||
va_start(ap, format);
|
||||
(void) vsnprintf(buffer, sizeof buffer, format, ap);
|
||||
|
@ -308,7 +308,7 @@ int log_syntax_invalid_utf8_internal(
|
||||
int _level = (level), _e = (error); \
|
||||
(log_get_max_level() >= LOG_PRI(_level)) \
|
||||
? log_syntax_internal(unit, _level, config_file, config_line, _e, __FILE__, __LINE__, __func__, __VA_ARGS__) \
|
||||
: -abs(_e); \
|
||||
: -ERRNO_VALUE(_e); \
|
||||
})
|
||||
|
||||
#define log_syntax_invalid_utf8(unit, level, config_file, config_line, rvalue) \
|
||||
|
@ -59,15 +59,22 @@ static void test_long_lines(void) {
|
||||
"asdfasdf %s asdfasdfa", "foobar");
|
||||
}
|
||||
|
||||
static void test_log_syntax(void) {
|
||||
assert_se(log_syntax("unit", LOG_ERR, "filename", 10, EINVAL, "EINVAL: %s: %m", "hogehoge") == -EINVAL);
|
||||
assert_se(log_syntax("unit", LOG_ERR, "filename", 10, -ENOENT, "ENOENT: %s: %m", "hogehoge") == -ENOENT);
|
||||
assert_se(log_syntax("unit", LOG_ERR, "filename", 10, SYNTHETIC_ERRNO(ENOTTY), "ENOTTY: %s: %m", "hogehoge") == -ENOTTY);
|
||||
}
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
int target;
|
||||
|
||||
for (target = 0; target < _LOG_TARGET_MAX; target++) {
|
||||
for (target = 0; target < _LOG_TARGET_MAX; target++) {
|
||||
log_set_target(target);
|
||||
log_open();
|
||||
|
||||
test_log_struct();
|
||||
test_long_lines();
|
||||
test_log_syntax();
|
||||
}
|
||||
|
||||
assert_se(log_info_errno(SYNTHETIC_ERRNO(EUCLEAN), "foo") == -EUCLEAN);
|
||||
|
Loading…
Reference in New Issue
Block a user