1
0
mirror of https://github.com/systemd/systemd synced 2025-09-29 00:34:45 +02:00

Compare commits

..

No commits in common. "df49792e01c2f6e49f21271e4d0abe0723b854b3" and "712fffd4b80fcc37ae96a18dd1d930b872d68f6b" have entirely different histories.

9 changed files with 18 additions and 41 deletions

10
TODO
View File

@ -20,12 +20,6 @@ Janitorial Clean-ups:
Features:
* add "systemd-analyze debug" + AttachDebugger= in unit files: The former
specifies a command to execute; the latter specifies that an already running
"systemd-analyze debug" instance shall be contacted and execution paused
until it gives an OK. That way, tools like gdb or strace can be safely be
invoked on processes forked off PID 1.
* expose MS_NOSYMFOLLOW in various places
* tpm2: support a PIN policy, i.e. allowing windows-style short authentication
@ -814,6 +808,9 @@ Features:
picked up by systemd unless they contain a medium. This would mirror
the behaviour we already have for CD drives.
* networkd/udev: implement SR_IOV configuration in .link files:
http://lists.freedesktop.org/archives/systemd-devel/2015-January/027451.html
* hostnamectl: show root image uuid
* Find a solution for SMACK capabilities stuff:
@ -1322,6 +1319,7 @@ Features:
for all routes to it. possibly a second default for DHCP routes.
- allow Name= to be specified repeatedly in the [Match] section. Maybe also
support Name=foo*|bar*|baz ?
- duplicate address check for static IPs (like ARPCHECK in network-scripts)
- whenever uplink info changes, make DHCP server send out FORCERENEW
* Figure out how to do unittests of networkd's state serialization

View File

@ -220,7 +220,6 @@ manpages = [
'sd_bus_open_system_remote',
'sd_bus_open_system_with_description',
'sd_bus_open_user',
'sd_bus_open_user_machine',
'sd_bus_open_user_with_description',
'sd_bus_open_with_description'],
''],

View File

@ -1003,9 +1003,6 @@ want_blkid = get_option('blkid')
if want_blkid != 'false' and not skip_deps
libblkid = dependency('blkid', required : want_blkid == 'true')
have = libblkid.found()
conf.set10('HAVE_BLKID_PROBE_SET_HINT',
have and cc.has_function('blkid_probe_set_hint', dependencies : libblkid))
else
have = false
libblkid = []

View File

@ -104,7 +104,7 @@ KERNEL=="vd*[0-9]", ENV{ID_PATH}=="pci-*", SYMLINK+="disk/by-path/virtio-$env{ID
# probe filesystem metadata of optical drives which have a media inserted
KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}=="?*", ENV{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}=="?*", \
IMPORT{builtin}="blkid --hint=session_offset=$env{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}"
IMPORT{builtin}="blkid --offset=$env{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}"
# single-session CDs do not have ID_CDROM_MEDIA_SESSION_LAST_OFFSET
KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}=="?*", ENV{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}=="", \
IMPORT{builtin}="blkid --noraid"

View File

@ -1988,8 +1988,8 @@ static VOID config_entry_add_linux(
path = PoolPrint(L"\\EFI\\Linux\\%s", f->FileName);
entry = config_entry_add_loader(config, device, LOADER_LINUX, f->FileName, 'l',
os_name_pretty ?: os_name, path,
os_version ?: (os_version_id ? : os_build_id));
os_name_pretty ? : (os_name ? : os_id), path,
os_version ? : (os_version_id ? : os_build_id));
FreePool(content);
content = NULL;

View File

