Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • pkg/systemd
  • em/systemd
  • wlozano/systemd
  • pkg-rebase-trixie/systemd
4 results
Show changes
Showing with 612 additions and 450 deletions
*.a
*.cache
*.gch
*.log
*.o
*.plist
*.py[co]
*.stamp
*.swp
*.trs
*~
.config.args
.gdb_history
.deps/
.mypy_cache/
__pycache__/
/*.gcda
/*.gcno
/*.tar.bz2
......@@ -29,9 +26,16 @@
/.#image.raw.lck
/image.raw.cache-pre-dev
/image.raw.cache-pre-inst
/image.raw.manifest
/install-tree
/.mkosi-*
/mkosi.builddir/
/mkosi.output/
/mkosi.installdir/
/mkosi.key
/mkosi.crt
mkosi.local.conf
/tags
__pycache__/
.dir-locals-2.el
.vscode/
/pkg/
extraction:
cpp:
prepare:
packages:
- python3-pip
- python3-setuptools
- python3-wheel
after_prepare:
- pip3 install meson
- export PATH="$HOME/.local/bin/:$PATH"
python:
python_setup:
version: 3
/**
* @name Use of fgets()
* @description fgets() is dangerous to call. Use read_line() instead.
* @kind problem
* @problem.severity error
* @precision high
* @id cpp/fgets
* @tags reliability
* security
*/
import cpp
predicate dangerousFunction(Function function) {
exists (string name | name = function.getQualifiedName() |
name = "fgets")
}
from FunctionCall call, Function target
where call.getTarget() = target
and dangerousFunction(target)
select call, target.getQualifiedName() + " is potentially dangerous"
......@@ -8,12 +8,14 @@ Alexandros Frantzis <alexandros.frantzis@canonical.com>
Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Ananth N Mavinakayanahalli <ananth@in.ibm.com> <ananthmg@rediffmail.com>
Andreas Henriksson <andreas@fatal.se>
Andrey Yashkin <38919268+AndreyYashkin@users.noreply.github.com>
Anthony Parsons <flussence@users.noreply.github.com>
Antoine Eiche <lewo@abesis.fr>
Arnd Bergmann <arnd@arndb.de>
Atul Sabharwal <atul.sabharwal@intel.com>
Bart Rulon <barron@lexmark.com>
Bastien Nocera <hadess@hadess.net> <hadess@users.noreply.github.com>
Baybal Ni <nikulinpi@gmail.com>
Beniamino Galvani <bgalvani@redhat.com> <bengal@users.noreply.github.com>
Bill Yodlowsky <bill@redhat.com> <itsbill@users.noreply.github.com>
Brian Boylston <brian.boylston@hpe.com>
......@@ -21,19 +23,25 @@ Charles (Chas) Williams <ciwillia@brocade.com>
Chen Qi <Qi.Chen@windriver.com> <40684930+ChenQi1989@users.noreply.github.com>
Christophe Varoqui <christophe.varoqui@free.fr>
Colin Guthrie <ColinGuthrie@web>
Cristian Rodríguez <cristian@rodriguez.im> <crodriguez@owncloud.com>
Daniel Elstner <daniel.kitta@gmail.com> <danielk@openismus.com>
Daniel Gorbea <danielgorbea@hotmail.com>
Daniel J Walsh <dwalsh@redhat.com>
Daniel Kahn Gillmor <dkg@fifthhorseman.net>
Daniel Machon <Danielmachon@live.dk>
Daniel P. Berrangé <berrange@redhat.com>
Daniel Rusek <mail@asciiwolf.com>
Daniel Stekloff <dsteklof@us.ibm.com>
Daniel Șerbănescu <dasj19@users.noreply.github.com>
Dann Frazier <dann.frazier@canonical.com>
Dave Reisner <dreisner@archlinux.org> <d@falconindy.com>
David Santamaría Rogado <howl.nsp@gmail.com>
David Zeuthen <david@fubar.dk>
David Zeuthen <david@fubar.dk> <davidz@redhat.com>
David Zeuthen <david@fubar.dk> <zeuthen@gmail.com>
Davide Cavalca <dcavalca@fb.com> <davide125@tiscali.it>
Dennis Wassenberg <dennis.wassenberg@secunet.com>
Diego Canuhe <dcanuhe@gmail.com> <46734128+dcanuhe@users.noreply.github.com>
Diego Elio Pettenò <flameeyes@gmail.com>
Dmitriy Geels <dmitriy.geels@gmail.com>
Dmitry Khlebnikov <dmitry.khlebnikov@rea-group.com> <galaxy4public@users.noreply.github.com>
......@@ -45,8 +53,10 @@ Fabiano Fidêncio <fabianofidencio@gmail.com> Fabiano Fidencio <fidencio@profusi
Faizal Luthfi <zalluth@gmail.com>
Federico Di Pierro <nierro92@gmail.com>
Fionn Cleary <clearyf@tcd.ie>
Frantisek Sumsal <frantisek@sumsal.cz> <fsumsal@redhat.com>
Frederic Crozat <fcrozat@suse.com> <fcrozat@mandriva.com>
Gautier Husson <admin_github@liberasys.com>
Gaël PORTAY <gael.portay@collabora.com> <gael.portay@rtone.fr>
George Gaydarov <git@gg7.io> <gg7@users.noreply.github.com>
Gianluca Boiano <morf3089@gmail.com>
Greg Kroah-Hartman <greg@kroah.com>
......@@ -65,12 +75,15 @@ Hendrik Westerberg <hendrik@gestorf.com>
Ian Campbell <ijc@hellion.org.uk> <Ian.Campbell@citrix.com>
Insun Pyo <insun.pyo@samsung.com>
Insun Pyo <insun.pyo@samsung.com> <iplayinsun@gmail.com>
Jay Burger <jay.burger@fujitsu.com> <root@new-host-3.home>
Jerone Young <jyoung@redhat.com> <jerone.young@canonical.com>
Jiuyang Liu <liujiuyang1994@gmail.com>
Jiří Pírko <jiri@mellanox.com>
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> <glaubitz@suse.com>
Jon Ringle <jringle@gridpoint.com> <ringlej@users.noreply.github.com>
Jonas Dorel <jonas.dorel@laposte.net>
Jonathon Kowalski <bl0pbl33p@gmail.com>
Josef Andersson <josef.andersson@fripost.org>
Josef Andersson <l10nl18nsweja@gmail.com>
José Bollo <jose.bollo@iot.bzh> <jobol@nonadev.net>
......@@ -85,16 +98,19 @@ Kay Sievers <kay@vrfy.org> <kay.sievers@vrfy.org>
Kay Sievers <kay@vrfy.org> <kay@pim.off.vrfy.org>
Kay Sievers <kay@vrfy.org> <kay@pim>
Kay Sievers <kay@vrfy.org> <kay@yik.fritz.box>
Kevin Becker <kevin@kevinbecker.org>
Krzysztof Jackiewicz <k.jackiewicz@samsung.com> <kjackiewicz@users.noreply.github.com>
Larry Bernstone <lbernstone@gmail.com>
Lennart Poettering <lennart@poettering.net> <LennartPoettering@web>
Lennart Poettering <lennart@poettering.net> <lennart@bf9bc1cc-28ce-0310-abfb-9041aa761afb>
Lennart Poettering <lennart@poettering.net> <mzninuv@0pointer.de>
Leonard König <leonard.r.koenig@googlemail.com>
Luca BRUNO <luca.bruno@coreos.com>
Luis Felipe Strano Moraes <luis.strano@gmail.com> <lfelipe@profusion.mobi>
Lukáš Nykrýn <lnykryn@redhat.com>
Lukáš Říha <cedel@centrum.cz>
Mao Huang <littlecvr@gmail.com>
Marc-André Lureau <marcandre.lureau@gmail.com>
Marco d'Itri <md@linux.it> <md@Linux.IT>
Marcus Cooper <marcusc@axis.com> <codekipper@gmail.com>
Mario Limonciello <mario_limonciello@dell.com> <Mario_Limonciello@dell.com>
......@@ -111,19 +127,24 @@ Michael Biebl <biebl@debian.org> <mbiebl@gmail.com>
Michael Buesch <mbuesch@freenet.de>
Michael Hoy <rimmington@gmail.com>
Michael Olbrich <m.olbrich@pengutronix.de>
Michael Trapp <michael.trapp@sap.com>
Michal Sekletár <msekleta@redhat.com>
Michal Sekletár <msekleta@redhat.com> <msekletar@users.noreply.github.com>
Michal Soltys <soltys@ziu.info> <nozo@ziu.info>
Michal Suchanek <msuchanek@suse.de>
Michal Suchanek <msuchanek@suse.de> <hramrach@gmail.com>
Michał Szczepański <skrzatu@hotmail.com> <skrzatu@gmail.com>
Michel Kraus <github@demonsphere.de> <27o@users.noreply.github.com>
Michele Guerini Rocco <rnhmjoj@inventati.org>
Mike Auty <mike.auty@gmail.com>
Miklos Vajna <vmiklos@frugalware.org> <vmiklos@gmail.com>
Milan Pässler <me@petabyteboy.de>
Neil Brown <neil@brown.name>
Neil Brown <neilb@suse.com>
Neal Gompa (ニール・ゴンパ) <ngompa13@gmail.com>
Niklas Tibbling <niklasti@axis.com> <45659916+tibbling@users.noreply.github.com>
Nikolas Nyby <nnyby@columbia.edu>
Nogisaka Sadata <ngsksdt@gmail.com>
Olaf Hering <olh@suse.de>
Omojola Joshua <omojolajoshua@gmail.com>
Omojola Joshua <omojolajoshua@gmail.com> <109356020+1awesomeJ@users.noreply.github.com>
Otto Wallenius <otto_026@hotmail.com>
Pablo Lezaeta Reyes <prflr88@gmail.com>
Paolo Giangrandi <paolo@luccalug.it>
......@@ -131,6 +152,7 @@ Patrick Mansfield <patmans@us.ibm.com>
Patryk Kocielnik <longer44@gmail.com>
Paul Mundt <lethal@linux-sh.org>
Pavel Hrdina <phrdina@redhat.com>
Perry Yuan <perry_yuan@dell.com>
Peter D'Hoye <peter.dhoye@gmail.com>
Piotr Szydełko <wiertel@users.sourceforge.net>
Piter PUNK <piterpunk@slackware.com> <piterpk@terra.com.br>
......@@ -142,7 +164,9 @@ Robby Workman <rw@rlworkman.net> <rworkman@slackware.com>
Robert Gerus <ar@bash.org.pl> Robert "arachnist" Gerus <ar@bash.org.pl>
Robert Kolchmeyer <rkolchmeyer@google.com> <rkolchmeyer@users.noreply.github.com>
Robert Love <rml@tech9.net>
Roger James <roger@beardandsandals.co.uk>
Roman Stingler <coolx67@gmx.at>
Ronald Tschalär <ronald@innovation.ch>
Rubén Suárez Alvarez <rubensa@tluportatil082> <rubensa@gmail.com>
Salvo Tomaselli <ltworf@users.noreply.github.com>
Sandy Carter <bwrsandman@gmail.com>
......@@ -150,6 +174,7 @@ Scott James Remnant <scott@netsplit.com>
Scott James Remnant <scott@netsplit.com> <scott@ubuntu.com>
Seraphime Kirkovski <kirkseraph@gmail.com>
Shawn Landden <shawnlandden@gmail.com> <shawn@churchofgit.com>
Shawn Landden <slandden@gmail.com>
Shawn Landden <slandden@gmail.com> <shawn@git.icu>
Silvio Knizek <killermoehre@gmx.net>
Simon Peeters <peeters.simon@gmail.com>
......@@ -158,9 +183,11 @@ Stanislav Angelovič <angelovic.s@gmail.com>
Stasiek Michalski <hellcp@opensuse.org>
Stefan Pietsch <mail.ipv4v6@gmail.com>
Stefan Schweter <stefan@schweter.it>
Stephan Edel <se@se-it.eu>
Stuart McLaren <stuart.mclaren@hp.com>
Susant Sahani <ssahani@gmail.com> <145210+ssahani@users.noreply.github.com>
Susant Sahani <ssahani@gmail.com> <susant@redhat.com>
Sylvain Plantefeve <sylvain.plantefeve@gmail.com>
Sébastien Bacher <seb128@ubuntu.com>
Tanu Kaskinen <TanuKaskinen@web>
Ted Ts'o <tytso@mit.edu>
......@@ -171,7 +198,7 @@ Thomas H. P. Andersen <phomes@gmail.com>
Tiago Levit <liamgliam@gmail.com>
Tibor Nagy <xnagytibor@gmail.com>
Tinu Weber <takeya@bluewin.ch>
Tobias Jungel <tobias.jungel@bisdn.de> Tobias Jungel <Tobias.Jungel@gmail.com>
Tobias Jungel <tobias.jungel@bisdn.de> <Tobias.Jungel@gmail.com>
Tobias Klauser <tklauser@access.unizh.ch>
Tobias Klauser <tklauser@access.unizh.ch> <klauser@access.unizh.ch>
Tobias Klauser <tklauser@access.unizh.ch> <tklauser@access.unizh.chbk>
......@@ -184,17 +211,18 @@ Tomasz Pala <gotar@polanet.pl>
Torsten Hilbrich <torsten.hilbrich@gmx.net>
Umut Tezduyar Lindskog <umut@tezduyar.com>
Vasilis Liaskovitis <vliaskov@gmail.com>
Viktar Vaŭčkievič <victorenator@gmail.com>
Vladislav Vishnyakov <split7fire@yandex.ru>
Weblate <noreply@weblate.org>
William Jon McCann <jmccann@redhat.com> <william.jon.mccann@gmail.com>
Wim van Mourik <wvanmourik@computest.nl> <githubw@use.startmail.com>
Yann E. Morin <yann.morin.1998@free.fr>
Yao Wei (魏銘廷) <yao.wei@canonical.com>
Yi Gao <ymuemc@163.com>
Yin Kangkai <kangkai.yin@intel.com> <kangkai.yin@linux.intel.com>
Zachary Winnerman <33329648+winnerman-pythian@users.noreply.github.com>
Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> <you@example.com>
msizanoen <msizanoen@qtmlabs.xyz>
Łukasz Stelmach <l.stelmach@samsung.com> <stlman@poczta.fm>
Jonathon Kowalski <bl0pbl33p@gmail.com>
Diego Canuhe <dcanuhe@gmail.com> <46734128+dcanuhe@users.noreply.github.com>
David Santamaría Rogado <howl.nsp@gmail.com>
Mike Auty <mike.auty@gmail.com>
Roger James <roger@beardandsandals.co.uk>
Stephan Edel <se@se-it.eu>
Дамјан Георгиевски <gdamjan@gmail.com>
# SPDX-License-Identifier: LGPL-2.1+
#
# Copyright © 2016 Zeal Jagannatha
# This is a settings file for OS image generation using mkosi (https://github.com/systemd/mkosi).
# Simply invoke "mkosi" in the project directory to build an OS image.
[Distribution]
Distribution=arch
[Output]
Format=raw_btrfs
Bootable=yes
[Partitions]
RootSize=2G
[Packages]
Cache=/var/cache/pacman/pkg/
BuildPackages=
acl
bzip2
cryptsetup
curl
dbus
docbook-xsl
elfutils
gcc
gettext
git
gnu-efi-libs
gnutls
gperf
iptables
kmod
libcap
libgcrypt
libidn2
libmicrohttpd
libseccomp
libtool
libutil-linux
libxkbcommon
libxslt
lz4
m4
meson
pam
pkgconfig
python
python-lxml
qrencode
xz
Packages=
libidn2
qrencode
# SPDX-License-Identifier: LGPL-2.1+
# This is a settings file for OS image generation using mkosi (https://github.com/systemd/mkosi).
# Simply invoke "mkosi" in the project directory to build an OS image.
[Distribution]
Distribution=debian
Release=unstable
[Output]
Format=raw_btrfs
Bootable=yes
[Partitions]
RootSize=2G
[Packages]
BuildPackages=
acl
docbook-xml
docbook-xsl
gcc
gettext
git
gnu-efi
gperf
iptables-dev
libacl1-dev
libaudit-dev
libblkid-dev
libbz2-dev
libcap-dev
libcryptsetup-dev
libcurl4-gnutls-dev
libdbus-1-dev
libdw-dev
libfdisk-dev
libgcrypt20-dev
libgnutls28-dev
libidn2-0-dev
libkmod-dev
liblzma-dev
liblz4-dev
liblz4-tool
libmicrohttpd-dev
libmount-dev
libpam0g-dev
libqrencode-dev
libseccomp-dev
libsmartcols-dev
libtool
libxkbcommon-dev
m4
meson
pkg-config
python3
python3-lxml
tree
uuid-dev
xsltproc
xz-utils
Packages=
libqrencode4
locales
libidn2-0
# SPDX-License-Identifier: LGPL-2.1+
# This is a settings file for OS image generation using mkosi (https://github.com/systemd/mkosi).
# Simply invoke "mkosi" in the project directory to build an OS image.
[Distribution]
Distribution=fedora
Release=29
[Output]
Format=raw_btrfs
Bootable=yes
KernelCommandLine=printk.devkmsg=on
[Partitions]
RootSize=3G
[Packages]
BuildPackages=
audit-libs-devel
bzip2-devel
cryptsetup-devel
dbus-devel
diffutils
docbook-style-xsl
elfutils-devel
gcc
gettext
git
gnu-efi
gnu-efi-devel
gnutls-devel
gperf
hostname
iptables-devel
kmod-devel
libacl-devel
libblkid-devel
libcap-devel
libcurl-devel
libgcrypt-devel
libidn2-devel
libmicrohttpd-devel
libmount-devel
libseccomp-devel
libselinux-devel
libtool
libxkbcommon-devel
libxslt
lz4
lz4-devel
m4
meson
pam-devel
pcre2-devel
pkgconfig
python3-devel
python3-lxml
qrencode-devel
tree
xz-devel
Packages=
libidn2
BuildDirectory=mkosi.builddir
Cache=mkosi.cache
# SPDX-License-Identifier: LGPL-2.1+
# This is a settings file for OS image generation using mkosi (https://github.com/systemd/mkosi).
# Simply invoke "mkosi" in the project directory to build an OS image.
[Distribution]
Distribution=ubuntu
Release=bionic
Repositories=main,universe
[Output]
Format=raw_btrfs
Bootable=no
[Partitions]
RootSize=2G
[Packages]
BuildPackages=
acl
docbook-xml
docbook-xsl
gcc
gettext
git
gnu-efi
gperf
iptables-dev
libacl1-dev
libaudit-dev
libblkid-dev
libbz2-dev
libcap-dev
libcryptsetup-dev
libcurl4-gnutls-dev
libdbus-1-dev
libdw-dev
libfdisk-dev
libgcrypt20-dev
libgnutls28-dev
libidn2-0-dev
libkmod-dev
liblz4-dev
liblz4-tool
liblzma-dev
libmicrohttpd-dev
libmount-dev
libpam0g-dev
libqrencode-dev
libseccomp-dev
libsmartcols-dev
libtool
libxkbcommon-dev
m4
meson
pkg-config
python3
python3-lxml
tree
tzdata
uuid-dev
xsltproc
xz-utils
Packages=
libqrencode3
locales
libidn2-0
rebuild:
steps:
- trigger_services:
project: home:bluca:systemd
package: systemd
- trigger_services:
project: home:bluca:systemd
package: systemd-fedora
filters:
event: push
branches:
only:
- main
---
# SPDX-License-Identifier: LGPL-2.1-or-later
# Docs: https://packit.dev/docs/
specfile_path: .packit_rpm/systemd.spec
files_to_sync:
- .packit.yml
- src: .packit_rpm/systemd.spec
dest: systemd.spec
# `git describe` returns in systemd's case 'v245-xxx' which breaks RPM version
# detection (that expects 245-xxxx'). Let's tweak the version string accordingly
upstream_tag_template: "v{version}"
srpm_build_deps: []
actions:
get-current-version:
# Show the closest matching tag for the checked out revision, otherwise
# Packit tries to get the latest tag by creation date, which doesn't work
# well in the systemd-stable repo. We also need to sanitize it manually
# since "upstream_tag_template" defined above doesn't apply here.
- "bash -ec 'git describe --tags --abbrev=0 | cut -b 2-'"
post-upstream-clone:
# Use the Fedora Rawhide specfile
- git clone https://src.fedoraproject.org/rpms/systemd .packit_rpm --depth=1
- bash -c 'echo "%bcond upstream 1" > .packit_rpm/systemd.spec.new'
- bash -c 'echo "%define meson_extra_configure_options --werror" >> .packit_rpm/systemd.spec.new'
- bash -c 'cat .packit_rpm/systemd.spec >> .packit_rpm/systemd.spec.new'
- mv .packit_rpm/systemd.spec.new .packit_rpm/systemd.spec
jobs:
- job: copr_build
trigger: pull_request
targets:
- fedora-rawhide-aarch64
- fedora-rawhide-i386
- fedora-rawhide-ppc64le
- fedora-rawhide-s390x
- fedora-rawhide-x86_64
- job: tests
trigger: pull_request
fmf_path: test/fmf
tmt_plan: ci
targets:
- fedora-rawhide-x86_64
[MAIN]
extension-pkg-allow-list=lxml
[MESSAGES CONTROL]
disable=fixme,
invalid-name,
line-too-long,
missing-class-docstring,
missing-docstring,
missing-function-docstring,
missing-module-docstring,
too-few-public-methods,
too-many-arguments,
too-many-boolean-expressions,
too-many-branches,
too-many-instance-attributes,
too-many-instance-attributes,
too-many-lines,
too-many-locals,
too-many-public-methods,
too-many-return-statements,
too-many-statements,
unspecified-encoding,
#!/usr/bin/env bash
# SPDX-License-Identifier: LGPL-2.1-or-later
set -eux
set -o pipefail
# default to Debian testing
DISTRO="${DISTRO:-debian}"
RELEASE="${RELEASE:-bookworm}"
SALSA_URL="${SALSA_URL:-https://salsa.debian.org/systemd-team/systemd.git}"
BRANCH="${BRANCH:-ci/v257-stable}"
ARCH="${ARCH:-amd64}"
CONTAINER="${RELEASE}-${ARCH}"
CACHE_DIR=/var/tmp
TMPDIR=/var/tmp
AUTOPKGTEST_DIR="${CACHE_DIR}/autopkgtest"
# semaphore cannot expose these, but useful for interactive/local runs
ARTIFACTS_DIR=/tmp/artifacts
# shellcheck disable=SC2206
PHASES=(${@:-SETUP RUN})
UBUNTU_RELEASE="$(lsb_release -cs)"
create_container() {
sudo lxc-create -n "$CONTAINER" -t download -- -d "$DISTRO" -r "$RELEASE" -a "$ARCH"
# unconfine the container, otherwise some tests fail
echo 'lxc.apparmor.profile = unconfined' | sudo tee -a "/var/lib/lxc/$CONTAINER/config"
sudo lxc-start -n "$CONTAINER"
# enable source repositories so that apt-get build-dep works
sudo lxc-attach -n "$CONTAINER" -- sh -ex <<EOF
sed 's/^deb/deb-src/' /etc/apt/sources.list >>/etc/apt/sources.list.d/sources.list
echo "deb http://deb.debian.org/debian $RELEASE-backports main" >/etc/apt/sources.list.d/backports.list
# We might attach the console too soon
until systemctl --quiet --wait is-system-running; do sleep 1; done
# Manpages database trigger takes a lot of time and is not useful in a CI
echo 'man-db man-db/auto-update boolean false' | debconf-set-selections
# Speed up dpkg, image is thrown away after the test
mkdir -p /etc/dpkg/dpkg.cfg.d/
echo 'force-unsafe-io' >/etc/dpkg/dpkg.cfg.d/unsafe_io
# For some reason, it is necessary to run this manually or the interface won't be configured
# Note that we avoid networkd, as some of the tests will break it later on
dhclient
apt-get -q --allow-releaseinfo-change update
apt-get -y dist-upgrade
apt-get install -y eatmydata
# The following four are needed as long as these deps are not covered by Debian's own packaging
apt-get install -y tree libpwquality-dev rpm libcurl4-openssl-dev libarchive-dev
# autopkgtest doesn't consider backports
apt-get install -y -t $RELEASE-backports debhelper
apt-get purge --auto-remove -y unattended-upgrades
systemctl unmask systemd-networkd
systemctl enable systemd-networkd
EOF
sudo lxc-stop -n "$CONTAINER"
}
for phase in "${PHASES[@]}"; do
case "$phase" in
SETUP)
# remove semaphore repos, some of them don't work and cause error messages
sudo rm -rf /etc/apt/sources.list.d/*
# enable backports for latest LXC
echo "deb http://archive.ubuntu.com/ubuntu $UBUNTU_RELEASE-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/backports.list
sudo apt-get -q update
sudo apt-get install -y -t "$UBUNTU_RELEASE-backports" lxc
sudo apt-get install -y python3-debian git dpkg-dev fakeroot python3-jinja2
[ -d "$AUTOPKGTEST_DIR" ] || git clone --quiet --depth=1 https://salsa.debian.org/ci-team/autopkgtest.git "$AUTOPKGTEST_DIR"
create_container
;;
RUN)
# add current debian/ packaging
git fetch --depth=1 "$SALSA_URL" "$BRANCH"
git checkout FETCH_HEAD debian
# craft changelog
UPSTREAM_VER="$(git describe | sed 's/^v//;s/-/./g')"
cat <<EOF >debian/changelog.new
systemd (${UPSTREAM_VER}.0) UNRELEASED; urgency=low
* Automatic build for upstream test
-- systemd test <pkg-systemd-maintainers@lists.alioth.debian.org> $(date -R)
EOF
cat debian/changelog >>debian/changelog.new
mv debian/changelog.new debian/changelog
# clean out patches
rm -rf debian/patches
# disable autopkgtests which are not for upstream
sed -i '/# NOUPSTREAM/ q' debian/tests/control
# enable more unit tests
sed -i '/^CONFFLAGS =/ s/=/= --werror /' debian/rules
# no orig tarball
echo '1.0' >debian/source/format
# build source package
dpkg-buildpackage -S -I -I"$(basename "$CACHE_DIR")" -d -us -uc -nc
# now build the package and run the tests
rm -rf "$ARTIFACTS_DIR"
# autopkgtest exits with 2 for "some tests skipped", accept that
sudo TMPDIR=/var/tmp "$AUTOPKGTEST_DIR/runner/autopkgtest" --env DEB_BUILD_OPTIONS="noudeb nostrip nodoc optimize=-lto" \
--env DPKG_DEB_COMPRESSOR_TYPE="none" \
--env DEB_BUILD_PROFILES="pkg.systemd.upstream noudeb nodoc" \
--env TEST_UPSTREAM=1 \
../systemd_*.dsc \
-o "$ARTIFACTS_DIR" \
-- lxc -s "$CONTAINER" \
|| [ $? -eq 2 ]
;;
*)
echo >&2 "Unknown phase '$phase'"
exit 1
esac
done
---
# SPDX-License-Identifier: LGPL-2.1-or-later
# vi: ts=2 sw=2 et:
version: v1.0
name: Debian autopkgtest (LXC)
agent:
machine:
type: e1-standard-2
os_image: ubuntu2004
# Cancel any running or queued job for the same ref
auto_cancel:
running:
when: "true"
execution_time_limit:
hours: 2
blocks:
- name: "Setup & test"
task:
jobs:
- name: "Install dependencies & run the Debian autopkgtest"
commands:
- checkout --use-cache
- .semaphore/semaphore-runner.sh SETUP
- .semaphore/semaphore-runner.sh RUN
sudo: required
dist: xenial
services:
- docker
env:
global:
- AUTHOR_EMAIL="$(git log -1 $TRAVIS_COMMIT --pretty=\"%aE\")"
- CI_MANAGERS="$TRAVIS_BUILD_DIR/travis-ci/managers"
- CI_TOOLS="$TRAVIS_BUILD_DIR/travis-ci/tools"
- REPO_ROOT="$TRAVIS_BUILD_DIR"
stages:
# Run Coverity periodically instead of for each commit/PR
- name: Coverity
if: type = cron
jobs:
include:
- stage: Build & test
name: Debian Testing
language: bash
env:
- DEBIAN_RELEASE="testing"
- CONT_NAME="systemd-debian-$DEBIAN_RELEASE"
- DOCKER_EXEC="docker exec -ti $CONT_NAME"
before_install:
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
- docker --version
install:
- $CI_MANAGERS/debian.sh SETUP
script:
- set -e
# Build systemd
- $CI_MANAGERS/debian.sh RUN
- set +e
after_script:
- $CI_MANAGERS/debian.sh CLEANUP
- name: Debian Testing (ASan+UBSan)
language: bash
env:
- DEBIAN_RELEASE="testing"
- CONT_NAME="systemd-debian-$DEBIAN_RELEASE"
- DOCKER_EXEC="docker exec -ti $CONT_NAME"
before_install:
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
- docker --version
install:
- $CI_MANAGERS/debian.sh SETUP
script:
- set -e
- $CI_MANAGERS/debian.sh RUN_ASAN
- set +e
after_script:
- $CI_MANAGERS/debian.sh CLEANUP
- name: Debian Testing (clang)
language: bash
env:
- DEBIAN_RELEASE="testing"
- CONT_NAME="systemd-debian-$DEBIAN_RELEASE"
- DOCKER_EXEC="docker exec -ti $CONT_NAME"
before_install:
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
- docker --version
install:
- $CI_MANAGERS/debian.sh SETUP
script:
- set -e
- $CI_MANAGERS/debian.sh RUN_CLANG
- set +e
after_script:
- $CI_MANAGERS/debian.sh CLEANUP
- name: Debian Testing (clang ASan+UBSan)
language: bash
env:
- DEBIAN_RELEASE="testing"
- CONT_NAME="systemd-debian-$DEBIAN_RELEASE"
- DOCKER_EXEC="docker exec -ti $CONT_NAME"
before_install:
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
- docker --version
install:
- $CI_MANAGERS/debian.sh SETUP
script:
- set -e
- $CI_MANAGERS/debian.sh RUN_CLANG_ASAN
- set +e
after_script:
- $CI_MANAGERS/debian.sh CLEANUP
- name: Ubuntu Xenial
language: bash
script:
- set -e
- sudo $CI_MANAGERS/xenial.sh
- set +e
- stage: Coverity
language: bash
env:
- FEDORA_RELEASE="latest"
- CONT_NAME="coverity-fedora-$FEDORA_RELEASE"
- DOCKER_EXEC="docker exec -ti $CONT_NAME"
- TOOL_BASE="/var/tmp/coverity-scan-analysis"
- DOCKER_RUN="docker run -v $TOOL_BASE:$TOOL_BASE:rw --env-file .cov-env"
# Coverity env variables
- PLATFORM="$(uname)"
- TOOL_ARCHIVE="/var/tmp/cov-analysis-$PLATFORM.tgz
- SCAN_URL="https://scan.coverity.com"
- UPLOAD_URL="https://scan.coverity.com/builds"
- COVERITY_SCAN_PROJECT_NAME="$TRAVIS_REPO_SLUG"
- COVERITY_SCAN_NOTIFICATION_EMAIL="${AUTHOR_EMAIL}"
- COVERITY_SCAN_BRANCH_PATTERN="$TRAVIS_BRANCH"
# Encrypted COVERITY_SCAN_TOKEN env variable
# Generated using `travis encrypt -r systemd/systemd COVERITY_SCAN_TOKEN=xxxx`
- secure: "jKSz+Y1Mv8xMpQHh7g5lzW7E6HQGndFz/vKDJQ1CVShwFoyjV3Zu+MFS3UYKlh1236zL0Z4dvsYFx/b3Hq8nxZWCrWeZs2NdXgy/wh8LZhxwzcGYigp3sIA/cYdP5rDjFJO0MasNkl25/rml8+eZWz+8/xQic98UQHjSco/EOWtssoRcg0J0c4eDM7bGLfIQWE73NNY1Q1UtWjKmx1kekVrM8dPmHXJ9aERka7bmcbJAcKd6vabs6DQ5AfWccUPIn/EsRYqIJTRxJrFYU6XizANZ1a7Vwk/DWHZUEn2msxcZw5BbAMDTMx0TbfrNkKSHMHuvQUCu6KCBAq414i+LgkMfmQ2SWwKiIUsud1kxXX3ZPl9bxDv1HkvVdcniC/EM7lNEEVwm4meOnjuhI2lhOyOjmP3FTSlMHGP7xlK8DS2k9fqL58vn0BaSjwWgd+2+HuL2+nJmxcK1eLGzKqaostFxrk2Xs2vPZkUdV2nWY/asUrcWHml6YlWDn2eP83pfwxHYsMiEHY/rTKvxeVY+iirO/AphoO+eaYu7LvjKZU1Yx5Z4u/SnGWAiCH0yhMis0bWmgi7SCbw+sDd2uya+aoiLIGiB2ChW7hXHXCue/dif6/gLU7b+L8R00pQwnWdvKUPoIJCmZJYCluTeib4jpW+EmARB2+nR8wms2K9FGKM="
before_install:
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
- docker --version
install:
# Install Coverity on the host
- $CI_TOOLS/get-coverity.sh
# Export necessary env variables for Coverity
- env | grep -E "TRAVIS|COV|TOOL|URL" > .cov-env
# Pull a Docker image and start a new container
- $CI_MANAGERS/fedora.sh SETUP
script:
- set -e
# Preconfigure with meson to prevent Coverity from capturing meson metadata
# Set compiler flag to prevent emit failure
- $DOCKER_EXEC sh -c "CFLAGS='-D_Float128=long\ double -D_Float64=double -D_Float64x=long\ double -D_Float32=float -D_Float32x=double' meson cov-build -Dman=false"
# Run Coverity
- $DOCKER_EXEC tools/coverity.sh build
- $DOCKER_EXEC tools/coverity.sh upload
- set +e
after_script:
- $CI_MANAGERS/fedora.sh CLEANUP
......@@ -17,4 +17,5 @@ set expandtab
set makeprg=GCC_COLORS=\ make
set tw=79
au BufRead,BufNewFile *.xml set tw=109 shiftwidth=2 smarttab
au FileType c set tw=109
au FileType sh set tw=109 shiftwidth=4 smarttab
au FileType c set tw=109 shiftwidth=8
Copyright (c) <year> <owner> All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Copyright 2014 The Chromium OS Authors. All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Creative Commons Legal Code
CC0 1.0 Universal
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
HEREUNDER.
Statement of Purpose
The laws of most jurisdictions throughout the world automatically confer
exclusive Copyright and Related Rights (defined below) upon the creator
and subsequent owner(s) (each and all, an "owner") of an original work of
authorship and/or a database (each, a "Work").
Certain owners wish to permanently relinquish those rights to a Work for
the purpose of contributing to a commons of creative, cultural and
scientific works ("Commons") that the public can reliably and without fear
of later claims of infringement build upon, modify, incorporate in other
works, reuse and redistribute as freely as possible in any form whatsoever
and for any purposes, including without limitation commercial purposes.
These owners may contribute to the Commons to promote the ideal of a free
culture and the further production of creative, cultural and scientific
works, or to gain reputation or greater distribution for their Work in
part through the use and efforts of others.
For these and/or other purposes and motivations, and without any
expectation of additional consideration or compensation, the person
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
is an owner of Copyright and Related Rights in the Work, voluntarily
elects to apply CC0 to the Work and publicly distribute the Work under its
terms, with knowledge of his or her Copyright and Related Rights in the
Work and the meaning and intended legal effect of CC0 on those rights.
1. Copyright and Related Rights. A Work made available under CC0 may be
protected by copyright and related or neighboring rights ("Copyright and
Related Rights"). Copyright and Related Rights include, but are not
limited to, the following:
i. the right to reproduce, adapt, distribute, perform, display,
communicate, and translate a Work;
ii. moral rights retained by the original author(s) and/or performer(s);
iii. publicity and privacy rights pertaining to a person's image or
likeness depicted in a Work;
iv. rights protecting against unfair competition in regards to a Work,
subject to the limitations in paragraph 4(a), below;
v. rights protecting the extraction, dissemination, use and reuse of data
in a Work;
vi. database rights (such as those arising under Directive 96/9/EC of the
European Parliament and of the Council of 11 March 1996 on the legal
protection of databases, and under any national implementation
thereof, including any amended or successor version of such
directive); and
vii. other similar, equivalent or corresponding rights throughout the
world based on applicable law or treaty, and any national
implementations thereof.
2. Waiver. To the greatest extent permitted by, but not in contravention
of, applicable law, Affirmer hereby overtly, fully, permanently,
irrevocably and unconditionally waives, abandons, and surrenders all of
Affirmer's Copyright and Related Rights and associated claims and causes
of action, whether now known or unknown (including existing as well as
future claims and causes of action), in the Work (i) in all territories
worldwide, (ii) for the maximum duration provided by applicable law or
treaty (including future time extensions), (iii) in any current or future
medium and for any number of copies, and (iv) for any purpose whatsoever,
including without limitation commercial, advertising or promotional
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
member of the public at large and to the detriment of Affirmer's heirs and
successors, fully intending that such Waiver shall not be subject to
revocation, rescission, cancellation, termination, or any other legal or
equitable action to disrupt the quiet enjoyment of the Work by the public
as contemplated by Affirmer's express Statement of Purpose.
3. Public License Fallback. Should any part of the Waiver for any reason
be judged legally invalid or ineffective under applicable law, then the
Waiver shall be preserved to the maximum extent permitted taking into
account Affirmer's express Statement of Purpose. In addition, to the
extent the Waiver is so judged Affirmer hereby grants to each affected
person a royalty-free, non transferable, non sublicensable, non exclusive,
irrevocable and unconditional license to exercise Affirmer's Copyright and
Related Rights in the Work (i) in all territories worldwide, (ii) for the
maximum duration provided by applicable law or treaty (including future
time extensions), (iii) in any current or future medium and for any number
of copies, and (iv) for any purpose whatsoever, including without
limitation commercial, advertising or promotional purposes (the
"License"). The License shall be deemed effective as of the date CC0 was
applied by Affirmer to the Work. Should any part of the License for any
reason be judged legally invalid or ineffective under applicable law, such
partial invalidity or ineffectiveness shall not invalidate the remainder
of the License, and in such case Affirmer hereby affirms that he or she
will not (i) exercise any of his or her remaining Copyright and Related
Rights in the Work or (ii) assert any associated claims and causes of
action with respect to the Work, in either case contrary to Affirmer's
express Statement of Purpose.
4. Limitations and Disclaimers.
a. No trademark or patent rights held by Affirmer are waived, abandoned,
surrendered, licensed or otherwise affected by this document.
b. Affirmer offers the Work as-is and makes no representations or
warranties of any kind concerning the Work, express, implied,
statutory or otherwise, including without limitation warranties of
title, merchantability, fitness for a particular purpose, non
infringement, or the absence of latent or other defects, accuracy, or
the present or absence of errors, whether or not discoverable, all to
the greatest extent permissible under applicable law.
c. Affirmer disclaims responsibility for clearing rights of other persons
that may apply to the Work or any use thereof, including without
limitation any person's Copyright and Related Rights in the Work.
Further, Affirmer disclaims responsibility for obtaining any necessary
consents, permissions or other rights required for any use of the
Work.
d. Affirmer understands and acknowledges that Creative Commons is not a
party to this document and has no duty or obligation with respect to
this CC0 or use of the Work.
This diff is collapsed.