diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2022-06-28 20:36:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-28 20:36:35 +0200 |
commit | d5548eb618d426a3952746eb3a0e7d95d186ea7e (patch) | |
tree | cdfaaae4fe14b888a304febfecd4922e8ffa427e /src | |
parent | Merge pull request #23849 from mbiebl/more-https (diff) | |
parent | tree-wide: allow ASCII fallback for … in logs (diff) | |
download | systemd-d5548eb618d426a3952746eb3a0e7d95d186ea7e.tar.xz systemd-d5548eb618d426a3952746eb3a0e7d95d186ea7e.zip |
Merge pull request #23821 from dtardon/ascii-logging
Allow ASCII fallback for Unicode characters in logs
Diffstat (limited to '')
40 files changed, 193 insertions, 106 deletions
diff --git a/src/basic/os-util.c b/src/basic/os-util.c index acfff24319..880fb7e6bb 100644 --- a/src/basic/os-util.c +++ b/src/basic/os-util.c @@ -8,6 +8,7 @@ #include "fd-util.h" #include "fileio.h" #include "fs-util.h" +#include "glyph-util.h" #include "macro.h" #include "os-util.h" #include "parse-util.h" @@ -146,8 +147,9 @@ int open_extension_release(const char *root, const char *extension, char **ret_p if (k != 0) continue; - log_debug("%s/%s: 'user.extension-release.strict' attribute is false…", - extension_release_dir_path, de->d_name); + log_debug("%s/%s: 'user.extension-release.strict' attribute is false%s", + extension_release_dir_path, de->d_name, + special_glyph(SPECIAL_GLYPH_ELLIPSIS)); /* We already found what we were looking for, but there's another candidate? * We treat this as an error, as we want to enforce that there are no ambiguities diff --git a/src/basic/unit-file.c b/src/basic/unit-file.c index ac0236d635..43d35a2318 100644 --- a/src/basic/unit-file.c +++ b/src/basic/unit-file.c @@ -348,13 +348,13 @@ int unit_file_resolve_symlink( if (r < 0) return r; if (is_path(tail)) - log_warning("Suspicious symlink %s/%s→%s, treating as alias.", - dir, filename, simplified); + log_warning("Suspicious symlink %s/%s %s %s, treating as alias.", + dir, filename, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), simplified); dst = resolve_destination_target ? TAKE_PTR(simplified) : TAKE_PTR(target_name); } else { - log_debug("Linked unit file: %s/%s → %s", dir, filename, simplified); + log_debug("Linked unit file: %s/%s %s %s", dir, filename, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), simplified); if (resolve_destination_target) dst = TAKE_PTR(simplified); @@ -569,8 +569,8 @@ int unit_file_build_name_map( r = hashmap_ensure_put(&ids, &string_hash_ops_free_free, key, dst); if (r < 0) - return log_warning_errno(r, "Failed to add entry to hashmap (%s→%s): %m", - de->d_name, dst); + return log_warning_errno(r, "Failed to add entry to hashmap (%s%s%s): %m", + de->d_name, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), dst); key = dst = NULL; } } @@ -612,7 +612,8 @@ int unit_file_build_name_map( r = string_strv_hashmap_put(&names, dst, src); if (r < 0) - return log_warning_errno(r, "Failed to add entry to hashmap (%s→%s): %m", dst, src); + return log_warning_errno(r, "Failed to add entry to hashmap (%s%s%s): %m", + dst, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), src); } if (cache_timestamp_hash) diff --git a/src/binfmt/binfmt.c b/src/binfmt/binfmt.c index 817ee387ff..71cb56aa4a 100644 --- a/src/binfmt/binfmt.c +++ b/src/binfmt/binfmt.c @@ -83,7 +83,7 @@ static int apply_file(const char *filename, bool ignore_enoent) { return log_error_errno(r, "Failed to open file '%s': %m", filename); } - log_debug("Applying %s…", pp); + log_debug("Applying %s%s", pp, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); for (unsigned line = 1;; line++) { _cleanup_free_ char *text = NULL; char *p; diff --git a/src/boot/bootctl.c b/src/boot/bootctl.c index a27a0d45e4..e50f96cb2f 100644 --- a/src/boot/bootctl.c +++ b/src/boot/bootctl.c @@ -1562,7 +1562,7 @@ static int are_we_installed(const char *esp_path) { if (!p) return log_oom(); - log_debug("Checking whether %s contains any files…", p); + log_debug("Checking whether %s contains any files%s", p, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); r = dir_is_empty(p, /* ignore_hidden_or_backup= */ false); if (r < 0 && r != -ENOENT) return log_error_errno(r, "Failed to check whether %s contains any files: %m", p); diff --git a/src/core/dbus-manager.c b/src/core/dbus-manager.c index e2f21f5e1e..52521c4146 100644 --- a/src/core/dbus-manager.c +++ b/src/core/dbus-manager.c @@ -1959,7 +1959,7 @@ static int method_enqueue_marked_jobs(sd_bus_message *message, void *userdata, s if (r == 0) return 1; /* No authorization for now, but the async polkit stuff will call us again when it has it */ - log_info("Queuing reload/restart jobs for marked units…"); + log_info("Queuing reload/restart jobs for marked units%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL; r = sd_bus_message_new_method_return(message, &reply); diff --git a/src/core/dbus-service.c b/src/core/dbus-service.c index 9c7da5a351..2e6ca9d7d9 100644 --- a/src/core/dbus-service.c +++ b/src/core/dbus-service.c @@ -484,7 +484,8 @@ static int bus_service_set_transient_property( return log_oom(); if (!UNIT_WRITE_FLAGS_NOOP(flags)) - log_unit_notice(u, "Transient unit's PIDFile= property references path below legacy directory /var/run, updating %s → %s; please update client accordingly.", n, z); + log_unit_notice(u, "Transient unit's PIDFile= property references path below legacy directory /var/run, updating %s %s %s; please update client accordingly.", + n, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), z); free_and_replace(n, z); } diff --git a/src/core/manager-serialize.c b/src/core/manager-serialize.c index 6a5dec436f..a91c8268d5 100644 --- a/src/core/manager-serialize.c +++ b/src/core/manager-serialize.c @@ -309,9 +309,11 @@ int manager_deserialize(Manager *m, FILE *f, FDSet *fds) { r = fd_get_path(fd, &fn); if (r < 0) - log_debug_errno(r, "Received serialized fd %i → %m", fd); + log_debug_errno(r, "Received serialized fd %i %s %m", + fd, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT)); else - log_debug("Received serialized fd %i → %s", fd, strna(fn)); + log_debug("Received serialized fd %i %s %s", + fd, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), strna(fn)); } } } diff --git a/src/core/manager.c b/src/core/manager.c index dc928b002c..bf9d18e96e 100644 --- a/src/core/manager.c +++ b/src/core/manager.c @@ -1616,7 +1616,7 @@ static void manager_coldplug(Manager *m) { assert(m); - log_debug("Invoking unit coldplug() handlers…"); + log_debug("Invoking unit coldplug() handlers%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); /* Let's place the units back into their deserialized state */ HASHMAP_FOREACH_KEY(u, k, m->units) { @@ -1637,7 +1637,7 @@ static void manager_catchup(Manager *m) { assert(m); - log_debug("Invoking unit catchup() handlers…"); + log_debug("Invoking unit catchup() handlers%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); /* Let's catch up on any state changes that happened while we were reloading/reexecing */ HASHMAP_FOREACH_KEY(u, k, m->units) { diff --git a/src/core/namespace.c b/src/core/namespace.c index c5ad918a2f..f1a97ec631 100644 --- a/src/core/namespace.c +++ b/src/core/namespace.c @@ -19,6 +19,7 @@ #include "extension-release.h" #include "fd-util.h" #include "format-util.h" +#include "glyph-util.h" #include "label.h" #include "list.h" #include "loop-util.h" @@ -1279,7 +1280,8 @@ static int follow_symlink( "Symlink loop on '%s'.", mount_entry_path(m)); - log_debug("Followed mount entry path symlink %s → %s.", mount_entry_path(m), target); + log_debug("Followed mount entry path symlink %s %s %s.", + mount_entry_path(m), special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), target); mount_entry_consume_prefix(m, TAKE_PTR(target)); @@ -1418,7 +1420,8 @@ static int apply_one_mount( if (r < 0) return log_debug_errno(r, "Failed to follow symlinks on %s: %m", mount_entry_source(m)); - log_debug("Followed source symlinks %s → %s.", mount_entry_source(m), chased); + log_debug("Followed source symlinks %s %s %s.", + mount_entry_source(m), special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), chased); free_and_replace(m->source_malloc, chased); diff --git a/src/core/socket.c b/src/core/socket.c index af39553001..f67a797054 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -1282,7 +1282,8 @@ static int socket_symlink(Socket *s) { } if (r < 0) - log_unit_warning_errno(UNIT(s), r, "Failed to create symlink %s → %s, ignoring: %m", p, *i); + log_unit_warning_errno(UNIT(s), r, "Failed to create symlink %s %s %s, ignoring: %m", + p, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), *i); } return 0; diff --git a/src/environment-d-generator/environment-d-generator.c b/src/environment-d-generator/environment-d-generator.c index 39c46c7c2b..12aafbc7d9 100644 --- a/src/environment-d-generator/environment-d-generator.c +++ b/src/environment-d-generator/environment-d-generator.c @@ -6,6 +6,7 @@ #include "def.h" #include "env-file.h" #include "escape.h" +#include "glyph-util.h" #include "log.h" #include "path-lookup.h" #include "strv.h" @@ -55,7 +56,7 @@ static int load_and_print(void) { * that in case of failure, a partial update is better than none. */ STRV_FOREACH(i, files) { - log_debug("Reading %s…", *i); + log_debug("Reading %s%s", *i, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); r = merge_env_file(&env, NULL, *i); if (r == -ENOMEM) diff --git a/src/home/homectl.c b/src/home/homectl.c index 56f6096769..7ccee4df10 100644 --- a/src/home/homectl.c +++ b/src/home/homectl.c @@ -1688,9 +1688,13 @@ static int passwd_home(int argc, char *argv[], void *userdata) { int r; if (arg_pkcs11_token_uri) - return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "To change the PKCS#11 security token use 'homectl update --pkcs11-token-uri=…'."); + return log_error_errno(SYNTHETIC_ERRNO(EINVAL), + "To change the PKCS#11 security token use 'homectl update --pkcs11-token-uri=%s'.", + special_glyph(SPECIAL_GLYPH_ELLIPSIS)); if (arg_fido2_device) - return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "To change the FIDO2 security token use 'homectl update --fido2-device=…'."); + return log_error_errno(SYNTHETIC_ERRNO(EINVAL), + "To change the FIDO2 security token use 'homectl update --fido2-device=%s'.", + special_glyph(SPECIAL_GLYPH_ELLIPSIS)); if (identity_properties_specified()) return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "The 'passwd' verb does not permit changing other record properties at the same time."); @@ -3613,8 +3617,8 @@ static int parse_argv(int argc, char *argv[]) { return log_error_errno(r, "Failed to parse --rebalance-weight= argument: %s", optarg); if (u < REBALANCE_WEIGHT_MIN || u > REBALANCE_WEIGHT_MAX) - return log_error_errno(SYNTHETIC_ERRNO(ERANGE), "Rebalancing weight out of valid range %" PRIu64 "…%" PRIu64 ": %s", - REBALANCE_WEIGHT_MIN, REBALANCE_WEIGHT_MAX, optarg); + return log_error_errno(SYNTHETIC_ERRNO(ERANGE), "Rebalancing weight out of valid range %" PRIu64 "%s%" PRIu64 ": %s", + REBALANCE_WEIGHT_MIN, special_glyph(SPECIAL_GLYPH_ELLIPSIS), REBALANCE_WEIGHT_MAX, optarg); } /* Drop from per machine stuff and everywhere */ diff --git a/src/home/homed-home.c b/src/home/homed-home.c index 79c568917a..1d8ededcae 100644 --- a/src/home/homed-home.c +++ b/src/home/homed-home.c @@ -19,6 +19,7 @@ #include "fileio.h" #include "filesystems.h" #include "fs-util.h" +#include "glyph-util.h" #include "home-util.h" #include "homed-home-bus.h" #include "homed-home.h" @@ -479,8 +480,9 @@ static void home_set_state(Home *h, HomeState state) { new_state = home_get_state(h); /* Query the new state, since the 'state' variable might be set to -1, * in which case we synthesize an high-level state on demand */ - log_info("%s: changing state %s → %s", h->user_name, + log_info("%s: changing state %s %s %s", h->user_name, home_state_to_string(old_state), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), home_state_to_string(new_state)); home_update_pin_fd(h, new_state); diff --git a/src/home/homed-manager.c b/src/home/homed-manager.c index a0253c34c1..12e0ff516c 100644 --- a/src/home/homed-manager.c +++ b/src/home/homed-manager.c @@ -23,6 +23,7 @@ #include "fileio.h" #include "format-util.h" #include "fs-util.h" +#include "glyph-util.h" #include "gpt.h" #include "home-util.h" #include "homed-conf.h" @@ -1936,8 +1937,10 @@ static int manager_rebalance_calculate(Manager *m) { (m->rebalance_state == REBALANCE_GROWING && h->rebalance_goal < h->rebalance_size)) h->rebalance_pending = false; else { - log_debug("Rebalancing home directory '%s' %s → %s.", h->user_name, - FORMAT_BYTES(h->rebalance_size), FORMAT_BYTES(h->rebalance_goal)); + log_debug("Rebalancing home directory '%s' %s %s %s.", h->user_name, + FORMAT_BYTES(h->rebalance_size), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), + FORMAT_BYTES(h->rebalance_goal)); h->rebalance_pending = true; } diff --git a/src/home/homework-luks.c b/src/home/homework-luks.c index 100b0e1650..bffd75bdd0 100644 --- a/src/home/homework-luks.c +++ b/src/home/homework-luks.c @@ -29,6 +29,7 @@ #include "filesystems.h" #include "fs-util.h" #include "fsck-util.h" +#include "glyph-util.h" #include "gpt.h" #include "home-util.h" #include "homework-luks.h" @@ -3304,12 +3305,15 @@ int home_resize_luks( if (resize_type == CAN_RESIZE_OFFLINE && FLAGS_SET(flags, HOME_SETUP_ALREADY_ACTIVATED)) return log_error_errno(SYNTHETIC_ERRNO(ETXTBSY), "File systems of this type can only be resized offline, but is currently online."); - log_info("Ready to resize image size %s → %s, partition size %s → %s, file system size %s → %s.", + log_info("Ready to resize image size %s %s %s, partition size %s %s %s, file system size %s %s %s.", FORMAT_BYTES(old_image_size), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), FORMAT_BYTES(new_image_size), FORMAT_BYTES(setup->partition_size), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), FORMAT_BYTES(new_partition_size), FORMAT_BYTES(old_fs_size), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), FORMAT_BYTES(new_fs_size)); r = prepare_resize_partition( diff --git a/src/home/homework-mount.c b/src/home/homework-mount.c index 3095a10ff9..e71e8cd853 100644 --- a/src/home/homework-mount.c +++ b/src/home/homework-mount.c @@ -7,6 +7,7 @@ #include "alloc-util.h" #include "fd-util.h" #include "format-util.h" +#include "glyph-util.h" #include "home-util.h" #include "homework-mount.h" #include "homework.h" @@ -296,7 +297,8 @@ int home_shift_uid(int dir_fd, const char *target, uid_t stored_uid, uid_t expos if (r < 0) return log_error_errno(errno, "Failed to apply UID/GID map: %m"); - log_debug("Applied uidmap mount to %s. Mapping is " UID_FMT " → " UID_FMT ".", strna(target), stored_uid, exposed_uid); + log_debug("Applied uidmap mount to %s. Mapping is " UID_FMT " %s " UID_FMT ".", + strna(target), stored_uid, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), exposed_uid); if (ret_mount_fd) *ret_mount_fd = TAKE_FD(mount_fd); diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c index 9db6a6a194..13ff6bcb1f 100644 --- a/src/libsystemd/sd-bus/sd-bus.c +++ b/src/libsystemd/sd-bus/sd-bus.c @@ -30,6 +30,7 @@ #include "def.h" #include "errno-util.h" #include "fd-util.h" +#include "glyph-util.h" #include "hexdecoct.h" #include "hostname-util.h" #include "io-util.h" @@ -521,7 +522,8 @@ void bus_set_state(sd_bus *bus, enum bus_state state) { if (state == bus->state) return; - log_debug("Bus %s: changing state %s → %s", strna(bus->description), table[bus->state], table[state]); + log_debug("Bus %s: changing state %s %s %s", strna(bus->description), + table[bus->state], special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), table[state]); bus->state = state; } diff --git a/src/libsystemd/sd-event/sd-event.c b/src/libsystemd/sd-event/sd-event.c index a37147d1d5..50f2bb2804 100644 --- a/src/libsystemd/sd-event/sd-event.c +++ b/src/libsystemd/sd-event/sd-event.c @@ -13,6 +13,7 @@ #include "event-source.h" #include "fd-util.h" #include "fs-util.h" +#include "glyph-util.h" #include "hashmap.h" #include "list.h" #include "macro.h" @@ -405,7 +406,8 @@ _public_ int sd_event_new(sd_event** ret) { e->epoll_fd = fd_move_above_stdio(e->epoll_fd); if (secure_getenv("SD_EVENT_PROFILE_DELAYS")) { - log_debug("Event loop profiling enabled. Logarithmic histogram of event loop iterations in the range 2^0 … 2^63 us will be logged every 5s."); + log_debug("Event loop profiling enabled. Logarithmic histogram of event loop iterations in the range 2^0 %s 2^63 us will be logged every 5s.", + special_glyph(SPECIAL_GLYPH_ELLIPSIS)); e->profile_delays = true; } diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index e781f54a3c..29a5609483 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -26,6 +26,7 @@ #include "fileio.h" #include "format-util.h" #include "fs-util.h" +#include "glyph-util.h" #include "ipvlan.h" #include "missing_network.h" #include "netlink-util.h" @@ -2036,7 +2037,8 @@ static int link_update_master(Link *link, sd_netlink_message *message) { else if (master_ifindex == 0) log_link_debug(link, "Detached from master interface: %i", link->master_ifindex); else - log_link_debug(link, "Master interface changed: %i → %i", link->master_ifindex, master_ifindex); + log_link_debug(link, "Master interface changed: %i %s %i", link->master_ifindex, + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), master_ifindex); link_drop_from_master(link); @@ -2151,8 +2153,10 @@ static int link_update_hardware_address(Link *link, sd_netlink_message *message) if (link->hw_addr.length == 0) log_link_debug(link, "Saved hardware address: %s", HW_ADDR_TO_STR(&addr)); else { - log_link_debug(link, "Hardware address is changed: %s → %s", - HW_ADDR_TO_STR(&link->hw_addr), HW_ADDR_TO_STR(&addr)); + log_link_debug(link, "Hardware address is changed: %s %s %s", + HW_ADDR_TO_STR(&link->hw_addr), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), + HW_ADDR_TO_STR(&addr)); hashmap_remove_value(link->manager->links_by_hw_addr, &link->hw_addr, link); } @@ -2248,8 +2252,9 @@ static int link_update_mtu(Link *link, sd_netlink_message *message) { return 0; if (link->mtu != 0) - log_link_debug(link, "MTU is changed: %"PRIu32" → %"PRIu32" (min: %"PRIu32", max: %"PRIu32")", - link->mtu, mtu, link->min_mtu, link->max_mtu); + log_link_debug(link, "MTU is changed: %"PRIu32" %s %"PRIu32" (min: %"PRIu32", max: %"PRIu32")", + link->mtu, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), mtu, + link->min_mtu, link->max_mtu); link->mtu = mtu; diff --git a/src/nss-resolve/nss-resolve.c b/src/nss-resolve/nss-resolve.c index e857d42db6..9ed2945a1e 100644 --- a/src/nss-resolve/nss-resolve.c +++ b/src/nss-resolve/nss-resolve.c @@ -10,6 +10,7 @@ #include "env-util.h" #include "errno-util.h" +#include "glyph-util.h" #include "in-addr-util.h" #include "macro.h" #include "nss-util.h" @@ -180,7 +181,9 @@ static int json_dispatch_address(const char *name, JsonVariant *variant, JsonDis b = json_variant_integer(i); if (b < 0 || b > 0xff) - return json_log(variant, flags, SYNTHETIC_ERRNO(EINVAL), "Element %zu of JSON field '%s' is out of range 0…255.", k, strna(name)); + return json_log(variant, flags, SYNTHETIC_ERRNO(EINVAL), + "Element %zu of JSON field '%s' is out of range 0%s255.", + k, strna(name), special_glyph(SPECIAL_GLYPH_ELLIPSIS)); buf.bytes[k++] = (uint8_t) b; } diff --git a/src/partition/repart.c b/src/partition/repart.c index a164dfefba..8044b2eef7 100644 --- a/src/partition/repart.c +++ b/src/partition/repart.c @@ -1086,7 +1086,8 @@ static int config_parse_size4096( *sz = parsed; if (*sz != parsed) - log_syntax(unit, LOG_NOTICE, filename, line, r, "Rounded %s= size %" PRIu64 " → %" PRIu64 ", a multiple of 4096.", lvalue, parsed, *sz); + log_syntax(unit, LOG_NOTICE, filename, line, r, "Rounded %s= size %" PRIu64 " %s %" PRIu64 ", a multiple of 4096.", + lvalue, parsed, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), *sz); return 0; } @@ -4276,8 +4277,8 @@ static int parse_argv(int argc, char *argv[]) { return log_error_errno(SYNTHETIC_ERRNO(ERANGE), "Specified image size too large, refusing."); if (rounded != parsed) - log_warning("Specified size is not a multiple of 4096, rounding up automatically. (%" PRIu64 " → %" PRIu64 ")", - parsed, rounded); + log_warning("Specified size is not a multiple of 4096, rounding up automatically. (%" PRIu64 " %s %" PRIu64 ")", + parsed, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), rounded); arg_size = rounded; arg_size_auto = false; diff --git a/src/resolve/resolved-dns-query.c b/src/resolve/resolved-dns-query.c index 175fbe2296..d9c6114836 100644 --- a/src/resolve/resolved-dns-query.c +++ b/src/resolve/resolved-dns-query.c @@ -4,6 +4,7 @@ #include "dns-domain.h" #include "dns-type.h" #include "event-util.h" +#include "glyph-util.h" #include "hostname-util.h" #include "local-addresses.h" #include "resolved-dns-query.h" @@ -991,7 +992,10 @@ static int dns_query_cname_redirect(DnsQuery *q, const DnsResourceRecord *cname) if (r < 0) return r; if (r > 0) - log_debug("Following CNAME/DNAME %s → %s.", dns_question_first_name(q->question_idna), dns_question_first_name(nq_idna)); + log_debug("Following CNAME/DNAME %s %s %s.", + dns_question_first_name(q->question_idna), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), + dns_question_first_name(nq_idna)); k = dns_question_is_equal(q->question_idna, q->question_utf8); if (k < 0) @@ -1005,7 +1009,10 @@ static int dns_query_cname_redirect(DnsQuery *q, const DnsResourceRecord *cname) if (k < 0) return k; if (k > 0) - log_debug("Following UTF8 CNAME/DNAME %s → %s.", dns_question_first_name(q->question_utf8), dns_question_first_name(nq_utf8)); + log_debug("Following UTF8 CNAME/DNAME %s %s %s.", + dns_question_first_name(q->question_utf8), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), + dns_question_first_name(nq_utf8)); } if (r == 0 && k == 0) /* No actual cname happened? */ diff --git a/src/resolve/resolved-dns-transaction.c b/src/resolve/resolved-dns-transaction.c index 9368f970fc..6acf251d60 100644 --- a/src/resolve/resolved-dns-transaction.c +++ b/src/resolve/resolved-dns-transaction.c @@ -8,6 +8,7 @@ #include "errno-list.h" #include "errno-util.h" #include "fd-util.h" +#include "glyph-util.h" #include "random-util.h" #include "resolved-dns-cache.h" #include "resolved-dns-transaction.h" @@ -2572,21 +2573,22 @@ int dns_transaction_request_dnssec_keys(DnsTransaction *t) { r = dns_name_parent(&name); if (r > 0) { type = DNS_TYPE_SOA; - log_debug("Requesting parent SOA (→ %s) to validate transaction %" PRIu16 " (%s, %s empty DS response).", - name, t->id, dns_resource_key_name(dns_transaction_key(t)), signed_status); + log_debug("Requesting parent SOA (%s %s) to validate transaction %" PRIu16 " (%s, %s empty DS response).", + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), name, t->id, + dns_resource_key_name(dns_transaction_key(t)), signed_status); } else name = NULL; } else if (IN_SET(dns_transaction_key(t)->type, DNS_TYPE_SOA, DNS_TYPE_NS)) { type = DNS_TYPE_DS; - log_debug("Requesting DS (→ %s) to validate transaction %" PRIu16 " (%s, %s empty SOA/NS response).", - name, t->id, name, signed_status); + log_debug("Requesting DS (%s %s) to validate transaction %" PRIu16 " (%s, %s empty SOA/NS response).", + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), name, t->id, name, signed_status); } else { type = DNS_TYPE_SOA; - log_debug("Requesting SOA (→ %s) to validate transaction %" PRIu16 " (%s, %s empty non-SOA/NS/DS response).", - name, t->id, name, signed_status); + log_debug("Requesting SOA (%s %s) to validate transaction %" PRIu16 " (%s, %s empty non-SOA/NS/DS response).", + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), name, t->id, name, signed_status); } if (name) { diff --git a/src/resolve/resolved-varlink.c b/src/resolve/resolved-varlink.c index 59ebd8c312..dc5a98acbd 100644 --- a/src/resolve/resolved-varlink.c +++ b/src/resolve/resolved-varlink.c @@ -1,5 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ +#include "glyph-util.h" #include "in-addr-util.h" #include "resolved-dns-synthesize.h" #include "resolved-varlink.h" @@ -370,7 +371,9 @@ static int json_dispatch_address(const char *name, JsonVariant *variant, JsonDis b = json_variant_integer(i); if (b < 0 || b > 0xff) - return json_log(variant, flags, SYNTHETIC_ERRNO(EINVAL), "Element %zu of JSON field '%s' is out of range 0…255.", k, strna(name)); + return json_log(variant, flags, SYNTHETIC_ERRNO(EINVAL), + "Element %zu of JSON field '%s' is out of range 0%s255.", + k, strna(name), special_glyph(SPECIAL_GLYPH_ELLIPSIS)); buf.bytes[k++] = (uint8_t) b; } diff --git a/src/run-generator/run-generator.c b/src/run-generator/run-generator.c index fb62209704..e3fb7f24fe 100644 --- a/src/run-generator/run-generator.c +++ b/src/run-generator/run-generator.c @@ -7,6 +7,7 @@ #include "fd-util.h" #include "fileio.h" #include "generator.h" +#include "glyph-util.h" #include "mkdir.h" #include "proc-cmdline.h" #include "special.h" @@ -116,7 +117,8 @@ static int generate(void) { /* And now redirect default.target to our new target */ p = strjoina(arg_dest, "/" SPECIAL_DEFAULT_TARGET); if (symlink("kernel-command-line.target", p) < 0) - return log_error_errno(errno, "Failed to link unit file kernel-command-line.target → %s: %m", p); + return log_error_errno(errno, "Failed to link unit file kernel-command-line.target %s %s: %m", + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), p); return 0; } diff --git a/src/shared/devnode-acl.c b/src/shared/devnode-acl.c index a87a348509..66e3a40f2f 100644 --- a/src/shared/devnode-acl.c +++ b/src/shared/devnode-acl.c @@ -12,6 +12,7 @@ #include "fd-util.h" #include "format-util.h" #include "fs-util.h" +#include "glyph-util.h" #include "set.h" #include "string-util.h" #include "util.h" @@ -212,8 +213,8 @@ int devnode_acl_all(const char *seat, SET_FOREACH(n, nodes) { int k; - log_debug("Changing ACLs at %s for seat %s (uid "UID_FMT"→"UID_FMT"%s%s)", - n, seat, old_uid, new_uid, + log_debug("Changing ACLs at %s for seat %s (uid "UID_FMT"%s"UID_FMT"%s%s)", + n, seat, old_uid, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), new_uid, del ? " del" : "", add ? " add" : ""); k = devnode_acl(n, flush, del, old_uid, add, new_uid); diff --git a/src/shared/dns-domain.c b/src/shared/dns-domain.c index d202fe5d86..1292a3359f 100644 --- a/src/shared/dns-domain.c +++ b/src/shared/dns-domain.c @@ -7,6 +7,7 @@ #include "alloc-util.h" #include "dns-domain.h" +#include "glyph-util.h" #include "hashmap.h" #include "hexdecoct.h" #include "hostname-util.h" @@ -1287,7 +1288,7 @@ int dns_name_apply_idna(const char *name, char **ret) { r = sym_idn2_lookup_u8((uint8_t*) name, (uint8_t**) &t, IDN2_NFC_INPUT | IDN2_TRANSITIONAL); - log_debug("idn2_lookup_u8: %s → %s", name, t); + log_debug("idn2_lookup_u8: %s %s %s", name, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), t); if (r == IDN2_OK) { if (!startswith(name, "xn--")) { _cleanup_free_ char *s = NULL; @@ -1301,8 +1302,9 @@ int dns_name_apply_idna(const char *name, char **ret) { } if (!streq_ptr(name, s)) { - log_debug("idn2 roundtrip failed: \"%s\" → \"%s\" → \"%s\", ignoring.", - name, t, s); + log_debug("idn2 roundtrip failed: \"%s\" %s \"%s\" %s \"%s\", ignoring.", + name, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), t, + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), s); *ret = NULL; return 0; } diff --git a/src/shared/install.c b/src/shared/install.c index c9834ae6c7..5ae39f6a04 100644 --- a/src/shared/install.c +++ b/src/shared/install.c @@ -522,7 +522,8 @@ static int create_symlink( } if (chroot_unit_symlinks_equivalent(lp, new_path, dest, old_path)) { - log_debug("Symlink %s → %s already exists", new_path, dest); + log_debug("Symlink %s %s %s already exists", + new_path, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), dest); return 1; } diff --git a/src/shared/mount-util.c b/src/shared/mount-util.c index e76e4a0b38..8cf16affcb 100644 --- a/src/shared/mount-util.c +++ b/src/shared/mount-util.c @@ -17,6 +17,7 @@ #include "fd-util.h" #include "fileio.h" #include "fs-util.h" +#include "glyph-util.h" #include "hashmap.h" #include "label.h" #include "libmount-util.h" @@ -672,8 +673,8 @@ int mount_verbose_full( log_debug("Bind-mounting %s on %s (%s \"%s\")...", what, where, strnull(fl), strempty(o)); else if (f & MS_MOVE) - log_debug("Moving mount %s → %s (%s \"%s\")...", - what, where, strnull(fl), strempty(o)); + log_debug("Moving mount %s %s %s (%s \"%s\")...", + what, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), where, strnull(fl), strempty(o)); else log_debug("Mounting %s (%s) on %s (%s \"%s\")...", strna(what), strna(type), where, strnull(fl), strempty(o)); diff --git a/src/shared/user-record.c b/src/shared/user-record.c index 7c1c2cd992..06f85265b9 100644 --- a/src/shared/user-record.c +++ b/src/shared/user-record.c @@ -6,6 +6,7 @@ #include "dns-domain.h" #include "env-util.h" #include "fs-util.h" +#include "glyph-util.h" #include "hexdecoct.h" #include "hostname-util.h" #include "memory-util.h" @@ -467,7 +468,9 @@ static int json_dispatch_umask(const char *name, JsonVariant *variant, JsonDispa k = json_variant_unsigned(variant); if (k > 0777) - return json_log(variant, flags, SYNTHETIC_ERRNO(EINVAL), "JSON field '%s' outside of valid range 0…0777.", strna(name)); + return json_log(variant, flags, SYNTHETIC_ERRNO(EINVAL), + "JSON field '%s' outside of valid range 0%s0777.", + strna(name), special_glyph(SPECIAL_GLYPH_ELLIPSIS)); *m = (mode_t) k; return 0; @@ -487,7 +490,9 @@ static int json_dispatch_access_mode(const char *name, JsonVariant *variant, Jso k = json_variant_unsigned(variant); if (k > 07777) - return json_log(variant, flags, SYNTHETIC_ERRNO(EINVAL), "JSON field '%s' outside of valid range 0…07777.", strna(name)); + return json_log(variant, flags, SYNTHETIC_ERRNO(EINVAL), + "JSON field '%s' outside of valid range 0%s07777.", + strna(name), special_glyph(SPECIAL_GLYPH_ELLIPSIS)); *m = (mode_t) k; return 0; @@ -578,7 +583,9 @@ static int json_dispatch_tasks_or_memory_max(const char *name, JsonVariant *vari k = json_variant_unsigned(variant); if (k <= 0 || k >= UINT64_MAX) - return json_log(variant, flags, SYNTHETIC_ERRNO(ERANGE), "JSON field '%s' is not in valid range %" PRIu64 "…%" PRIu64 ".", strna(name), (uint64_t) 1, UINT64_MAX-1); + return json_log(variant, flags, SYNTHETIC_ERRNO(ERANGE), + "JSON field '%s' is not in valid range %" PRIu64 "%s%" PRIu64 ".", + strna(name), (uint64_t) 1, special_glyph(SPECIAL_GLYPH_ELLIPSIS), UINT64_MAX-1); *limit = k; return 0; @@ -597,7 +604,10 @@ static int json_dispatch_weight(const char *name, JsonVariant *variant, JsonDisp k = json_variant_unsigned(variant); if (k <= CGROUP_WEIGHT_MIN || k >= CGROUP_WEIGHT_MAX) - return json_log(variant, flags, SYNTHETIC_ERRNO(ERANGE), "JSON field '%s' is not in valid range %" PRIu64 "…%" PRIu64 ".", strna(name), (uint64_t) CGROUP_WEIGHT_MIN, (uint64_t) CGROUP_WEIGHT_MAX); + return json_log(variant, flags, SYNTHETIC_ERRNO(ERANGE), + "JSON field '%s' is not in valid range %" PRIu64 "%s%" PRIu64 ".", + strna(name), (uint64_t) CGROUP_WEIGHT_MIN, + special_glyph(SPECIAL_GLYPH_ELLIPSIS), (uint64_t) CGROUP_WEIGHT_MAX); *weight = k; return 0; @@ -1010,7 +1020,9 @@ static int dispatch_rebalance_weight(const char *name, JsonVariant *variant, Jso else if (u == 0) *rebalance_weight = REBALANCE_WEIGHT_OFF; else - return json_log(variant, flags, SYNTHETIC_ERRNO(ERANGE), "Rebalance weight is out of valid range %" PRIu64 "…%" PRIu64 ".", REBALANCE_WEIGHT_MIN, REBALANCE_WEIGHT_MAX); + return json_log(variant, flags, SYNTHETIC_ERRNO(ERANGE), + "Rebalance weight is out of valid range %" PRIu64 "%s%" PRIu64 ".", + REBALANCE_WEIGHT_MIN, special_glyph(SPECIAL_GLYPH_ELLIPSIS), REBALANCE_WEIGHT_MAX); return 0; } diff --git a/src/shared/varlink.c b/src/shared/varlink.c index 104bd5717f..5178da19c8 100644 --- a/src/shared/varlink.c +++ b/src/shared/varlink.c @@ -6,6 +6,7 @@ #include "alloc-util.h" #include "errno-util.h" #include "fd-util.h" +#include "glyph-util.h" #include "hashmap.h" #include "io-util.h" #include "list.h" @@ -236,8 +237,9 @@ static void varlink_set_state(Varlink *v, VarlinkState state) { varlink_log(v, "Setting state %s", varlink_state_to_string(state)); else - varlink_log(v, "Changing state %s → %s", + varlink_log(v, "Changing state %s %s %s", varlink_state_to_string(v->state), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), varlink_state_to_string(state)); v->state = state; diff --git a/src/sysupdate/sysupdate-resource.c b/src/sysupdate/sysupdate-resource.c index edc524cc75..359b80ac1c 100644 --- a/src/sysupdate/sysupdate-resource.c +++ b/src/sysupdate/sysupdate-resource.c @@ -260,7 +260,8 @@ static int download_manifest( if (pipe2(pfd, O_CLOEXEC) < 0) return log_error_errno(errno, "Failed to allocate pipe: %m"); - log_info("%s Acquiring manifest file %s…", special_glyph(SPECIAL_GLYPH_DOWNLOAD), suffixed_url); + log_info("%s Acquiring manifest file %s%s", special_glyph(SPECIAL_GLYPH_DOWNLOAD), + suffixed_url, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); r = safe_fork("(sd-pull)", FORK_RESET_SIGNALS|FORK_DEATHSIG|FORK_LOG, &pid); if (r < 0) diff --git a/src/sysupdate/sysupdate-transfer.c b/src/sysupdate/sysupdate-transfer.c index e5bbbadc16..7baadbad80 100644 --- a/src/sysupdate/sysupdate-transfer.c +++ b/src/sysupdate/sysupdate-transfer.c @@ -1237,9 +1237,13 @@ int transfer_install_instance( r = symlink_atomic(relative, link_path); if (r < 0) - return log_error_errno(r, "Failed to update current symlink '%s' → '%s': %m", link_path, relative); + return log_error_errno(r, "Failed to update current symlink '%s' %s '%s': %m", + link_path, + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), + relative); - log_info("Updated symlink '%s' → '%s'.", link_path, relative); + log_info("Updated symlink '%s' %s '%s'.", + link_path, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), relative); } } diff --git a/src/sysupdate/sysupdate.c b/src/sysupdate/sysupdate.c index 76c5bae051..7dcfac1261 100644 --- a/src/sysupdate/sysupdate.c +++ b/src/sysupdate/sysupdate.c @@ -170,7 +170,7 @@ static int context_load_installed_instances(Context *c) { assert(c); - log_info("Discovering installed instances…"); + log_info("Discovering installed instances%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); for (size_t i = 0; i < c->n_transfers; i++) { r = resource_load_instances( @@ -189,7 +189,7 @@ static int context_load_available_instances(Context *c) { assert(c); - log_info("Discovering available instances…"); + log_info("Discovering available instances%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); for (size_t i = 0; i < c->n_transfers; i++) { assert(c->transfers[i]); @@ -346,13 +346,13 @@ static int context_discover_update_sets(Context *c) { assert(c); - log_info("Determining installed update sets…"); + log_info("Determining installed update sets%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); r = context_discover_update_sets_by_flag(c, UPDATE_INSTALLED); if (r < 0) return r; - log_info("Determining available update sets…"); + log_info("Determining available update sets%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); r = context_discover_update_sets_by_flag(c, UPDATE_AVAILABLE); if (r < 0) @@ -671,9 +671,9 @@ static int context_vacuum( assert(c); if (space == 0) - log_info("Making room…"); + log_info("Making room%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); else - log_info("Making room for %" PRIu64 " updates…", space); + log_info("Making room for %" PRIu64 " updates%s", space,special_glyph(SPECIAL_GLYPH_ELLIPSIS)); for (size_t i = 0; i < c->n_transfers; i++) { r = transfer_vacuum(c->transfers[i], space, extra_protected_version); @@ -1035,7 +1035,7 @@ static int verb_pending_or_reboot(int argc, char **argv, void *userdata) { if (r < 0) return r; - log_info("Determining installed update sets…"); + log_info("Determining installed update sets%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); r = context_discover_update_sets_by_flag(context, UPDATE_INSTALLED); if (r < 0) diff --git a/src/sysusers/sysusers.c b/src/sysusers/sysusers.c index 1061b4e603..c60dee812f 100644 --- a/src/sysusers/sysusers.c +++ b/src/sysusers/sysusers.c @@ -405,7 +405,7 @@ static int write_temporary_passwd(const char *passwd_path, FILE **tmpfile, char return 0; if (arg_dry_run) { - log_info("Would write /etc/passwd…"); + log_info("Would write /etc/passwd%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); return 0; } @@ -529,7 +529,7 @@ static int write_temporary_shadow(const char *shadow_path, FILE **tmpfile, char return 0; if (arg_dry_run) { - log_info("Would write /etc/shadow…"); + log_info("Would write /etc/shadow%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); return 0; } @@ -667,7 +667,7 @@ static int write_temporary_group(const char *group_path, FILE **tmpfile, char ** return 0; if (arg_dry_run) { - log_info("Would write /etc/group…"); + log_info("Would write /etc/group%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); return 0; } @@ -773,7 +773,7 @@ static int write_temporary_gshadow(const char * gshadow_path, FILE **tmpfile, ch return 0; if (arg_dry_run) { - log_info("Would write /etc/gshadow…"); + log_info("Would write /etc/gshadow%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); return 0; } @@ -2002,13 +2002,13 @@ static int read_config_files(char **args) { STRV_FOREACH(f, files) if (p && path_equal(*f, p)) { - log_debug("Parsing arguments at position \"%s\"…", *f); + log_debug("Parsing arguments at position \"%s\"%s", *f, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); r = parse_arguments(args); if (r < 0) return r; } else { - log_debug("Reading config file \"%s\"…", *f); + log_debug("Reading config file \"%s\"%s", *f, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); /* Just warn, ignore result otherwise */ (void) read_config_file(*f, true); diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c index 94973c2aa5..6aaf31867d 100644 --- a/src/tmpfiles/tmpfiles.c +++ b/src/tmpfiles/tmpfiles.c @@ -3526,7 +3526,7 @@ static int read_config_file(char **config_dirs, const char *fn, bool ignore_enoe assert(fn); if (streq(fn, "-")) { - log_debug("Reading config from stdin…"); + log_debug("Reading config from stdin%s", special_glyph(SPECIAL_GLYPH_ELLIPSIS)); fn = "<stdin>"; f = stdin; } else { @@ -3540,7 +3540,7 @@ static int read_config_file(char **config_dirs, const char *fn, bool ignore_enoe return log_error_errno(r, "Failed to open '%s': %m", fn); } - log_debug("Reading config file \"%s\"…", pp); + log_debug("Reading config file \"%s\"%s", pp, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); fn = pp; f = _f; } @@ -3643,7 +3643,7 @@ static int read_config_files(char **config_dirs, char **args, bool *invalid_conf STRV_FOREACH(f, files) if (p && path_equal(*f, p)) { - log_debug("Parsing arguments at position \"%s\"…", *f); + log_debug("Parsing arguments at position \"%s\"%s", *f, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); r = parse_arguments(config_dirs, args, invalid_config); if (r < 0) diff --git a/src/udev/udev-builtin-net_id.c b/src/udev/udev-builtin-net_id.c index f2ea2a7cd5..59db7641b5 100644 --- a/src/udev/udev-builtin-net_id.c +++ b/src/udev/udev-builtin-net_id.c @@ -28,6 +28,7 @@ #include "dirent-util.h" #include "fd-util.h" #include "fileio.h" +#include "glyph-util.h" #include "netif-naming-scheme.h" #include "parse-util.h" #include "proc-cmdline.h" @@ -215,9 +216,9 @@ static int dev_pci_onboard(sd_device *dev, const LinkInfo *info, NetNames *names l = strpcpyf(&s, l, "d%lu", dev_port); if (l == 0) names->pci_onboard[0] = '\0'; - log_device_debug(dev, "Onboard index identifier: index=%lu phys_port=%s dev_port=%lu → %s", + log_device_debug(dev, "Onboard index identifier: index=%lu phys_port=%s dev_port=%lu %s %s", idx, strempty(info->phys_port_name), dev_port, - empty_to_na(names->pci_onboard)); + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), empty_to_na(names->pci_onboard)); if (sd_device_get_sysattr_value(names->pcidev, "label", &names->pci_onboard_label) >= 0) log_device_debug(dev, "Onboard label from PCI device: %s", names->pci_onboard_label); @@ -393,9 +394,9 @@ static int dev_pci_slot(sd_device *dev, const LinkInfo *info, NetNames *names) { if (l == 0) names->pci_path[0] = '\0'; - log_device_debug(dev, "PCI path identifier: domain=%u bus=%u slot=%u func=%u phys_port=%s dev_port=%lu → %s", + log_device_debug(dev, "PCI path identifier: domain=%u bus=%u slot=%u func=%u phys_port=%s dev_port=%lu %s %s", domain, bus, slot, func, strempty(info->phys_port_name), dev_port, - empty_to_na(names->pci_path)); + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), empty_to_na(names->pci_path)); /* ACPI _SUN — slot user number */ r = sd_device_new_from_subsystem_sysname(&pci, "subsystem", "pci"); @@ -487,9 +488,9 @@ static int dev_pci_slot(sd_device *dev, const LinkInfo *info, NetNames *names) { if (l == 0) names->pci_slot[0] = '\0'; - log_device_debug(dev, "Slot identifier: domain=%u slot=%"PRIu32" func=%u phys_port=%s dev_port=%lu → %s", + log_device_debug(dev, "Slot identifier: domain=%u slot=%"PRIu32" func=%u phys_port=%s dev_port=%lu %s %s", domain, hotplug_slot, func, strempty(info->phys_port_name), dev_port, - empty_to_na(names->pci_slot)); + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), empty_to_na(names->pci_slot)); } return 0; @@ -529,7 +530,8 @@ static int names_vio(sd_device *dev, NetNames *names) { xsprintf(names->vio_slot, "v%u", slotid); names->type = NET_VIO; - log_device_debug(dev, "Vio slot identifier: slotid=%u → %s", slotid, names->vio_slot); + log_device_debug(dev, "Vio slot identifier: slotid=%u %s %s", + slotid, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), names->vio_slot); return 0; } @@ -596,8 +598,8 @@ static int names_platform(sd_device *dev, NetNames *names, bool test) { xsprintf(names->platform_path, "a%s%xi%u", vendor, model, instance); names->type = NET_PLATFORM; - log_device_debug(dev, "Platform identifier: vendor=%s model=%u instance=%u → %s", - vendor, model, instance, names->platform_path); + log_device_debug(dev, "Platform identifier: vendor=%s model=%u instance=%u %s %s", + vendor, model, instance, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), names->platform_path); return 0; } @@ -718,8 +720,9 @@ static int names_usb(sd_device *dev, NetNames *names) { if (l == 0) return log_device_debug_errno(dev, SYNTHETIC_ERRNO(ENAMETOOLONG), "Generated USB name would be too long."); - log_device_debug(dev, "USB name identifier: ports=%.*s config=%s interface=%s → %s", - (int) strlen(ports), sysname + (ports - name), config, interf, names->usb_ports); + log_device_debug(dev, "USB name identifier: ports=%.*s config=%s interface=%s %s %s", + (int) strlen(ports), sysname + (ports - name), config, interf, + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), names->usb_ports); names->type = NET_USB; return 0; } @@ -752,7 +755,8 @@ static int names_bcma(sd_device *dev, NetNames *names) { xsprintf(names->bcma_core, "b%u", core); names->type = NET_BCMA; - log_device_debug(dev, "BCMA core identifier: core=%u → \"%s\"", core, names->bcma_core); + log_device_debug(dev, "BCMA core identifier: core=%u %s \"%s\"", + core, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), names->bcma_core); return 0; } @@ -813,7 +817,8 @@ static int names_ccw(sd_device *dev, NetNames *names) { return log_device_debug_errno(dev, SYNTHETIC_ERRNO(ENAMETOOLONG), "Generated CCW name would be too long."); names->type = NET_CCW; - log_device_debug(dev, "CCW identifier: ccw_busid=%s → \"%s\"", bus_id, names->ccw_busid); + log_device_debug(dev, "CCW identifier: ccw_busid=%s %s \"%s\"", + bus_id, special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), names->ccw_busid); return 0; } @@ -1027,8 +1032,9 @@ static int builtin_net_id(sd_device *dev, sd_netlink **rtnl, int argc, char *arg xsprintf(str, "%sx%s", prefix, HW_ADDR_TO_STR_FULL(&info.hw_addr, HW_ADDR_TO_STRING_NO_COLON)); udev_builtin_add_property(dev, test, "ID_NET_NAME_MAC", str); - log_device_debug(dev, "MAC address identifier: hw_addr=%s → %s", - HW_ADDR_TO_STR(&info.hw_addr), str + strlen(prefix)); + log_device_debug(dev, "MAC address identifier: hw_addr=%s %s %s", + HW_ADDR_TO_STR(&info.hw_addr), + special_glyph(SPECIAL_GLYPH_ARROW_RIGHT), str + strlen(prefix)); ieee_oui(dev, &info, test); } diff --git a/src/udev/udevadm-lock.c b/src/udev/udevadm-lock.c index 32935e8aa4..60d6507aaf 100644 --- a/src/udev/udevadm-lock.c +++ b/src/udev/udevadm-lock.c @@ -235,7 +235,7 @@ static int lock_device( if (deadline == USEC_INFINITY) { - log_info("Device '%s' is currently locked, waiting…", path); + log_info("Device '%s' is currently locked, waiting%s", path, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); if (flock(fd, LOCK_EX) < 0) return log_error_errno(errno, "Failed to lock device '%s': %m", path); @@ -251,8 +251,9 @@ static int lock_device( * instead do the lock out-of-process: fork off a child that does the locking, and * that we'll wait on and kill if it takes too long. */ - log_info("Device '%s' is currently locked, waiting %s…", - path, FORMAT_TIMESPAN(usec_sub_unsigned(deadline, now(CLOCK_MONOTONIC)), 0)); + log_info("Device '%s' is currently locked, waiting %s%s", + path, FORMAT_TIMESPAN(usec_sub_unsigned(deadline, now(CLOCK_MONOTONIC)), 0), + special_glyph(SPECIAL_GLYPH_ELLIPSIS)); BLOCK_SIGNALS(SIGCHLD); @@ -311,7 +312,7 @@ static int lock_device( } } - log_debug("Successfully locked %s (%u:%u)…", path, major(devno), minor(devno)); + log_debug("Successfully locked %s (%u:%u)%s", path, major(devno), minor(devno), special_glyph(SPECIAL_GLYPH_ELLIPSIS)); return TAKE_FD(fd); } diff --git a/src/xdg-autostart-generator/xdg-autostart-generator.c b/src/xdg-autostart-generator/xdg-autostart-generator.c index 91dda27d43..918f6599ce 100644 --- a/src/xdg-autostart-generator/xdg-autostart-generator.c +++ b/src/xdg-autostart-generator/xdg-autostart-generator.c @@ -7,6 +7,7 @@ #include "dirent-util.h" #include "fd-util.h" #include "generator.h" +#include "glyph-util.h" #include "hashmap.h" #include "log.h" #include "main-func.h" @@ -43,7 +44,7 @@ static int enumerate_xdg_autostart(Hashmap *all_services) { STRV_FOREACH(path, autostart_dirs) { _cleanup_closedir_ DIR *d = NULL; - log_debug("Scanning autostart directory \"%s\"…", *path); + log_debug("Scanning autostart directory \"%s\"%s", *path, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); d = opendir(*path); if (!d) { log_full_errno(errno == ENOENT ? LOG_DEBUG : LOG_WARNING, errno, diff --git a/src/xdg-autostart-generator/xdg-autostart-service.c b/src/xdg-autostart-generator/xdg-autostart-service.c index 9c4a7f2404..0c14b6ea65 100644 --- a/src/xdg-autostart-generator/xdg-autostart-service.c +++ b/src/xdg-autostart-generator/xdg-autostart-service.c @@ -483,8 +483,9 @@ static int xdg_autostart_generate_desktop_condition( if (!e_autostart_condition) return log_oom(); - log_debug("%s: ExecCondition converted to %s --condition \"%s\"…", - service->path, gnome_autostart_condition_path, e_autostart_condition); + log_debug("%s: ExecCondition converted to %s --condition \"%s\"%s", + service->path, gnome_autostart_condition_path, e_autostart_condition, + special_glyph(SPECIAL_GLYPH_ELLIPSIS)); fprintf(f, "ExecCondition=%s --condition \"%s\"\n", @@ -638,6 +639,7 @@ int xdg_autostart_service_generate_unit( if (r < 0) return r; - log_debug("%s: symlinking %s in xdg-desktop-autostart.target/.wants…", service->path, service->name); + log_debug("%s: symlinking %s in xdg-desktop-autostart.target/.wants%s", + service->path, service->name, special_glyph(SPECIAL_GLYPH_ELLIPSIS)); return generator_add_symlink(dest, "xdg-desktop-autostart.target", "wants", service->name); } |