Commit Graph

400 Commits

Author SHA1 Message Date
Kai Kang
34750ea4b6 systemd-conf: not configure network for nfs root
It fails to boot nfs root with systemd that systemd-networkd
re-configures wired network and breaks the connection with nfs root.

(From OE-Core rev: 2abfbf186989223d5d256c25e0b52b02f29d5bfb)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-19 22:13:39 +01:00
Alex Kiernan
07526deab6 systemd: Backport OpenSSL BUF_MEM fix
Building `systemd-resolve` from systemd 242 with OpenSSL 1.1.1c and enabling
DNS over TLS ends up calling abort (on 32 bit armhf):

  Program terminated with signal SIGABRT, Aborted.
  #0  __libc_do_syscall () at libc-do-syscall.S:49
  49	libc-do-syscall.S: No such file or directory.
  (gdb) where
  #0  __libc_do_syscall () at libc-do-syscall.S:49
  #1  0xb6940ea4 in __libc_signal_restore_set (set=0xbec68b78) at ../sysdeps/unix/sysv/linux/internal-signals.h:84
  #2  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:48
  #3  0xb69336e0 in __GI_abort () at abort.c:79
  #4  0xb6968428 in __libc_message (action=action@entry=do_abort, fmt=<optimized out>) at ../sysdeps/posix/libc_fatal.c:181
  #5  0xb696c7e6 in malloc_printerr (str=<optimized out>) at malloc.c:5352
  #6  0xb696ca1a in munmap_chunk (p=<optimized out>) at malloc.c:2840
  #7  0xb6bd1c4a in CRYPTO_clear_realloc (str=0xd0e59a, old_len=388, num=<optimized out>, file=0xb6c300dc "../../../../../../workspace/sources/openssl/crypto/buffer/buffer.c", line=135)
      at ../../../../../../workspace/sources/openssl/crypto/mem.c:290
  #8  0xb6b5da3a in BUF_MEM_grow_clean (str=0xcfb960, len=len@entry=393) at ../../../../../../workspace/sources/openssl/crypto/buffer/buffer.c:135
  #9  0xb6b486a0 in mem_write (b=0xcf8300, in=0xd07c6b "\027\003\003", inl=24) at ../../../../../../workspace/sources/openssl/crypto/bio/bss_mem.c:235
  #10 0xb6b45c86 in bwrite_conv (bio=<optimized out>, data=<optimized out>, datal=<optimized out>, written=0xbec68ec8) at ../../../../../../workspace/sources/openssl/crypto/bio/bio_meth.c:77
  #11 0xb6b452d4 in bio_write_intern (written=0xbec68ec8, dlen=24, data=0xd07c6b, b=0xcf8300) at ../../../../../../workspace/sources/openssl/crypto/bio/bio_lib.c:343
  #12 bio_write_intern (b=0xcf8300, data=0xd07c6b, dlen=24, written=0xbec68ec8) at ../../../../../../workspace/sources/openssl/crypto/bio/bio_lib.c:320
  #13 0xb6b455b2 in BIO_write (b=<optimized out>, data=<optimized out>, dlen=<optimized out>) at ../../../../../../workspace/sources/openssl/crypto/bio/bio_lib.c:363
  #14 0xb6cabd1a in ssl3_write_pending (s=s@entry=0xcfd2d8, type=type@entry=23, buf=buf@entry=0xcfcc28 "", len=len@entry=2, written=written@entry=0xbec698b0) at ../../../../../../workspace/sources/openssl/ssl/record/rec_layer_s3.c:1146
  #15 0xb6cac72e in do_ssl3_write (s=s@entry=0xcfd2d8, type=type@entry=23, buf=buf@entry=0xcfcc28 "", pipelens=pipelens@entry=0xbec698b4, numpipes=numpipes@entry=1, create_empty_fragment=create_empty_fragment@entry=0,
      written=written@entry=0xbec698b0) at ../../../../../../workspace/sources/openssl/ssl/record/rec_layer_s3.c:1107
  #16 0xb6cac92e in ssl3_write_bytes (s=0xcfd2d8, type=23, buf_=0xcfcc28, len=<optimized out>, written=0xbec699c0) at ../../../../../../workspace/sources/openssl/ssl/record/rec_layer_s3.c:613
  #17 0xb6cb1698 in ssl3_write (s=<optimized out>, buf=0xcfcc28, len=2, written=0xbec699c0) at ../../../../../../workspace/sources/openssl/ssl/s3_lib.c:4460
  #18 0xb6cb87b2 in ssl_write_internal (s=<optimized out>, buf=buf@entry=0xcfcc28, num=num@entry=2, written=written@entry=0xbec699c0) at ../../../../../../workspace/sources/openssl/ssl/ssl_lib.c:1943
  #19 0xb6cb8896 in SSL_write (s=<optimized out>, buf=buf@entry=0xcfcc28, num=num@entry=2) at ../../../../../../workspace/sources/openssl/ssl/ssl_lib.c:1957
  #20 0x004ddac8 in dnstls_stream_write (stream=stream@entry=0xcfca60, buf=0xcfcc28 "", count=2) at ../git/src/resolve/resolved-dnstls-openssl.c:270
  #21 0x004d8d5c in dns_stream_writev (s=s@entry=0xcfca60, iov=iov@entry=0xbec69b4c, iovcnt=iovcnt@entry=2, flags=flags@entry=0) at ../git/src/resolve/resolved-dns-stream.c:225
  #22 0x004d9516 in on_stream_io (es=<optimized out>, fd=<optimized out>, revents=4, userdata=0xcfca60) at ../git/src/resolve/resolved-dns-stream.c:334
  #23 0xb6e7f020 in source_dispatch (s=0xcf3658) at ../git/src/libsystemd/sd-event/sd-event.c:2821
  #24 0xb6e806b0 in sd_event_dispatch (e=e@entry=0xced6d0) at ../git/src/libsystemd/sd-event/sd-event.c:3234
  #25 0xb6e807f6 in sd_event_run (e=0xced6d0, timeout=<optimized out>) at ../git/src/libsystemd/sd-event/sd-event.c:3291
  #26 0xb6e809bc in sd_event_loop (e=0xced6d0) at ../git/src/libsystemd/sd-event/sd-event.c:3312
  #27 0x004bb64c in run (argv=<optimized out>, argc=<optimized out>) at ../git/src/resolve/resolved.c:84
  #28 main (argc=<optimized out>, argv=<optimized out>) at ../git/src/resolve/resolved.c:91