@ -1516,8 +1516,8 @@ _public_ int sd_bus_open_system_remote(sd_bus **ret, const char *host) {
}
int bus_set_address_machine(sd_bus *b, bool user, const char *machine) {
_cleanup_free_ char *a = NULL;
const char *rhs;
char *a;
assert(b);
assert(machine);

View File

@ -771,7 +771,7 @@ static int method_set_local_rtc(sd_bus_message *m, void *userdata, sd_bus_error
log_debug_errno(r, "Failed to get hardware clock, ignoring: %m");
else {
/* And set the system clock with this */
ts.tv_sec = mktime_or_timegm(&tm, !c->local_rtc);
mktime_or_timegm(&tm, !c->local_rtc);
if (clock_settime(CLOCK_REALTIME, &ts) < 0)
log_debug_errno(errno, "Failed to update system clock, ignoring: %m");

View File

@ -238,16 +238,10 @@ static int builtin_blkid(sd_device *dev, int argc, char *argv[], bool test) {
static const struct option options[] = {
{ "offset", required_argument, NULL, 'o' },
{ "hint", required_argument, NULL, 'H' },
{ "noraid", no_argument, NULL, 'R' },
{}
};
errno = 0;
pr = blkid_new_probe();
if (!pr)
return log_device_debug_errno(dev, errno_or_else(ENOMEM), "Failed to create blkid prober: %m");
for (;;) {
int option;
@ -256,28 +250,12 @@ static int builtin_blkid(sd_device *dev, int argc, char *argv[], bool test) {
break;
switch (option) {
case 'H':
#if HAVE_BLKID_PROBE_SET_HINT
errno = 0;
r = blkid_probe_set_hint(pr, optarg, 0);
if (r < 0)
return log_device_error_errno(dev, errno_or_else(ENOMEM), "Failed to use '%s' probing hint: %m", optarg);
break;
#else
/* Use the hint <name>=<offset> as probing offset for old versions */
optarg = strchr(optarg, '=');
if (!optarg)
/* no value means 0, do nothing for old versions */
break;
++optarg;
_fallthrough_;
#endif
case 'o':
r = safe_atoi64(optarg, &offset);
if (r < 0)
return log_device_error_errno(dev, r, "Failed to parse '%s' as an integer: %m", optarg);
if (offset < 0)
return log_device_error_errno(dev, SYNTHETIC_ERRNO(EINVAL), "Invalid offset %"PRIi64": %m", offset);
return log_device_error_errno(dev, SYNTHETIC_ERRNO(ERANGE), "Invalid offset %"PRIi64": %m", offset);
break;
case 'R':
noraid = true;
@ -285,6 +263,11 @@ static int builtin_blkid(sd_device *dev, int argc, char *argv[], bool test) {
}
}
errno = 0;
pr = blkid_new_probe();
if (!pr)
return log_device_debug_errno(dev, errno > 0 ? errno : ENOMEM, "Failed to create blkid prober: %m");
blkid_probe_set_superblocks_flags(pr,
BLKID_SUBLKS_LABEL | BLKID_SUBLKS_UUID |
BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE |
@ -304,7 +287,7 @@ static int builtin_blkid(sd_device *dev, int argc, char *argv[], bool test) {
errno = 0;
r = blkid_probe_set_device(pr, fd, offset, 0);
if (r < 0)
return log_device_debug_errno(dev, errno_or_else(ENOMEM), "Failed to set device to blkid prober: %m");
return log_device_debug_errno(dev, errno > 0 ? errno : ENOMEM, "Failed to set device to blkid prober: %m");
log_device_debug(dev, "Probe %s with %sraid and offset=%"PRIi64, devnode, noraid ? "no" : "", offset);
@ -318,7 +301,7 @@ static int builtin_blkid(sd_device *dev, int argc, char *argv[], bool test) {
errno = 0;
nvals = blkid_probe_numof_values(pr);
if (nvals < 0)
return log_device_debug_errno(dev, errno_or_else(ENOMEM), "Failed to get number of probed values: %m");
return log_device_debug_errno(dev, errno > 0 ? errno : ENOMEM, "Failed to get number of probed values: %m");
for (i = 0; i < nvals; i++) {
if (blkid_probe_get_value(pr, i, &name, &data, NULL) < 0)

View File

@ -86,7 +86,7 @@ KERNEL=="vd*[0-9]", ENV{ID_PATH}=="pci-*", SYMLINK+="disk/by-path/virtio-$env{ID
# probe filesystem metadata of optical drives which have a media inserted
KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}=="?*", ENV{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}=="?*", \
IMPORT{builtin}="blkid --hint=session_offset=$env{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}"
IMPORT{builtin}="blkid --offset=$env{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}"
# single-session CDs do not have ID_CDROM_MEDIA_SESSION_LAST_OFFSET
KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}=="?*", ENV{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}=="", \
IMPORT{builtin}="blkid --noraid"