/* Assuming we woke due to the child exiting. */
if (waitid(P_PID, pid, &status, WEXITED|WNOHANG) == 0) {
if (status.si_pid == pid) {
- /* This is the correct child.*/
+ /* This is the correct child. */
if (status.si_code == CLD_EXITED)
return (status.si_status == 0) ? 0 : -EPROTO;
else
* invocations or so. That's because we don't really care about the quality here. We
* generally prefer using RDRAND if the caller allows us to, since this way we won't upset
* the kernel's random subsystem by accessing it before the pool is initialized (after all it
- * will kmsg log about every attempt to do so)..*/
+ * will kmsg log about every attempt to do so). */
for (;;) {
unsigned long u;
size_t m;
/* If there's no embedded NUL byte, then the size needs to match the whole
* structure or the structure with one extra NUL byte suffixed. (Yeah, Linux is awful,
* and considers both equivalent: getsockname() even extends sockaddr_un beyond its
- * size if the path is non NUL terminated.)*/
+ * size if the path is non NUL terminated.) */
if (!IN_SET(a->size, sizeof(a->sockaddr.un.sun_path), sizeof(a->sockaddr.un.sun_path)+1))
return -EINVAL;
}
/* Don't allow paths larger than the space in sockaddr_un. Note that we are a tiny bit more restrictive than
* the kernel is: we insist on NUL termination (both for abstract namespace and regular file system socket
* addresses!), which the kernel doesn't. We do this to reduce chance of incompatibility with other apps that
- * do not expect non-NUL terminated file system path*/
+ * do not expect non-NUL terminated file system path. */
if (l+1 > sizeof(ret->sun_path))
return -EINVAL;
s = extract_multiplier(p + strspn(p, WHITESPACE), &multiplier);
if (s == p && *s != '\0')
- /* Don't allow '12.34.56', but accept '12.34 .56' or '12.34s.56'*/
+ /* Don't allow '12.34.56', but accept '12.34 .56' or '12.34s.56' */
return -EINVAL;
p = s;
r += k;
}
- /* Don't allow "0.-0", "3.+1", "3. 1", "3.sec" or "3.hoge"*/
+ /* Don't allow "0.-0", "3.+1", "3. 1", "3.sec" or "3.hoge" */
if (b == e + 1)
return -EINVAL;
}
s = extract_nsec_multiplier(p + strspn(p, WHITESPACE), &multiplier);
if (s == p && *s != '\0')
- /* Don't allow '12.34.56', but accept '12.34 .56' or '12.34s.56'*/
+ /* Don't allow '12.34.56', but accept '12.34 .56' or '12.34s.56' */
return -EINVAL;
p = s;
r += k;
}
- /* Don't allow "0.-0", "3.+1", "3. 1", "3.sec" or "3.hoge"*/
+ /* Don't allow "0.-0", "3.+1", "3. 1", "3.sec" or "3.hoge" */
if (b == e + 1)
return -EINVAL;
}
r = readlink_malloc("/etc/localtime", &t);
if (r == -ENOENT) {
- /* If the symlink does not exist, assume "UTC", like glibc does*/
+ /* If the symlink does not exist, assume "UTC", like glibc does */
z = strdup("UTC");
if (!z)
return -ENOMEM;
/* Then, change the ownership of the whole tree, if necessary. When dynamic users are used we
* drop the suid/sgid bits, since we really don't want SUID/SGID files for dynamic UID/GID
- * assignments to exist.*/
+ * assignments to exist. */
r = path_chown_recursive(pp ?: p, uid, gid, context->dynamic_user ? 01777 : 07777);
if (r < 0)
goto fail;
* Yes it's nasty playing games with /dev/ and /dev/shm/ like this, since it does not exist
* for this purpose, but there are few other candidates that work equally well for us, and
* given that the we do this in a privately namespaced short-lived single-threaded process
- * that no one else sees this should be OK to do.*/
+ * that no one else sees this should be OK to do. */
r = mount_nofollow_verbose(LOG_DEBUG, NULL, "/dev", NULL, MS_SLAVE|MS_REC, NULL); /* Turn off propagation from our namespace to host */
if (r < 0)
_cleanup_strv_free_ char **suggested_paths = NULL;
/* On top of that, make sure we bypass our own NSS module nss-systemd comprehensively for any NSS
- * checks, if DynamicUser=1 is used, as we shouldn't create a feedback loop with ourselves here.*/
+ * checks, if DynamicUser=1 is used, as we shouldn't create a feedback loop with ourselves here. */
if (putenv((char*) "SYSTEMD_NSS_DYNAMIC_BYPASS=1") != 0) {
*exit_status = EXIT_USER;
return log_unit_error_errno(unit, errno, "Failed to update environment: %m");
/* Start by flushing out all jobs and units, all generated units, all runtime environments, all dynamic users
* and everything else that is worth flushing out. We'll get it all back from the serialization — if we need
- * it.*/
+ * it. */
manager_clear_jobs_and_units(m);
lookup_paths_flush_generator(&m->lookup_paths);
if (dual_timestamp_is_set(&m->timestamps[MANAGER_TIMESTAMP_INITRD])) {
- /* The initrd case on bare-metal*/
+ /* The initrd case on bare-metal */
kernel_usec = m->timestamps[MANAGER_TIMESTAMP_INITRD].monotonic - m->timestamps[MANAGER_TIMESTAMP_KERNEL].monotonic;
initrd_usec = m->timestamps[MANAGER_TIMESTAMP_USERSPACE].monotonic - m->timestamps[MANAGER_TIMESTAMP_INITRD].monotonic;
format_timespan(userspace, sizeof(userspace), userspace_usec, USEC_PER_MSEC),
format_timespan(sum, sizeof(sum), total_usec, USEC_PER_MSEC)));
} else {
- /* The initrd-less case on bare-metal*/
+ /* The initrd-less case on bare-metal */
kernel_usec = m->timestamps[MANAGER_TIMESTAMP_USERSPACE].monotonic - m->timestamps[MANAGER_TIMESTAMP_KERNEL].monotonic;
initrd_usec = 0;
/* This unit was generated because /proc/self/mountinfo reported it. Remember this, so that by the time we load
* the unit file for it (and thus add in extra deps right after) we know what source to attributes the deps
- * to.*/
+ * to. */
MOUNT(u)->from_proc_self_mountinfo = true;
/* We have only allocated the stub now, let's enqueue this unit for loading now, so that everything else is
assert(u);
/* Checks whether this unit is bound to another unit that is inactive, i.e. whether we should stop
- * because the other unit is down.*/
+ * because the other unit is down. */
if (unit_active_state(u) != UNIT_ACTIVE || u->job) {
/* Don't clean up while the unit is transitioning or is even inactive. */
GElf_Phdr mem, *program_header;
Elf_Data *data;
- /* The core file stores the ELF files in the PT_LOAD segment .*/
+ /* The core file stores the ELF files in the PT_LOAD segment. */
program_header = gelf_getphdr(c->elf, i, &mem);
if (!program_header || program_header->p_type != PT_LOAD)
continue;
&keyslot,
&token);
if (r == -ENXIO)
- /* No further TPM2 tokens found in the LUKS2 header.*/
+ /* No further TPM2 tokens found in the LUKS2 header. */
return log_debug_errno(SYNTHETIC_ERRNO(EAGAIN),
found_some
? "No TPM2 metadata matching the current system state found in LUKS2 header, falling back to traditional unlocking."
/* Note that the 'state' field is only set to a state while we are doing something (i.e. activating,
* deactivating, creating, removing, and such), or when the home is an "unfixated" one. When we are
* done with an operation we invalidate the state. This is hint for home_get_state() to check the
- * state on request as needed from the mount table and similar.*/
+ * state on request as needed from the mount table and similar. */
HomeState state;
int signed_locally; /* signed only by us */
/* Round down to the nearest 1K size. Note that Linux generally handles block devices with 512 blocks only,
* but actually doesn't accept uneven numbers in many cases. To avoid any confusion around this we'll
- * strictly round disk sizes down to the next 1K boundary.*/
+ * strictly round disk sizes down to the next 1K boundary. */
#define DISK_SIZE_ROUND_DOWN(x) ((x) & ~UINT64_C(1023))
int run_mark_dirty(int fd, bool b) {
if (!user_record_compatible(host, embedded))
return -EREMCHG;
- /* Embedded identities may not contain secrets or binding info*/
+ /* Embedded identities may not contain secrets or binding info */
if ((embedded->mask & (USER_RECORD_SECRET|USER_RECORD_BINDING)) != 0)
return -EINVAL;
static bool uid_for_system_journal(uid_t uid) {
- /* Returns true if the specified UID shall get its data stored in the system journal*/
+ /* Returns true if the specified UID shall get its data stored in the system journal. */
return uid_is_system(uid) || uid_is_dynamic(uid) || uid == UID_NOBODY;
}
* since the --user socket path depends on $XDG_RUNTIME_DIR which is set via PAM. Thus, to be
* able to connect, we need to have a PAM session. Our way out? We use systemd-run to get
* into the container and acquire a PAM session there, and then invoke systemd-stdio-bridge
- * in it, which propagates the bus transport to us.*/
+ * in it, which propagates the bus transport to us. */
if (rhs) {
if (rhs > machine)
assert(bf->location_type == LOCATION_SEEK);
/* If contents, timestamps and seqnum match, these entries are
- * identical*/
+ * identical. */
if (sd_id128_equal(af->current_boot_id, bf->current_boot_id) &&
af->current_monotonic == bf->current_monotonic &&
af->current_realtime == bf->current_realtime &&
int r;
/* The user may be already removed. So, first try to parse the string by parse_uid(),
- * and if it fails, fall back to get_user_creds().*/
+ * and if it fails, fall back to get_user_creds(). */
if (parse_uid(user, &uid) < 0) {
r = get_user_creds(&user, &uid, NULL, NULL, NULL, 0);
if (r < 0)
r = sd_netlink_message_read_string(message, IFLA_IFNAME, &ifname);
if (r == -ENODATA)
- /* Hmm?? But ok.*/
+ /* Hmm?? But ok. */
return 0;
if (r < 0)
return log_link_debug_errno(link, r, "Failed to read interface name in RTM_NEWLINK message: %m");
/* LLDP should be handled on bridge and bond slaves as those have a direct connection to their peers,
* not on the bridge/bond master. Linux doesn't even (by default) forward lldp packets to the bridge
- * master.*/
+ * master. */
if (link->kind && STR_IN_SET(link->kind, "bridge", "bond"))
return false;
Hashmap *route_table_numbers_by_name;
Hashmap *route_table_names_by_number;
- /* For link speed meter*/
+ /* For link speed meter */
bool use_speed_meter;
sd_event_source *speed_meter_event_source;
usec_t speed_meter_interval_usec;
OrderedHashmap *dhcp_client_send_options;
OrderedHashmap *dhcp_client_send_vendor_options;
- /* DHCPv6 Client support*/
+ /* DHCPv6 Client support */
bool dhcp6_use_address;
bool dhcp6_use_dns;
bool dhcp6_use_dns_set;
return log_link_debug_errno(link, r, "Could not open IFLA_AF_SPEC container: %m");
if (!link->network->bridge) {
- /* master needs BRIDGE_FLAGS_SELF flag*/
+ /* master needs BRIDGE_FLAGS_SELF flag */
r = sd_netlink_message_append_u16(req, IFLA_BRIDGE_FLAGS, BRIDGE_FLAGS_SELF);
if (r < 0)
return log_link_debug_errno(link, r, "Could not append IFLA_BRIDGE_FLAGS attribute: %m");
* --volatile=) without this interfering with our ability to access files such as
* /etc/localtime to copy into the container. Note that we use a fixed place for this
* (instead of a temporary directory, since we are living in our own mount namspace here
- * already, and thus don't need to be afraid of colliding with anyone else's mounts).*/
+ * already, and thus don't need to be afraid of colliding with anyone else's mounts). */
(void) mkdir_p("/run/systemd/nspawn-root", 0755);
r = mount_nofollow_verbose(LOG_ERR, "/", "/run/systemd/nspawn-root", NULL, MS_BIND|MS_REC, NULL);
r = context_open_copy_block_paths(
context,
arg_root,
- loop_device ? loop_device->devno : /* if --image= is specified, only allow partitions on the loopback device*/
+ loop_device ? loop_device->devno : /* if --image= is specified, only allow partitions on the loopback device */
arg_root && !arg_image ? 0 : /* if --root= is specified, don't accept any block device */
(dev_t) -1); /* if neither is specified, make no restrictions */
if (r < 0)
* Hence we first check of the answers we collected are sufficient to answer all our questions
* directly. If one question wasn't answered we go on, waiting for more replies. However, if there's
* a CNAME/DNAME response we use it, and redirect to it, regardless if it was a response to the A or
- * the AAAA query.*/
+ * the AAAA query. */
DNS_QUESTION_FOREACH(k, question) {
bool match = false;
/* We are authoritative for everything synthetic (except if a previous CNAME/DNAME) wasn't
* synthetic. (Note: SD_RESOLVED_SYNTHETIC is reset on each CNAME/DNAME, hence the explicit check for
- * previous synthetic DNAME/CNAME redirections.)*/
+ * previous synthetic DNAME/CNAME redirections.) */
if ((q->answer_query_flags & SD_RESOLVED_SYNTHETIC) && !q->previous_redirect_non_synthetic)
return true;
/* We are also authoritative for everything coming only from the trust anchor and the local
* zones. (Note: the SD_RESOLVED_FROM_xyz flags we merge on each redirect, hence no need to
- * explicitly check previous redirects here.)*/
+ * explicitly check previous redirects here.) */
return (q->answer_query_flags & SD_RESOLVED_FROM_MASK & ~(SD_RESOLVED_FROM_TRUST_ANCHOR | SD_RESOLVED_FROM_ZONE)) == 0;
}
/* Never give more than requested. If we hit a column like this, there's more
* space to allocate to other columns which means we need to restart the
* iteration. However, if we hit a column like this, let's assign it the space
- * it wanted for good early.*/
+ * it wanted for good early. */
w = requested_width[j];
restart = true;
* rather than blocking indefinitely. If the filesysten is
* "busy", this may allow processes to die, thus making the
* filesystem less busy so the unmount might succeed (rather
- * then return EBUSY).*/
+ * than return EBUSY). */
r = umount2(m->path, MNT_FORCE);
if (r < 0)
log_full_errno(umount_log_level, errno, "Failed to unmount %s: %m", m->path);
if (rename(dst_tmp, backup) < 0)
return errno;
- dst_tmp = mfree(dst_tmp); /* disable the unlink_and_freep() hook now that the file has been renamed*/
+ dst_tmp = mfree(dst_tmp); /* disable the unlink_and_freep() hook now that the file has been renamed */
return 0;
}
int booted = sd_booted(); /* If this is run in build environments such as koji, /dev might be a
* reguar fs. Don't assume too much if not running under systemd. */
- log_info("/* %s (sd_booted=%d)*/", __func__, booted);
+ log_info("/* %s (sd_booted=%d) */", __func__, booted);
test_path_is_encrypted_one("/home", -1);
test_path_is_encrypted_one("/var", -1);
}
static void test_path_is_valid_and_safe_one(const char *p, bool ret) {
- log_debug("/* %s(\"%s\")*/", __func__, strnull(p));
+ log_debug("/* %s(\"%s\") */", __func__, strnull(p));
assert_se(path_is_valid(p) == ret);
if (ret)
assert_se(write_string_file(path, "herpdederp\n", WRITE_STRING_FILE_CREATE) == 0);
assert_se(read_resource_pressure(path, PRESSURE_TYPE_SOME, &rp) < 0);
- /* Pressure file with some invalid values*/
+ /* Pressure file with some invalid values */
assert_se(write_string_file(path, "some avg10=0.22=55 avg60=0.17=8 avg300=1.11=00 total=58761459\n"
"full avg10=0.23=55 avg60=0.16=8 avg300=1.08=00 total=58464525", WRITE_STRING_FILE_CREATE) == 0);
assert_se(read_resource_pressure(path, PRESSURE_TYPE_SOME, &rp) < 0);
unsigned end;
};
-/* key code ranges above BTN_MISC (start is inclusive, stop is exclusive)*/
+/* key code ranges above BTN_MISC (start is inclusive, stop is exclusive) */
static const struct range high_key_blocks[] = {
{ KEY_OK, BTN_DPAD_UP },
{ KEY_ALS_TOGGLE, BTN_TRIGGER_HAPPY }
return NULL;
if (bus != 0)
- /* Devices behind port multiplier have a bus != 0*/
+ /* Devices behind port multiplier have a bus != 0 */
path_prepend(path, "ata-%s.%u.0", port_no, bus);
else
/* Master/slave are distinguished by target id */
if (r < 0)
log_debug_errno(r, "Failed to reset OOM score, ignoring: %m");
- /* Clear unnecessary data in Manager object.*/
+ /* Clear unnecessary data in Manager object. */
manager_clear_for_worker(manager);
r = sd_event_new(&manager->event);