(From OE-Core rev: b11ddab19bc7c0ce35b95345181de8a708268472)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-14 22:48:22 +01:00
Kai Kang
a972e4015b systemd-conf: configure wired network with dhcp
Add a configure file for systemd.networkd to configure wired network
interfaces with dhcp. It works with common network interfaces such eth0
and eno1. And do not install it for qemu bsps.

Refer to
https://github.com/YoeDistro/meta-yoe/tree/master/recipes-core/systemd

[YOCTO #13057]

(From OE-Core rev: d87efd14ce0471135c0aa7fd7b5da2808acb9c76)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-04 09:09:42 +01:00
Changqing Li
70db12c852 systemd: add rconflicts
add rconflicts since error during do_rootfs:
file /sbin/resolvconf conflicts between attempted installs of resolvconf-1.79-r0.noarch and systemd-1:242+0+db2e367bfc-r0.i586
file /sbin/init conflicts between attempted installs of tiny-init-1.0-r3.i586 and systemd-1:242+0+db2e367bfc-r0.i586

(From OE-Core rev: 10d0a824ad9b835b6f5ec24a49d41aead613031b)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-30 12:37:03 +01:00
Chen Qi
777338281c systemd: avoid musl specific patches affect glibc systems
systemd upstream only care about glibc. We made musl specific
patches so that systemd could work. But currently these patches
contain potential security issues.

So apply these patches only when the libc is musl.

(From OE-Core rev: 464a1c16db1d7cc950eaee43bd8a47124dc4398f)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-27 17:06:34 +01:00
Adrian Bunk
3b06404e30 systemd: Some upstreamable musl patches have been upstreamed
(From OE-Core rev: 71f99af0d05656a4546e691f6b6e876776c22b13)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-21 12:56:33 +01:00
Adrian Bunk
15070290a1 systemd: Disable idn properly for musl instead of NI_IDN workarounds
(From OE-Core rev: e9d132c25c7e1feca1d078b0891c0f4baba70f81)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-17 07:07:28 +01:00
He Zhe
b5ba1dcf2d systemd: Bump up SRCREV to systemd-stable top to include the fix for shutdown now hang
"shutdown now" makes systemd hang at the following line.
[  OK  ] Stopped Session c1 of user root.

It's already been fixed by 03cb25525423 ("socket-util: make sure flush_accept() doesn't hang on unexpected EOPNOTSUPP")

(From OE-Core rev: b8f175296905518d0222bd63bb44c93772afb8be)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-12 09:04:26 +01:00
Matthias Schiffer
ef5a902cf0 systemd: move "machines" symlinks to systemd-container
Move symlinks to the machines.target and var-lib-machines.mount units to
the systemd-container package, where the pointed at units are located as
well.

This avoids an implicit dependency of the systemd package on
systemd-container, which prevented the use of systemd without installing
systemd-container.

(From OE-Core rev: ae3c8d938c261c92ecf06e2d09f7e32bc117ceb8)

Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-09 16:31:56 +01:00
Peter Kjellerstedt
310a958fb3 systemd: Use PACKAGECONFIG definition to depend on libnss-myhostname
Rather than adding the dependency on libnss-myhostname to
RDEPENDS_${PN} if the myhostname PACKAGECONFIG is set, add the runtime
dependency to myhostname's PACKAGECONFIG definition.

(From OE-Core rev: e107feab1734d5751ea0d94ca6dbccc059709b55)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-09 16:31:56 +01:00
Alex Kiernan
534731e7a7 systemd-systemctl: Restore support for enable command
Refactor so that SystemdUnit is its own class, then add support for the
enable command. This restores the ability of systemd.bbclass to create
instances using syntax such as:

  SYSTEMD_SERVICE_${PN} = "serial-getty@ttyAMA0.service"

(From OE-Core rev: 9ef6f326ad323b2687440b81b0a983cb3d86a3ab)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-09 16:31:55 +01:00
Alex Kiernan
7e5124a44c systemd: Default to non-stateless images
When creating images, for anything other than the explicitly stateless
case, touch /etc/machine-id so that the images can be booted without an
initramfs and with `ro` set on the kernel command line, otherwise system
refuses to start:

  [    7.222134] systemd[1]: No hostname configured.
  [    7.227266] systemd[1]: Set hostname to <localhost>.
  [    7.232622] systemd[1]: System cannot boot: Missing /etc/machine-id and /etc is mounted read-only.
  [    7.241750] systemd[1]: Booting up is supported only when:
  [    7.247362] systemd[1]: 1) /etc/machine-id exists and is populated.
  [    7.253752] systemd[1]: 2) /etc/machine-id exists and is empty.
  [    7.259757] systemd[1]: 3) /etc/machine-id is missing and /etc is writable.

