1
0
mirror of https://github.com/systemd/systemd.git synced 2025-01-12 13:18:14 +03:00
Commit Graph

3581 Commits

Author SHA1 Message Date
Michal Sekletar
8520cfa584 socket-util: added check of return value 2012-12-17 11:41:31 +01:00
Michal Sekletar
c9c7aef24f path-util: set pointer to null after calling free()
In cases where path_strv_canonicalize() returns NULL, strv_free() is
called afterwards and it will call free() on pointers which were freed
already in path_strv_canonicalize()
2012-12-17 11:41:31 +01:00
Sami Kerola
d1d7caeeee sd-daemon: fix cppcheck warnings
Found with 'cppcheck --enable=all --inconclusive --std=posix' while
working with util-linux, which has a copy of this file.

[misc-utils/sd-daemon.c:363]: (style) Checking if unsigned variable \
'length' is less than zero.
[misc-utils/sd-daemon.c:366]: (style) Checking if unsigned variable \
'length' is less than zero.

References: http://www.spinics.net/lists/util-linux-ng/msg07031.html
2012-12-17 11:41:31 +01:00
Sami Kerola
23757887f7 licence: remove references to old FSF address
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=57206
2012-12-17 11:41:31 +01:00
Zbigniew Jędrzejewski-Szmek
80701564cd journal: move _packed_ attribute to the end
GCC manual states that "For an enum, struct or union type, you may
specify attributes either between the enum, struct or union tag and
the name of the type, or just past the closing curly brace of the
definition. The former syntax is preferred." This means that the
attribute should not be located before 'struct'. Putting it between
'struct' and the name seems cluttered. Putting it at the end seems
most readable.

This avoids clang warnings.
2012-12-17 11:41:31 +01:00
Richard Yao
e683136da1 Fix "attribute 'packed' is ignored" warnings when using Clang
Clang 3.1 warned that "attribute 'packed' is ignored". This stems from
placing "__attribute__ ((packed))" at the start of structure
declarations when common practice is to place it at the end.

Signed-off-by: Richard Yao <ryao@gentoo.org>
2012-12-17 10:43:58 +01:00
Michael Terry
e688930750 libudev: validate 'udev' argument to udev_enumerate_new()
https://bugs.freedesktop.org/show_bug.cgi?id=58289
2012-12-14 15:36:47 +01:00
Michal Schmidt
6b2b6f30e3 localectl: fix dbus call arguments in set_x11_keymap
Fixes an assertion failure in the dbus lib.
https://bugzilla.redhat.com/show_bug.cgi?id=882212
2012-12-12 22:29:06 +01:00
Eric Benoit
f4443fa597 libudev: hwdb: add missing endianess conversion
https://bugs.freedesktop.org/show_bug.cgi?id=58067
2012-12-11 15:34:56 +01:00
Kay Sievers
decd634e80 udev: net_id: update comments 2012-12-09 14:49:28 +01:00
Michal Schmidt
735e071271 shutdown, umount: use verbs consistently
Mounts are "unmounted".
Swaps are "deactivated", not "turned off" nor "disabled".
Loop and DM devices are "detached", not "deleted".

Especially the deleting sounded a bit scary.
2012-12-07 18:55:19 +01:00
Michal Schmidt
bce93b7ac7 shutdown, umount: logging improvements
In bugreports about hangs during the late shutdown we are often missing
important information - what were we trying to unmount/detach when it hung.

