1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-14 15:21:37 +03:00
Commit Graph

14549 Commits

Author SHA1 Message Date
Tom Gundersen
a748b692dd network: link - simplify code a bit and remove some debug logging 2014-03-09 18:22:18 +01:00
Dave Reisner
26abdc73a2 fix off by one error in array index assertion
Since the index is already post-incremented when the array is appended
to, this assertion can be wrongly reached when the array is at capacity
(with the NULL terminator). The bug is reproducible on shutdown with
the following settings in /etc/systemd/system.conf:

  LogTarget=journal-or-kmsg
  LogColor=yes
  LogLocation=yes

Reported by Thermi on IRC.
2014-03-08 17:57:18 -05:00
Kay Sievers
d5ce683c07 units: remove "AllowUser=root own", the bus owner can always own names 2014-03-08 19:38:06 +01:00
Daniel Mack
088b51107a sd-bus: sync kdbus.h 2014-03-08 18:22:44 +01:00
Zbigniew Jędrzejewski-Szmek
58b129170c networkd: fix confusion from missing braces
Fixup for 76800848f2 'networkd: link - degrade failed UP to warning'.
2014-03-08 11:58:56 -05:00
Daniel Mack
b629d09842 sd-bus: check for potential integer overflow in KDBUS_ITEM_FOREACH()
For large values of item->size, the 'part' pointer can wrap around,
which results in an illegal pointer, but currently passes the for-loop
condition.
2014-03-08 14:18:48 +01:00
Lennart Poettering
2a781fc9bd update TODO 2014-03-08 04:06:04 +01:00
Lennart Poettering
61331eab0a gpt-auto-generator: probe only partition table and partitions we are interested in
Instead of iterating through the list of partitions and probing them all
with blkid, simply probe the partition table and use that information to
only probe the partitions we care for.
2014-03-08 04:06:04 +01:00
Tom Gundersen
76800848f2 networkd: link - degrade failed UP to warning
Something else may still bring the link up, so don't enter failed state prematurely.
2014-03-08 01:12:46 +01:00
Tom Gundersen
59a7a68422 sd-rtnl: increase default timeout to match sd-bus 2014-03-08 01:12:46 +01:00
Daniel Mack
2c5859afec Make tables for DEFINE_STRING_TABLE_LOOKUP consistent
Bring some arrays that are used for DEFINE_STRING_TABLE_LOOKUP() in the
same order than the enums they reference.

Also, pass the corresponding _MAX value to the array initalizer where
appropriate.
2014-03-07 21:38:48 +01:00
Daniel Mack
fe8d029277 units: set 'AllowUser=root own' and 'AllowWorld=talk' own for all .busname files 2014-03-07 19:19:02 +01:00
Daniel Mack
a9beb58d8d dbus1-generator: set AllowWorld=own for now 2014-03-07 19:19:01 +01:00
Daniel Mack
1683342af1 sd-bus: add support for policy upload on activator connections
Activator connections may upload policy when registering to the bus.
This patch contains code to translate between BusNamePolicy objects and
the kdbus specific items.
2014-03-07 19:14:05 +01:00
Daniel Mack
f7c7cd03d1 sd-bus: sync kdbus.h (ABI break)
Bring kdbus.h in sync with recent policy related changes. Most notably,
KDBUS_MAKE_POLICY_OPEN is now gone. The rest doesn't matter for systemd
at this point, as the policy functionality was not yet used.
2014-03-07 19:14:05 +01:00
Daniel Mack
54d76c9286 busname: add parser for bus name policies
There are three directives to specify bus name polices in .busname
files:

 * AllowUser [username] [access]
 * AllowGroup [groupname] [access]
 * AllowWorld [access]

Where [access] is one of

 * 'see': The user/group/world is allowed to see a name on the bus
 * 'talk': The user/group/world is allowed to talk to a name
 * 'own': The user/group/world is allowed to own a name