If IMAGE_FEATURES includes `stateless-rootfs` then systemctl-native is
not run on the image leaving the image for population at runtime by
systemd.

(From OE-Core rev: c5fb399f5894c16cf8eeadd507dc38c29b0fd657)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-09 16:31:55 +01:00
Khem Raj
a89a08ce7c systemd: Backport patch to fix build with gcc9
Do not disable the warning as error for overflow, which was a workaround
until the real fix came in.

(From OE-Core rev: d5e999616e2671442cfc678750bdfb990ef5728c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-08 23:00:32 +01:00
Richard Purdie
ed5198463f openssh/systemd/python/qemu: Fix patch Upstream-Status
Fix some missing or corrupted patch Upstream-Status values.

(From OE-Core rev: 07bc5a5367e0dec45253fd849e0157094152fd31)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-08 12:15:17 +01:00
Khem Raj
a06ca789cb systemd: Add -Wno-error=format-overflow to fix build with gcc9
gcc9 throws additional warnings about format string overflow

(From OE-Core rev: 59f93503dcec4e5b8ab46db73095d2669aba8c7e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-08 12:15:17 +01:00
Alex Kiernan
925e30cb10 systemctl-native: Rewrite in Python supporting preset-all and mask
Rewrite systemctl-native in Python so that extending/testing it is
easier.

Now that the systemd class sets up service presets instead of actively
enabling services, the 'enable' and 'disable' subcommands for systemctl
are not actually used anywhere.  As such, we can remove these to make
sure that nobody inadvertently introduces new uses of them.

This implementation covers `preset-all` and `mask` which are the only
options used in the current code, but should be readily extensible to
other commands.

We use `preset-all` at image construction time to populate the symlinks
used by systemd.

(From OE-Core rev: 86f5a2383692ac1ab01dce534c1a5c5f32ec4b35)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-03 06:11:57 +01:00
Alex Kiernan
92d9c493c4 systemd-conf: simplify creation of machine-specific configuration
The configuration files that systemd installs are just skeletons
detailing the available options and their default values.  The
recommended means of changing the configuration is to provide snippets
in configuration directories.  For example, journald.conf settings are
best set in /usr/lib/system.d/journald.conf.d/ and can be overridden by
the user by providing overriding snippets in
/etc/systemd/journald.conf.d/.

The systemd-conf package is just providing machine-specific overrides
for some systemd defaults.

This patch restores the installation of config files by systemd and
reduces systemd-conf to just providing the config snippets in
/usr/lib/systemd/*.conf.d.  This simpilfies the systemd-conf recipe
considerably since it now just sets up a couple of text files and
doesn't even need access to the systemd source anymore.

License-Update: configuration snippets licensing is independent of
systemd licensing

(From OE-Core rev: 3150253898babce70333376d22090b56b4a70bfb)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-03 06:11:57 +01:00
Jonas Bonn
119d310f36 systemd: do not create machine-id
There is no reason to have an emtpy machine-id as part of the systemd
package.  Either:

i)  the filesystem is writable and the file will be created
automatically; or
ii) the filesystem is read-only, in which case the empty machine-id file
should be created as part of the read-only-rootfs tweaks.

(From OE-Core rev: 76444b63e614baea33c044851a5859f6d1e69729)

Signed-off-by: Jonas Bonn <jonas@norrbonn.se>
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-03 06:11:57 +01:00
Jonas Bonn
140c96d965 systemd: don't build firstboot by default
The firstboot service prompts the user for information about the host at
first boot.  Systemd determines whether or not a boot is a "first boot"
by the existence of the file /etc/machine-id.  Since oe-core always
includes this file (it is part of the systemd package), the firstboot
service never runs so this service is being built but never run.

A follow-up patch to this one will remove the machine-id from the
systemd build and allow it to be created automatically by systemd at
"first boot".  With that patch, we don't want the firstboot service to
suddenly start being invoked and presenting a prompt to the user.

With this patch, the firstboot service becomes a PACKAGECONFIG option
that the user must actively select.

(From OE-Core rev: 6f0072d34107f4d351c79b43ce71bf4489428a34)

Signed-off-by: Jonas Bonn <jonas@norrbonn.se>
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-03 06:11:57 +01:00
Luca Boccassi
57f36698b1 systemd: add cgroupv2 PACKAGECONFIG
Allow users to change the default cgroup mode at build time
and use the unified hierarchy mode.
Disabled by default - hybrid is the default upstream value.

(From OE-Core rev: 25dc64b8de20021de34ce02ce3855ec9dbade4a4)

Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-29 14:16:31 +01:00
Andrej Valek
c814947e03 systemd: upgrade to 242
PATCH REBASED:
==============
0001-do-not-disable-buffer-in-writing-files.patch
0002-don-t-use-glibc-specific-qsort_r.patch
0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch
0004-add-fallback-parse_printf_format-implementation.patch
0005-rules-watch-metadata-changes-in-ide-devices.patch
0005-src-basic-missing.h-check-for-missing-strndupa.patch
0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch
0009-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch
0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
0021-avoid-redefinition-of-prctl_mm_map-structure.patch
0024-test-json.c-define-M_PIl.patch

PATCH DROPPED:
==============
0001-meson-declare-version.h-as-dep-for-various-targets-t.patch
0001-meson-declare-version.h-as-dependency-for-systemd.patch
0013-test-hexdecoct.c-Include-missing.h-for-strndupa.patch

PATCH ADDED:
0025-fs-utilh-add-missing-sys-stat-include.patch

(From OE-Core rev: 1d453c9087f92da1ceddc66a887941e4929b3448)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-26 10:09:08 +01:00
Changqing Li
0ad9bbaf9d systemd: change default locale from C.UTF-8 to C
current default locale is set to C.UTF-8, but glibc not support
locale C.UTF-8. so set to the default locale C.

[snip]
        if not meson.is_cross_build()
                choose_default_locale_sh = find_program('tools/choose-default-locale.sh')
                default_locale = run_command(choose_default_locale_sh).stdout().strip()
        else
                default_locale = 'C.UTF-8'
        endif

if default locale set to C.UTF-8, it will cause libpcre ptest fail:

  re> //8+L
** Failed to set locale ""

(From OE-Core rev: 48f1521de8d16971e8021d7bf551f0b88f392f43)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-23 23:30:19 +01:00
Wenlin Kang
bb8a55fb0f systemd: install libnss-myhostname.so when myhostname be enabled
This fixes the follow issue, the cause is that net-tools needs
libnss-myhostname.so when run "hostname -s".

root@qemuarm64:~# hostname -s
hostname: Unknown host

(From OE-Core rev: 5bad5eb5f41053e4963fb26972f56dbf67349378)

Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-12 09:29:06 +01:00
Tomasz Meresiński
8233d9e717 systemd: fix predictable network interface names in initrd
https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
says, that udev is responsible for predictable network interface names,
so udev package is a better place for its configuration file.

(From OE-Core rev: 4cf7c6b86b26c8355054f93e2aa5e05a35e536c6)

Signed-off-by: Tomasz Meresiński <tomasz.meresinski@comarch.pl>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-10 13:46:17 +01:00
Vincent Prince
dd8c80b235 systemd: Add pattern matching support to PACKAGECONFIG
libpcre2 is needed to enable grep option to journalctl.

(From OE-Core rev: 623946c9b56d4a253e0e82936ec86595edc1da1b)

Signed-off-by: Vincent Prince <vincent.prince.fr@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-29 08:28:53 +00:00
Alex Kiernan
0e993d4057 systemd: Add PACKAGECONFIG for openssl
(From OE-Core rev: 6b0daceda2aa42052f28aeac6b49a2a744d5e1b7)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-25 23:19:53 +00:00
Otavio Salvador
6c66a46c51 systemd: Update to systemd-stable v241-stable release
This changes the repository to use the systemd-stable, and update to
the latest release from v241-stable branch.

Following changes are included:

c1f8ff8d0d login: mark nomodeset fb devices as master-of-seat
59f2213e45 login: HyperV requires master-of-seat to be set
a09c170122 Allocate temporary strings to hold dbus paths on the heap
4f54afd5a1 Refuse dbus message paths longer than BUS_PATH_SIZE_MAX limit.
b22a96ef2f NEWS: add entry about 'udevadm trigger --wait-daemon'
bada94eb3e NEWS: fix release date
e9f930b2f5 udev-event: make subst_format_var() always provide null-terminated string on success
66320aec80 sd-device: also store properties read from udev database to sd_device::properties_db
dffc22c833 udev-rules: update log messages about OWNER= or GROUP= settings on --resolve=names=never

(From OE-Core rev: 0111855d2c5029c93844e08fcd48592137bfb68a)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-21 16:19:23 +00:00
Marcus Cooper
f915e9c3d9 systemd: fix CVE-2019-6454
The original fix was deleted when systemd was bumped from v239 to v241,
however not all of the patches have made it into the latest version.

Refactor the original patch to contain the missing changes.

(From OE-Core rev: 400a0468a0f12f7f92f5287053a5fee0bb257fc1)

Signed-off-by: Marcus Cooper <marcusc@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-18 11:12:26 +00:00
Ross Burton
dad2a7bc3a systemd: drop unused kill-path option
This option isn't used and was dropped upstream in v240.

(From OE-Core rev: 57154e8f8e65db82c5b75dc10635db308b525820)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-18 11:12:26 +00:00
Luca Boccassi
5c7fc6057a systemd: do not disable SELinux with musl
Building and running SELinux with musl works fine these days,
so don't disable it in the systemd bitbake file.

(From OE-Core rev: afea472cdc5e72e2794b30b00f68e59ffb1e104c)

Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-12 11:57:41 -07:00
Chen Qi
1ee33bc13f systemd: backport one more patch to fix version.h parallel build failure
We backported a patch to fix parallel build failure about version.h. But
that is not enough. We need one more patch to really fix this issue.

(From OE-Core rev: 9ed1dd6329b393e4f780fb88fea98bc930138a57)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-12 11:57:41 -07:00
Chen Qi
856d620755 systemd: backport patch to fix parallel build failure
Backport patch to fix parallel build failure like below.

       In file included from ../git/src/core/dbus-manager.c:10:
       ../git/src/basic/build.h:4:10: fatal error: version.h: No such file or directory
       #include "version.h"
                 ^~~~~~~~~~~
       compilation terminated.

(From OE-Core rev: 89712946c10f1c762175053e1945b7d0f330c446)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-07 21:55:29 +00:00
Chen Qi
38cdb19dea systemd-boot: upgrade to 241
The following two patches are added because I cannot figure
out how to pass parameter to efi-cc if it's changed to be
an array value.

  systemd/0001-Revert-meson-print-EFI-CC-configuration-nicely.patch
  systemd/0001-Revert-meson-use-an-array-option-for-efi-cc.patch

(From OE-Core rev: 42ec27489135f5c2dbe708dacb5dadb0f5d9df5b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-03 15:38:13 +00:00
Chen Qi
40bc0ed880 systemd-conf: add version info in recipe name
(From OE-Core rev: 9a56b4ee0e3f7be76fb1b018bd639ae68d0ca2bd)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-03 15:38:13 +00:00
Chen Qi
4eb2b3f150 systemd: upgrade to 241
PATCH REBASED:
==============
0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch
0004-rules-whitelist-hd-devices.patch
0007-rules-watch-metadata-changes-in-ide-devices.patch
0001-Use-getenv-when-secure-versions-are-not-available.patch
0002-don-t-use-glibc-specific-qsort_r.patch
0004-add-fallback-parse_printf_format-implementation.patch
0006-src-basic-missing.h-check-for-missing-strndupa.patch
0007-Include-netinet-if_ether.h.patch
0008-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
0009-add-missing-FTW_-macros-for-musl.patch
0012-fix-missing-of-__register_atfork-for-non-glibc-build.patch
0013-Use-uintmax_t-for-handling-rlim_t.patch
0014-fix-missing-ULONG_LONG_MAX-definition-in-case-of-mus.patch
0021-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch

PATCH DROPPED:
==============
0005-Make-root-s-home-directory-configurable.patch
  systemd has its hardcoded assumption about /home and /, and it also respects
  $HOME environment var, so this patch is somehow useless. This patch was originally
  added but in fact had no real runtime effect except messing up some hardcoded assumptions,
  and it was accidently manipulated during systemd upgrade. We have in fact not
  used the orignal patch for more than two releases and things were working out
  well.
0006-remove-nobody-user-group-checking.patch
  The issue has been fixed upstream by the following commit.
    "check nobody user/group validity only when not cross compiling"
0008-Do-not-enable-nss-tests-if-nss-systemd-is-not-enable.patch
0009-nss-mymachines-Build-conditionally-when-ENABLE_MYHOS.patch
  The issue has been fixed upstream by the following commit.
    "meson: allow building resolved and machined without nss modules"
0001-login-use-parse_uid-when-unmounting-user-runtime-dir.patch
0001-sd-bus-make-BUS_DEFAULT_TIMEOUT-configurable.patch
  Backport
0022-build-sys-Detect-whether-struct-statx-is-defined-in-.patch
  Merged
0023-resolvconf-fixes-for-the-compatibility-interface.patch
0001-core-when-deserializing-state-always-use-read_line-L.patch
0001-chown-recursive-let-s-rework-the-recursive-logic-to-.patch
0001-dhcp6-make-sure-we-have-enough-space-for-the-DHCP6-o.patch
0001-Revert-sysctl.d-request-ECN-on-both-in-and-outgoing-.patch
0001-timesync-changes-type-of-drift_freq-to-int64_t.patch
  Backport
0001-sysctl-Don-t-pass-null-directive-argument-to-s.patch
0002-core-Fix-use-after-free-case-in-load_from_path.patch
  Merged
0001-meson-rename-Ddebug-to-Ddebug-extra.patch
0024-journald-do-not-store-the-iovec-entry-for-process-co.patch
0025-journald-set-a-limit-on-the-number-of-fields.patch
0026-journal-fix-out-of-bounds-read-CVE-2018-16866.patch
CVE-2019-6454.patch
sd-bus-if-we-receive-an-invalid-dbus-message-ignore-.patch
0005-basic-user-util-properly-protect-use-of-gshadow.patch
0022-Use-if-instead-of-ifdef-for-ENABLE_GSHADOW.patch
  Backport
0001-Remove-fstack-protector-flags-to-workaround-musl-bui.patch
  No build failure for qemux86/qemuppc + musl

PATCH ADDED:
============
0020-missing_type.h-add-__compar_d_fn_t-definition.patch
0021-avoid-redefinition-of-prctl_mm_map-structure.patch
0022-include-sys-wait.h-to-avoid-compile-failure.patch
0023-socket-util.h-include-string.h.patch
0024-test-json.c-define-M_PIl.patch
0001-do-not-disable-buffer-in-writing-files.patch

PATCH OTHERS:
=============
0003-comparison_fn_t-is-glibc-specific-use-raw-signature-.patch
0011-src-basic-missing.h-check-for-missing-__compar_fn_t-.patch
are combined into one patch:
0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch

Add two more PACKAGECONFIG, nss-mymachines and nss-resolve  which are introduced
by the following commit.
  meson: allow building resolved and machined without nss modules

(From OE-Core rev: 816e08c18dbcf6e84dedc7a4bd96ddfbf2f86ebc)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-03 15:38:13 +00:00
Serhey Popovych
842908cbf1 systemd: Correctly check ENABLE_GSHADOW with if/endif
Use commit 4f07ffa8f5ab ("Use #if instead of #ifdef for ENABLE_GSHADOW")
from upstream to check ENABLE_GSHADOW correctly that is defined as 0
in case of musl.

While there replace specific patch with one from upstream that does
exactly the same commit 66a5b5ce9b99 ("basic/user-util: properly protect
use of gshadow").

(From OE-Core rev: c9580ef0810196f6703567d9db458b73dbbfb35f)

Signed-off-by: Serhey Popovych <serhe.popovych@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-25 16:35:33 +00:00
George McCollister
5855ff75a5 systemd: fix CVE-2019-6454
Apply patches from systemd_239-7ubuntu10.8 to fix CVE-2019-6454.
CVE-2019-6454 is an issue in which systemd (PID1) can be crashed with a
specially formed D-Bus message.

For information see:
https://usn.ubuntu.com/3891-1/
https://git.launchpad.net/ubuntu/+source/systemd/commit/?id=f8e75d5634904c8e672658856508c3a02f349adb

(From OE-Core rev: 9d2ec5970adfc906fcc4581528321a879953fd55)

Signed-off-by: George McCollister <george.mccollister@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-25 10:43:06 +00:00
André Draszik
d31259fa46 systemd: RDEPENDS on util-linux-umount
It looks like there is an implicit dependency on util-linux'
umount - as otherwise when using busybox' umount we see a
long delay on shutdown / reboot.

[YOCTO #13058]

(From OE-Core rev: 39a3d2c603429865af632fe41b2cf32c3dfdfb1d)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-14 11:20:55 +00:00
Richard Purdie
af0b3d6909 systemd: Update recent CVE patches
* Added CVE tag, Upstream-Status tag and Sign-off-by tags.
* Removed the verification of the entry length in the header
* Squashed CVE-2018-16865 patches into one
* CVE-2018-16866 patch now taken from systemd-stable and includes
  an additional heap buffer overflow fix.

(From OE-Core rev: bc79395e2fcb886f224a4ad837fd93c779d2c53d)

Signed-off-by: Marcus Cooper <marcusc@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-28 23:14:09 +00:00
Marcus Cooper
74b2286f5d systemd: Security fix CVE-2018-16866
Affects < v240

(From OE-Core rev: bdee9122fe67467d1ec17012902a441fecb0cb9b)

Signed-off-by: Marcus Cooper <marcusc@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-24 17:45:25 +00:00
Marcus Cooper
5c3eba1371 systemd: Security fix CVE-2018-16865
Affects < v240

(From OE-Core rev: 314887a475ae1ac638eb80d973ffee1bd2a31a35)

Signed-off-by: Marcus Cooper <marcusc@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-24 17:45:25 +00:00
Marcus Cooper
dee2bf9c3f systemd: Security fix CVE-2018-16864
Affects < v240

(From OE-Core rev: 6900b9cc2cd3e66469a9561bb478b87c0903b0ea)

Signed-off-by: Marcus Cooper <marcusc@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-24 17:45:25 +00:00
Peter Kjellerstedt
f548c3f77b systemd: Correct a conditional add to SYSTEMD_PACKAGES
The code conditionally adding ${PN}-journal-remote to SYSTEMD_PACKAGE
checked PACKAGECONFIG for an empty string rather than 'microhttpd'...

(From OE-Core rev: 42d52a279a75c94c4deba50b448dd3b6b2ac75df)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-16 15:35:07 +00:00
Peter Kjellerstedt
f509a85cea systemd: Correct and clean up user/group definitions
This makes sure that packages are only added to USERADD_PACKAGES if
they will create users/groups. This avoids the following error:

  ERROR: systemd_239.bb: meta/recipes-core/systemd/systemd_239.bb
  inherits useradd but doesn't set USERADD_PARAM, GROUPADD_PARAM or
  GROUPMEMS_PARAM for package systemd-journal-gateway

Normally this problem is not triggered even if the conditional code that
expands in, e.g., USERADD_PARAM_${PN}-journal-gateway is empty because
it is assigned with += and thus ends up as " ", which fools the check in
useradd.bbclass.

However, if USERADDEXTENSION += "useradd-staticids" and
INHERIT += "extrausers" are used, they cause the problem to occur. The
reason for this is because when useradd-staticids is used, it rewrites
USERADD_PARAM_${PN}-journal-gateway, which strips unnecessary whitespace
and thus USERADD_PARAM_${PN}-journal-gateway becomes empty. And
extrausers is needed, because otherwise the test in useradd.bbclass is
triggered before useradd-staticids has rewritten the variables...

(From OE-Core rev: 63ae444b1dba65ccb1693648914becabd65ac30d)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-16 15:35:07 +00:00
Stefan Agner
6d0864469a systemd: only enable polkit if DISTRO_FEATURES asks for polkit
Only add polkit to PACKAGECONFIG if polkit is in DISTRO_FEATURES.

(From OE-Core rev: 1cde1b68d29da119ca290fd39acf3184499e2f34)

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-16 15:35:07 +00:00
André Draszik
dfd833725d meta: remove True option to getVar calls (again)
A couple have still been missed in the past despite multiple
attempts at doing so (or simply have re-appeared?).

Search & replace made using the following command:
    sed -e 's|\(d\.getVar \?\)( \?\([^,()]*\), \?True)|\1(\2)|g' \
        -i $(git grep -E 'getVar ?\( ?([^,()]*), ?True\)' \
             | cut -d':' -f1 \
             | sort -u)

(From OE-Core rev: 9f551d588693328e4d99d33be94f26684eafcaba)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-14 11:35:56 +00:00
Alex Kiernan
0f0c16071d systemd: Add PACKAGECONFIG for gnutls
(From OE-Core rev: da0c196cdc4eb74c7517089dc192d6a77227b6e2)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-11 10:39:09 +00:00
Alexander Kanavin
f4f3444947 systemd: backport a patch to fix meson 0.49.0 issue
(From OE-Core rev: 81ecfbb19ccb5b5241cfdd871d41459bda3dba4d)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-03 12:35:54 +00:00
Khem Raj
1fa8e90c42 systemd: Fix memory use after free errors
Found with gcc trunk

(From OE-Core rev: 381c63ad2a6e004658b0232b6e6763f49f412b2b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-18 16:19:34 +00:00
Kai Kang
53d8896c5b systemd: fix compile error for x32
Backport patch to fix systemd compile error for x32:

| ../git/src/timesync/timesyncd-manager.c:607:19: error: format '%lli'
| expects argument of type 'long long int', but argument 11 has type
| 'long int' [-Werror=format=]

[YOCTO #13074]

(From OE-Core rev: 7201df413616cab8d7f3257f86dd7a0a5c7719ee)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-14 17:10:59 +00:00