Instead of printing what we successfully unmounted, print what we are
going to unmount/detach. And add messages to mark the completion of
categories (mount/swap/loop/DM).
2012-12-07 17:44:50 +01:00
Michal Schmidt
c678406681 umount: fix check for DM changed
delete_dm() returns 0 on success. The check for "r > 0" was likely
a copy&paste error from the loopback code where "r > 0" makes sense.
2012-12-07 17:34:21 +01:00
Michal Schmidt
2569a5ce16 shutdown: downgrade a warning
All messages of the kind "not all done, %d left" are log_info, except
the one for DM devices. Make it info too.
2012-12-07 17:28:30 +01:00
Kay Sievers
971e7fb625 udev: net_id - fix OUI handling 2012-12-06 21:37:10 +01:00
Kay Sievers
0d6ce9236f udev: net_id - fix typos 2012-12-06 21:27:42 +01:00
Kay Sievers
ad37f393fa udev: net_id - update examples 2012-12-06 21:25:39 +01:00
Kay Sievers
f610d6de38 udev: net_id - update examples 2012-12-06 21:09:30 +01:00
Kay Sievers
0260944060 udev: net_id - provide path names for USB devices 2012-12-06 20:44:28 +01:00
Michal Schmidt
4b9d3dc974 systemctl: verbose message on missing [Install]
People still don't understand what the message implies.
We have to be more verbose (or more intelligent and detect some of the
cases automatically, but that's not so easy).

https://bugzilla.redhat.com/show_bug.cgi?id=884438
2012-12-06 16:25:39 +01:00
Zbigniew Jędrzejewski-Szmek
20ad4cfd8e core: add catalog entry and MESSAGE_ID for overmounting 2012-12-05 12:25:50 +01:00
Zbigniew Jędrzejewski-Szmek
c007bb1b4d modules-load: fix memory leak when bailing out
Suggested-by: Mauro Dreissig <mukadr@gmail.com>
2012-12-04 14:03:40 +01:00
Tom Gundersen
5fe25affc0 hwdb: add IAB to the OUI database
The individual address block is a poor man's organizationally unique
identifier.

Perhaps we should change the udev key from ID_OUI_FROM_DATABASE to
something like ID_IEEE_VENDOR_FROM_DATABASE?

Suggested-by: Diego Elio Pettenò <flameeyes@flameeyes.eu>
2012-12-04 02:11:37 +01:00
Umut Tezduyar
d9847b3246 systemctl: fix typos in help text 2012-12-03 16:05:01 +01:00
Kay Sievers
137661d875 udev: net_id - clarify comments 2012-12-03 15:47:18 +01:00
Shawn Landden
b779821b8f timedated: do not incorrectly close non-opened dbus connection
Fix the fallowing error when no system dbus available:

Failed to get system D-Bus connection: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory
process 14920: arguments to dbus_connection_close() were incorrect, assertion "connection != NULL" failed in file ../../dbus/dbus-connection.c line 2889.
This is normally a bug in some application using the D-Bus library.
process 14920: arguments to dbus_connection_unref() were incorrect, assertion "connection != NULL" failed in file ../../dbus/dbus-connection.c line 2776.
This is normally a bug in some application using the D-Bus library.
2012-12-03 01:56:42 +01:00
David Herrmann
a705d08519 getty-generator: fix handling systems without a console
If the system does not have any active console, we should not try to
create an empty symlink. Instead, create no symlink at all.

Otherwise, on systems with CONFIG_VT=n and no serial console, we will
create a symlink with an empty template parameter.
2012-12-02 18:18:27 +01:00
Kay Sievers
472780d8b1 udev: hwdb - fix OUI lookup 2012-12-02 02:00:57 +01:00
Zbigniew Jędrzejewski-Szmek
6f862a69ec cgls: automatic cleanup 2012-12-01 16:38:32 +01:00
Kay Sievers
de892aea1c udev: net_id - suppress function number for single-function devices 2012-11-30 19:27:42 +01:00
Martin Pitt
a5dea3d43b keymap: Add Samsung 700T
https://bugzilla.redhat.com/show_bug.cgi?id=879691
2012-11-28 21:33:26 +01:00
Alessandro Crismani
68c77c2f61 keymap: Update the list of Samsung Series 9 models
Currently, keymaps are provided only for the NP90X3A laptop. Samsung
introduced updated models, codenamed 900X3B, 900X3C, 900X4B, 900X4C,
which are currently not matched by udev rules. This patch includes the
newer modules in udev rules and move the samsung-n90x3a file defining
keys to a more generic samsung-series-9 file.

The patch was tested on a 900X4C laptop, and other people reported
that the rules also work for 900X3B and 900X3C ones.
2012-11-28 21:27:03 +01:00
Hermann Gausterer
5a6f9d2330 shutdown: fix typo 2012-11-28 21:22:39 +01:00
Tom Gundersen
140883405e shutdown: don't consider umounting of / and /usr failed
In the words of Homer: If you don't try, you can't fail.

This is a revert of 9279749b84.

It used to be necessary to consider the umounting failed to make sure /
and /usr were remounted read-only, but that is no longer necessary as
everything is now remounted read-only anyway.

Moreover, this avoids a warning at shutdown saying a filesystem was not
unmounted. As the umounting of / is never attempted there was no
corresponding warning message saying which fs that failed. This caused some
spurious bug-reports from concerned users.

Cc: Michael Biebl <biebl@debian.org>
2012-11-28 18:26:35 +01:00
Tom Gundersen
02eaa78835 shutdown: don't pivot to /run/initramfs if already there
This allows systemd-shutdown to be installed as /run/initramfs/shutdown
and take care of the proper teardown of the rootfs.
2012-11-28 18:26:35 +01:00
Tom Gundersen
67ab5f761f fstab-generator: make error more helpful in case of duplicates in fstab
Traditional sysvinit systems would not complain about duplicates in
fstab. Rather it (through monut -a) would mount one fs on top of another,
in effect the last entry taking precedent.

In systemd, the first entry takes precedent, all subsequent ones are
ignored and an error is printed.

The change of behavior and the source of this error message was causing
some confusion, so give a hint what migt be wrong.
2012-11-27 01:57:57 +01:00
Tom Gundersen
1d634e21b4 fstab-generator: drop mount_is_bind
Do the check in-line instead, as the function is now a bit pointless.
2012-11-27 00:56:09 +01:00
Tom Gundersen
a83cbaccd0 fstab-generator: remove redundancy in mount_is_bind 2012-11-27 00:41:43 +01:00
Kay Sievers
5b8180d3f6 udev: net_id - merge properties into the correct device 2012-11-26 15:03:06 +01:00
Kay Sievers
0035597a30 udev: net_id - export PCI hotplug slot names 2012-11-26 14:07:16 +01:00
Zbigniew Jędrzejewski-Szmek
29abad107f journal: fix warning about pointer arithmetic
../src/journal/journal-send.c: In function 'sd_journal_sendv':
../src/journal/journal-send.c:250:73: warning: pointer of type 'void *' used in arithmetic [-Wpointer-arith]
2012-11-25 21:43:44 +01:00
Lennart Poettering
8a3a1704c7 manager: fix build on 32bit systems 2012-11-25 19:46:16 +01:00
Zbigniew Jędrzejewski-Szmek
4a1909bb66 journal-gatewayd: minor cleanup 2012-11-25 18:04:03 +01:00
Lennart Poettering
8742514c1a timer: recalculate next elapse for calendar timer units when the system clock is changed 2012-11-25 00:33:59 +01:00
Kay Sievers
f0d7b0fcff shared: FORMAT_TIMESTAMP_MAX -- include space for unicode weekdays
$ LANG=el_GR.UTF-8 ./timedatectl
      Local time: Σαβ 2012-11-24 14:53:05 CET
  Universal time: Σαβ 2012-11-24 13:53:05 UTC
        RTC time: Σαβ 2012-11-24 13:53:04
        Timezone: Europe/Berlin (CET, +0100)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: no
 Last DST change: DST ended at
                  Κυρ 2012-10-28 02:59:59 CEST
                  Κυρ 2012-10-28 02:00:00 CET
 Next DST change: DST begins (the clock jumps one hour forward) at
                  Κυρ 2013-03-31 01:59:59 CET
                  Κυρ 2013-03-31 03:00:00 CEST

https://bugs.freedesktop.org/show_bug.cgi?id=57470
2012-11-24 14:55:35 +01:00
Lennart Poettering
0979f2855c build-sys: drop TARGET_UBUNTU
TARGET_UBUNTU is effectively the same as TARGET_DEBIAN. Given the Ubuntu
is unlikely to use systemd anytime soon there's no point in keeping this
separate.
2012-11-24 00:24:46 +01:00
Lennart Poettering
92134489ab time-util: teach parse_timestamp to parse weekdays 2012-11-23 22:52:46 +01:00
Lennart Poettering
6a741b4a2b path-util: when parsing a timestamp we don't know the timezone 2012-11-23 22:52:38 +01:00
Lennart Poettering
9185c8e626 time-util: also rename FORMAT_TIMESTAMP_PRETTY → _MAX 2012-11-23 22:51:55 +01:00
Lennart Poettering
decad9103e util: teach parse_timestamp() to parse results of format_timestamp_relative() 2012-11-23 22:20:15 +01:00
Lennart Poettering
bbb8486e17 util: rename format_timestamp_pretty() to format_timestamp_relative() because that describes much better what it does 2012-11-23 22:12:59 +01:00
Lennart Poettering
9a98c7a156 util: split off time related calls from util.[ch] into time-util.[ch] 2012-11-23 22:07:24 +01:00
Lennart Poettering
aaa870928f test: extend calendarspec test a bit 2012-11-23 21:50:51 +01:00
Lennart Poettering
3062c15117 timedatectl: improve english language DST change texts a bit 2012-11-23 21:38:42 +01:00
Lennart Poettering
36697dc019 timer: implement calendar time events 2012-11-23 21:37:58 +01:00
Lennart Poettering
be2155ce70 journal: fix SO_PASSSEC invocation
Spotted by Lukas Nykryn
2012-11-23 18:35:27 +01:00
Lennart Poettering
bd5ce8e9fc timedatectl: show both current actual timezone name and UTC distance in TImezone field 2012-11-23 16:33:39 +01:00
Lennart Poettering
2af32104c4 timedatctl: bring manual strftime in sync with format_timestamp() 2012-11-23 16:29:35 +01:00
Lennart Poettering
525716e2f9 util: drop "," between week day and date when formatting timestamps
The glibc default (as shown by the command line tool "date") doesn't put a comma there,
and so we shouldn't either.
2012-11-23 16:26:28 +01:00
Kay Sievers
01d183ddae udev: net_id - read ACPI _SUN -- slot user number 2012-11-23 15:02:46 +01:00
Michal Schmidt
1cda32b8a2 cryptsetup-generator: state file name in error messages 2012-11-23 14:19:30 +01:00
Michal Schmidt
74576bea7a cryptsetup-generator: use log_oom() everywhere 2012-11-23 14:19:30 +01:00
Hannes Reinecke
a24d03b8ee udev: path_id - handle Hyper-V devices
Hyper-V has an abstract bus, which gets renumbered on guest
startup. So instead of the bus numbers we should be using
the device GUIDs, which can be retrieved from the 'device_id'
sysfs attribute.
2012-11-23 14:12:39 +01:00
Kay Sievers
279858059d timedatectl: replace ",' with ':' 2012-11-22 18:50:55 +01:00
Kay Sievers
324dfd5c32 timedatectl: shorten output to print single < 80 char line 2012-11-22 18:47:25 +01:00
Kay Sievers
79263d0392 shared: FORMAT_TIMESTAMP_MAX +1
5 is for weekday+comma+space, but week days in french have 4 digits

https://bugs.freedesktop.org/show_bug.cgi?id=57411
2012-11-22 18:46:08 +01:00
Lennart Poettering
d7228cb852 readahead: properly detect btrfs on SSD 2012-11-22 01:51:06 +01:00
Lennart Poettering
39d99a0793 locale: modernizations 2012-11-22 01:00:26 +01:00
Lennart Poettering
e42e801b55 dbus: introduce _cleanup_dbus_error_free_ 2012-11-22 00:45:22 +01:00
Lennart Poettering
68b29a9fca manager: introduce watch_init() initializer for watches 2012-11-22 00:45:22 +01:00
Lennart Poettering
0b2665c33d automount: modernizations 2012-11-22 00:45:22 +01:00
Lennart Poettering
3c957acf86 nspawn: reset supplementary and main group id before entering nspawn 2012-11-22 00:45:22 +01:00
Tom Gundersen
adc40dc2f6 cryptsetup: fix nofail support
This was documented in the man page and supported in the generator,
but systemd-cryptestup itself would fail with this option.

systemd-cryptsetup should ignore 'nofail', as it does with 'noauto'.
2012-11-21 12:53:28 +01:00
Henrik Grindal Bakken
cf37cd2f30 Add #ifdef guards around xattr usage
This adds #ifdef HAVE_ATTR_XATTR_H guards around all usage of xattr.
This unbreaks building with --disable-xattr when <attr/xattr.h> doesn't exist.
<attr/xattr.h> and usage of fsetxattr() without
2012-11-21 10:49:58 +01:00
Tom Gundersen
e32a4e1ef4 hwdb: fix usage
--create is not a valid option.
2012-11-21 02:49:24 +01:00
Lennart Poettering
93b73b064c journal: by default do not decompress dat objects larger than 64K
This introduces a new data threshold setting for sd_journal objects
which controls the maximum size of objects to decompress. This is
relieves the library from having to decompress full data objects even
if a client program is only interested in the initial part of them.

This speeds up "systemd-coredumpctl" drastically when invoked without
parameters.
2012-11-21 00:28:00 +01:00
Lennart Poettering
8f1e860f8a journal: add sd_journal_get_catalog_for_message_id() as API to get catalog entry for any message ID without requiring an open journal file 2012-11-20 21:39:16 +01:00
Lennart Poettering
ee55db4144 journal-send: always send SYSLOG_IDENTIFIER, if we have it
https://bugzilla.redhat.com/show_bug.cgi?id=872193
2012-11-20 21:39:16 +01:00
Lennart Poettering
3ed08c446c journal-send: unify a bit of code 2012-11-20 21:39:16 +01:00
Tom Gundersen
e30431623a build-sys: make loadable module support optional
kmod is unecessary if loadable module support is disabled in the kernel,
so make the dependency optional.
2012-11-20 19:35:27 +01:00
Colin Walters
1a37b9b904 dbus-common: Add helper method to handle no-reply messages
[Tested in latest gnome-ostree; if accepted, I'll look at a followup
 patch which fixes the other dbus_connection_send(reply, ...) calls
 besides logind]

DBus messages can have a flag NO_REPLY associated that means "I don't
need a reply".  This is for efficiency reasons - for one-off requests
that can't return an error, etc.

However, it's up to users to manually check
dbus_message_get_no_reply() from a message.  libdbus will happily send
out a reply if you don't.

Unfortunately, doing so is not just less efficient - it also triggers
a security error, for complex reasons.  This is something that will
eventually be fixed in dbus, but it's also correct to handle it in
client applications.

This new helper API is slightly nicer in that you don't have to pass
NULL to say you don't want a reply serial for your reply.

This patch also tweaks logind to use the API - there are more areas of
the code that need this treatment too.
2012-11-20 19:12:19 +01:00
Kay Sievers
d23965a64e udev: net - add device naming properties 2012-11-20 18:10:45 +01:00
Kay Sievers
5ae18ddc0d libudev: do not resolve $attr{device} symlinks 2012-11-20 18:07:57 +01:00
Kay Sievers
3fd0c4c66d udev: fix whitespace 2012-11-20 18:07:14 +01:00
Lennart Poettering
7d73c1343b journald: fix bad memory access
https://bugzilla.redhat.com/show_bug.cgi?id=875653
2012-11-20 00:21:44 +01:00
Lennart Poettering
10f70492ae socket: improve error message when we cannot spawn the socket's service unit 2012-11-20 00:21:44 +01:00
Zbigniew Jędrzejewski-Szmek
ac97e2c559 core/load-fragment: fix (potential) bad memory access
strncmp() could be used with size bigger then the size of the string,
because MAX was used instead of MIN.

If failing, print just the offending mount flag.
2012-11-19 17:13:37 +01:00
Zbigniew Jędrzejewski-Szmek
c040936be2 core/load-fragment: be more precise in error messages
Whenever a message fails, mention the offending word, instead
of just giving the whole line. If one bad word causes just this
word to be rejected, print only the word. If one bad word causes
the whole line to be rejected, print the whole line too.

https://bugs.freedesktop.org/show_bug.cgi?id=56874
2012-11-19 17:13:05 +01:00
Anders Olofsson
7009eec208 shared/utils: systemd-cgls shows 'n/a' when piping output
-1 was used to signal failure, but the type was unsigned.

https://bugs.freedesktop.org/show_bug.cgi?id=56644
2012-11-19 17:12:17 +01:00
Zbigniew Jędrzejewski-Szmek
e3657ecd7f journalctl: add option to forgo ellipsization
Sometimes it is better to see messages in full, and the existing
set of options didn't allow this easily. E.g. now

  journalctl -f --full

will behave like

  tail -f /var/log/messages

of yore.

Long option only for now, since small letters are becoming
scarce, and this doesn't feel like a capital-letter-option.
'-u' would be nice, and the above command would be spelled

  journalctl -fu
2012-11-17 15:32:04 +01:00
Zbigniew Jędrzejewski-Szmek
0a496c9836 rpm: udevadm is actually in bindir 2012-11-16 23:29:56 +01:00
Zbigniew Jędrzejewski-Szmek
ee623f0d0c hwdb: use $(localstatedir)/lib/udev/hwdb.bin for the binary database
It's not configuration, so it doesn't belong in udev.

Also, remove the catalog when uninstalling udev.
2012-11-16 23:29:56 +01:00
Zbigniew Jędrzejewski-Szmek
4ec24515da journal: use $(localstatedir)/lib/systemd/catalog for the catalog
The path doesn't change in the standard configuration.

Also, give full path to the journalctl binary in the hook,
since it might be installed outside of $PATH.

Also, add uninstall hook to remove the binary catalog.
2012-11-16 23:29:18 +01:00
Zbigniew Jędrzejewski-Szmek
943aad8ca5 journal, shared: fix warnings during compilation on 32 bits
Some filesystem magics are too big to fit in 31 bits,
and are wrapped to negative. f_type is an int on 32 bits, so
it is signed, and we get a warning on comparison.
2012-11-16 23:26:44 +01:00
Lennart Poettering
1b0fcd7411 rpm: update RPM macros to include definitions for more drop-in directories and for reloading/rebuilding configuration
More specifically this adds a number of macros that resolve to
directories for udev rules, hwdb entries, tmpfiles and sysctl.

Thsi also includes three new macros for rebuilding the hwbd/catalog
index when a package drops in new files
2012-11-16 20:07:14 +01:00
Kay Sievers
7c670f5b44 journal: catalog - silent output, it's usually only called by package management 2012-11-16 19:34:53 +01:00
Lennart Poettering
3cdebc217c service: drop support for SysV scripts for the early boot
This remove distro-specific support for early-boot SysV init scripts.
(And leaves support for normal SysV scripts untouched).

If distributions wish to continue to allow early-boot SysV scripts in
their distribution-specific way they should either maintain this patch
downstream manually, or write a generator for them, or simply ship all
those scripts with a .service wrapper.
2012-11-16 18:46:36 +01:00
Lennart Poettering
93bd157722 umount: always remount read-only before unmounting in final shutdown loop 2012-11-16 18:36:28 +01:00
Lennart Poettering
891a4918ef switch-root: try pivot_root() before overmounting /
We should always try to umount the old root dir if possible, instead of
overmounting it -- if that's possible.

The initial ("first") kernel rootfs can never be umounted, hence
for the usual nitrd case we never bothered using pivot_root() and
hence with fully unmounting it. However, fedup now tranisitions twice
during boot, and in that case it is highly desirable that the "second"
root dir is entirely unmounted when we switch to the "third". This patch
makes that possible.

The pivot_root() needs a directory in the "third" root dir, to move the
"second" root dir to. We use /mnt for that, under the assumption that
this directory is likely to exist, and is not itself a mount point.
2012-11-16 18:21:09 +01:00
Umut Tezduyar
5bb633f13a udev: firmware - disable firmware loading when firmware file is 0 byte
If firmware file is not found in the file system, udev
terminates firmware loading. This is not the case if
firmware file exists in the file system but doesn't have
any data in it.
2012-11-16 17:07:19 +01:00