There is no user added yet in this commit.
2014-03-07 19:14:05 +01:00
Lennart Poettering
fb255b31c5 man: reference the Discoverable Partitions Spec from the gpt-auto-generator man page 2014-03-07 18:50:43 +01:00
Lennart Poettering
700ff4d973 busname: don't drop 'service' from the result string 2014-03-07 18:50:43 +01:00
Tom Gundersen
9842de0d93 networkd: use new rtnl_message_read() API 2014-03-07 17:39:04 +01:00
Susant Sahani
4e9e7f1836 sd-rtnl: introduce read ether and ip address functions
This patch introduces reading ethernet address and IPV4/IPv6
as well which is based on table based look up.

[tomegun: rename read_ether() to read_ether_addr() to match the append function.]
2014-03-07 17:39:04 +01:00
Daniel Mack
b2cdc6664e manager: flush memory stream before using the buffer
When the manager receives a SIGUSR2 signal, it opens a memory stream
with open_memstream(), uses the returned file handle for logging, and
dumps the logged content with log_dump().

However, the char* buffer is only safe to use after the file handle has
been flushed with fflush, as the man pages states:

  When the stream is closed (fclose(3)) or flushed (fflush(3)), the
  locations pointed to by ptr and sizeloc are updated to contain,
  respectively, a pointer to the buffer and the current size of  the
  buffer.
  These values remain valid only as long as the caller performs no
  further output on the stream.  If further output is performed, then the
  stream must again be flushed before trying to access these variables.

Without that call, dump remains NULL and the daemon crashes in
log_dump().
2014-03-07 15:15:56 +01:00
Kay Sievers
8a39439e08 udev-builtin-blkid: remove dead code 2014-03-07 14:39:20 +01:00
Daniel Mack
36d239dbda core/busname: add lookup string for BUSNAME_FAILURE_SERVICE_FAILED_PERMANENT
When a busname unit enters BUSNAME_FAILURE_SERVICE_FAILED_PERMANENT, the
serialization will not be able to look up the result as string via
busname_result_to_string(). This leads to an assertion trap during
daemon-reexec.
2014-03-07 11:41:18 +01:00
Thomas Bächler
6c49212741 units: Do not unescape instance name in systemd-backlight@.service
The instance name is never escaped in the udev rule, but unescaped in the unit.
This results in the following error message on Asus boards:

  Failed to get backlight or LED device 'backlight:eeepc/wmi': No such file or directory
2014-03-07 00:30:56 -05:00
Armin K
e2eb18d56b build-sys: Don't distribute generated udev rule
It contains hardcoded path to systemd-sysctl executable which
is /usr/lib/systemd/systemd-sysctl on latest stable release and
as such it will complain at runtime if rootprefix != prefix

[zj: readd the file to nodist_udevrules_DATA]
2014-03-07 00:17:18 -05:00
Zbigniew Jędrzejewski-Szmek
7d06ef0a5c man: add missing comma
marcosf0> missing comma in udevadm "see also" section
2014-03-07 00:17:18 -05:00
Zbigniew Jędrzejewski-Szmek
d86dd07d46 build-sys: update intructions for Makefile-man.am regeneration 2014-03-06 23:24:30 -05:00
Zbigniew Jędrzejewski-Szmek
effbc8e4f7 man: describe functions for appending to messages 2014-03-06 23:24:20 -05:00
Lennart Poettering
a0e5b17733 update TODO 2014-03-07 04:38:39 +01:00
Lennart Poettering
73b80ec2d9 gpt-auto-generator: automatically find the root disk of the system
When run in an initrd and no root= argument is set (or is set to
root=gpt-auto) we will automatically look for the root partition on the
same disk the EFI ESP is located on.

Since we look for swap, /home and /srv on the disk the root partition is
located on, we hence have a fully discoverable chain:

    Firmware discovers the EFI ESP partition → the initrd discovers the
    root partition → the host OS discovers swap, /home, and /srv.

Note that this requires an EFI boot loader that sets the
LoaderDevicePartUUID EFI variable, such as Gummiboot.
2014-03-07 04:31:26 +01:00
Lennart Poettering
329f7803ee udev: automatically create a symlink /dev/disk/by-id/gpt-auto-root if there's a suitable root partition 2014-03-07 03:30:30 +01:00
Lennart Poettering
5ecdcf41cb fstab-generator: the root partition is not optional 2014-03-07 02:40:24 +01:00
Lennart Poettering
a873c5bdf2 efi-boot-generator: typo fix 2014-03-07 02:40:24 +01:00
Lennart Poettering
cbd353ce77 udev-builtin-blkid: when we find a GPT partition marked as root disk on the same disk as the ESP, expose a property on the udev device
This is preparation for a logic to automatically discover the root
partition to boot from if no partition has been configured explicitly.

This makes use of our newly defined GPT type GUIDs for our root disks:

 #define GPT_ROOT_X86    SD_ID128_MAKE(44,47,95,40,f2,97,41,b2,9a,f7,d1,31,d5,f0,45,8a)
 #define GPT_ROOT_X86_64 SD_ID128_MAKE(4f,68,bc,e3,e8,cd,4d,b1,96,e7,fb,ca,f9,84,b7,09)

We define differen GUIDs for different architectures to allow images
which finde the right root partition for the appropriate arch.
2014-03-07 02:40:24 +01:00
Lennart Poettering
d13394a883 udev-builtin-blkid: modernizations and minor fixes 2014-03-07 02:40:24 +01:00
Lennart Poettering
6db615c17e fstab-generator: merge /proc/cmdline parsing loops into one 2014-03-07 02:40:24 +01:00
Zachary Cook
82ed60080d man: systemd-bootchart - fix spacing in command
Use the same formatting as the systemd-analyze man page, so that man shows a space.
2014-03-06 12:41:50 -08:00
Thomas Hindoe Paaboel Andersen
20e265d4bb strv: set _printf_ on strv_extendf 2014-03-06 20:29:40 +01:00
Tom Gundersen
d22f1006a1 sd-rtnl/networkd: use new rtnl_message_read() API and drop helper
With the new sd_rtnl_message_read_string(), there is no longer a need for
rtnl_message_get_ifname().
2014-03-06 19:44:37 +01:00
Susant Sahani
44caa5e7df sd-rtnl:introduce table-based lookup and typesafe read() functions
This patch introduces new netlink attribute parsing logic
which is table based lookup and sd_rtnl_message_read_*
methods for reading attributes. By doing this user does not
have to loop for the attribute values . Only providing the
attribute type it gets the attribute values which is optimized
and sd_rtnl_message_read_* methods are simplified.
2014-03-06 19:30:09 +01:00
Lennart Poettering
6d26dfe11c generators: make automatic discovery generators work correctly when reloading
In addition to checking whether the diestination mount point is
populated, check whether it is already a mount point.

If it is already a mount point, or if it is unpopulated, let's create
the unit.
2014-03-06 18:48:22 +01:00
Lennart Poettering
c3834f9b88 generators: add Documentation= fields that point to the generator man pages 2014-03-06 18:48:22 +01:00
Lennart Poettering
059cb3858a util: move more intellegince into parse_proc_cmdline()
Already split variable assignments before invoking the callback. And
drop "rd." settings if we are not in an initrd.
2014-03-06 18:48:22 +01:00
Zbigniew Jędrzejewski-Szmek
27d14fb331 man: update link to LSB
https://bugzilla.redhat.com/show_bug.cgi?id=1073402
2014-03-06 08:11:14 -05:00
Lennart Poettering
0939968c77 update TODO 2014-03-06 05:04:51 +01:00
Lennart Poettering
965e5c5daf core: include partition label in .device description fields 2014-03-06 05:04:51 +01:00
Lennart Poettering
646e392e10 logind: fix reference to systemd-user-sessions.service 2014-03-06 05:04:51 +01:00
Lennart Poettering
1ebab691c7 gpt-auto-generation: set a pretty description string 2014-03-06 05:04:51 +01:00
Lennart Poettering
9533ad1f42 units: don't use the word 'Reboot' for Startup, but simply 'Boot' 2014-03-06 05:04:51 +01:00
Lennart Poettering
d1a6f44125 units: properly capitalize the unit description 2014-03-06 05:04:51 +01:00