Yu Watanabe
e28fd95ffb
test-network: add udev related tests for networkctl
2019-07-02 09:43:21 +02:00
Yu Watanabe
6b9518a0e8
test-network: add test for Property= in [Match] section
2019-07-01 06:53:35 +09:00
Yu Watanabe
44005bfb4e
network,udev: add Property= setting in [Match] section
...
Closes #5665 .
2019-07-01 01:24:42 +09:00
Zbigniew Jędrzejewski-Szmek
910c6d0931
Treat kernel version condition as a list of quoted checks
...
Before only one comparison was allowed. Let's make this more flexible:
ConditionKernelVersion = ">=4.0" "<=4.5"
Fixes #12881 .
This also fixes expressions like "ConditionKernelVersion=>" which would
evaluate as true.
2019-06-29 17:11:03 +02:00
Yu Watanabe
fd4487f01a
test-execute: add test for ConditionKernelVersion= with quotation
2019-06-29 17:09:07 +02:00
Michal Koutný
594057fd99
tests: Check trivial loop between two jobs
...
job_compare return value is undefined in case the jobs have a loop
between them, so better make a test to make sure transaction cycle
detection catches it.
2019-06-26 23:16:31 +02:00
Michal Koutný
804cdabc31
tests: Check job ordering on execution cycles
...
The test-engine Test2 tests the cycle detection when units a, b and d
all start at once
,-------------------after-----------------,
v |
a/start ---after---> d/start ---after---> b/start
Extend the test with Test11 that adds i.service which causes a and d
stop (by unordered Conflicts=) while starting b. Because stops precede
starts, we effectively eliminate the job cycle and all transaction jobs
should be applicable.
,-------------------after-----------------,
v |
a/stop <---after--- d/stop <---after--- b/start
. . ^
. . |
'. . . . . . . . . i/start ---after------'
2019-06-26 23:16:31 +02:00
Lennart Poettering
528c365658
test: add test for DynamicUser=0 → =1 migration (and back)
2019-06-25 10:47:46 +02:00
Yu Watanabe
2cf6fdff19
test-network: change default sleep time of start_networkd()
2019-06-18 13:10:23 +09:00
Yu Watanabe
90e3bcbd4d
test-network: use wait-online in NetworkdBridgeTests
2019-06-18 13:10:23 +09:00
Yu Watanabe
35a78c5131
test-network: use wait-online in NetworkdBondTests
2019-06-18 12:45:19 +09:00
Yu Watanabe
8d17c386d7
test-network: use setUp() and tearDown() to clear routing policy rule tables
2019-06-18 12:45:17 +09:00
Yu Watanabe
ad78d7b027
test-network: rename l2tp_tunnel_remove -> remove_l2tp_tunnels
2019-06-18 11:35:12 +09:00
Yu Watanabe
4ef39b4991
test-network: remove all routing policy rules in specified table
2019-06-18 11:35:12 +09:00
Evgeny Vereshchagin
9bd2422ac3
travis: turn on nonnull-attribute on Fuzzit
2019-06-15 23:12:24 +02:00
Zbigniew Jędrzejewski-Szmek
4b381a9ef6
Merge pull request #12753 from jrouleau/fix/hibernate-resume-timeout
...
hibernate-resume: fix resume device timeout
2019-06-15 17:50:37 +02:00
Zbigniew Jędrzejewski-Szmek
6ea420a3b6
Merge pull request #12796 from yuwata/test-network-use-wait-online
...
test-network: several cleanups
2019-06-15 14:53:04 +02:00
Yu Watanabe
4c2459c692
test-network: drop redundant operstate checking
2019-06-14 16:50:07 +09:00
Yu Watanabe
df7f9afaa7
test-network: replace check_link_exists() with wait_online()
2019-06-14 16:49:39 +09:00
Yu Watanabe
01943d43f4
test-network: explicitly set sleep time
2019-06-14 16:47:40 +09:00
Yu Watanabe
5239d7b34e
test-network: suppress error message in cleanup process
2019-06-14 16:45:50 +09:00
Yu Watanabe
1285edf39c
test-network: add test for ConfigureWithoutCarrier=
2019-06-14 05:25:35 +09:00
Yu Watanabe
4933b97d59
test-network: add more test cases when ipv6 is disabled
2019-06-12 11:04:10 +09:00
Yu Watanabe
1e498853a3
test-network: add tests for KeepConfiguration=
2019-06-06 23:36:27 +09:00
Susant Sahani
7da377ef16
networkd: add support to keep configuration
2019-06-06 22:50:29 +09:00
Zbigniew Jędrzejewski-Szmek
88aaf89ecb
networkd-tests.py: properly escape pluses in regexps
...
Python warns that '\+' is an invalid escape. We need either '\\+' or r'\+'.
2019-06-06 14:11:28 +02:00
Zbigniew Jędrzejewski-Szmek
ec38833c75
networkd-tests.py: remove some java-style boilerplate
...
A class was used to put some utility functions under a namespace. But then this
namespace was inherited into classes, so the namespace split was undone. Let's
just define those functions in the module namespace.
(The Utilities class with a few functions still remain, because of the
unittest-style self.assert* craziness.)
2019-06-06 14:11:28 +02:00
Zbigniew Jędrzejewski-Szmek
cefd6b3db8
networkd-tests.py: use check_output() instead of unittests' assertEqual()
...
It's pretty much the same thing, but more in pytest style, without the
unittest boilerplate.
2019-06-06 14:11:28 +02:00
Zbigniew Jędrzejewski-Szmek
371810d18a
networkd-tests.py: add helpers to common subprocess call patterns
...
For normal shell calls, python syntax is quite verbose. We don't need to punish
ourselves like that. In some places we would fork a shell to do argument splitting
for us. We know that our arguments can be safely split on whitespace, so let's do
that ourselves in all cases, without forking a shell.
We also expect command output to be valid text, so let's always set
universal_newlines=True.
This makes things shorter and easier to read. Development is also easier because
it's possible to paste many of the commands directly to/from a shell.
2019-06-06 14:11:28 +02:00
Zbigniew Jędrzejewski-Szmek
632037cf4a
networkd-tests.py: remove unused import
2019-06-06 13:58:58 +02:00
Jonathan Rouleau
8b6805a25b
hibernate-resume: add resumeflags= kernel option
...
Adds the resumeflags= kernel command line option to allow setting a
custom device timeout for the resume device (defaults to the same as the
root device).
2019-06-05 18:59:05 -06:00
Yu Watanabe
d90f4f7d91
test-network: do not directly compare two results of "ip address"
...
As it contains lifetime of the address.
2019-06-05 19:42:12 +09:00
Yu Watanabe
e16ffe7954
test-network: do not allow addresses in tentative state
2019-06-05 16:35:20 +09:00
Yu Watanabe
78690bb5d0
test-network: disable SystemCallFilter= when *SAN is enabled
2019-06-04 01:29:28 +09:00
Yu Watanabe
6d5b4efed2
test-network: add test for MTU field of 'networkctl status'
2019-06-04 01:29:28 +09:00
Yu Watanabe
bee692fd38
test-network: add tests for "networkctl delete"
2019-06-04 01:29:28 +09:00
Yu Watanabe
1ca44d7dfd
test-network: move networkctl related tests to NetworkctlTests class
2019-06-04 01:29:24 +09:00
Yu Watanabe
72917fcc65
test-network: show systemd-networkd.service
...
As there may exist some other drop-in configs.
2019-05-31 13:58:27 +09:00
Yu Watanabe
d4fda2a55c
test-network: stop service before editing unit file
2019-05-31 09:52:48 +09:00
Yu Watanabe
fa4c6095d7
test-network: add --lsan-options option
2019-05-31 08:52:27 +09:00
Yu Watanabe
94c0312294
test-network: make the test take ASAN and UBSAN options
2019-05-30 20:51:35 +09:00
Yu Watanabe
9c1ae4844e
test-network: make path to networkd or friends configurable
2019-05-30 20:49:56 +09:00
Zbigniew Jędrzejewski-Szmek
8e30a1af24
Merge pull request #12690 from yuwata/test-network-and-man-netdev
...
test-network,man: trivial cleanups
2019-05-29 12:39:58 +02:00
Yu Watanabe
53c32c2b9b
test-network: bump time limit for wait_address()
...
Maximum time interval of DHCPv4 request is 63sec.
So, setting 100sec is enough.
2019-05-29 12:37:41 +02:00
Yu Watanabe
931d11057c
test-network: drop 25-nlmon.network
2019-05-29 17:07:06 +09:00
Yu Watanabe
0feeac6418
Merge pull request #12635 from yuwata/nlmon-support
...
network: add nlmon support
2019-05-29 10:22:09 +09:00
Yu Watanabe
811f33d0b1
test-network: add a basic test for nlmon
2019-05-28 22:47:20 +09:00
Yu Watanabe
8ad8292452
test-network: use wait_online() in NetworkdDHCPServerTests or friends
2019-05-28 22:21:25 +09:00
Yu Watanabe
fdcd1ec54a
test-network: move test_domain() to NetworkdNetworkTests class
2019-05-28 22:21:24 +09:00
Yu Watanabe
be68c2c965
test-network: rename needlessly long class names
2019-05-28 22:21:24 +09:00
Yu Watanabe
2629df4710
test-network: use wait_online() instead of waiting for 10 seconds
...
But some tests requires both IPv4 and IPv6 addresses are configured.
Only in that case wait for addresses to be configured.
2019-05-28 22:21:24 +09:00
Yu Watanabe
58df8fb7dc
test-network: drop unused link
2019-05-28 22:21:24 +09:00
Yu Watanabe
350e05d274
test-network: rename link_remove() to remove_links()
2019-05-28 22:21:24 +09:00
Yu Watanabe
5f68a6a46a
test-network: remove routes even on failure
2019-05-28 22:21:24 +09:00
Yu Watanabe
95c74b0aff
test-network: use setUp() and tearDown() to delete routing policy rule tables
2019-05-28 22:21:24 +09:00
Yu Watanabe
def9fc0d65
test-network: remove fou ports on failure
2019-05-28 22:21:24 +09:00
Yu Watanabe
9f10126f3c
test-network: stop dnsmasq before removing links
2019-05-28 22:21:24 +09:00
Yu Watanabe
1836bedf92
test-network: warn when firewalld.service is running
2019-05-28 22:21:24 +09:00
Yu Watanabe
b6efd6614c
test-network: add tests for issue #12490
2019-05-28 22:21:23 +09:00
Zbigniew Jędrzejewski-Szmek
3f8841f286
Merge pull request #12653 from yuwata/test-network-improvements-2
...
network: fix configuring vxcan devices and several test-network follow-ups
2019-05-28 10:27:58 +02:00
Frantisek Sumsal
d0533a319b
test: correctly fail when system is borked
...
In certain situations, the systemctl commands may fail (e.g. due to
missing shared libraries), but the 'script' continues and creates a
/testok file, marking the test incorrectly as passed. Let's fix this and
bail out immediately when a command exits with a non-zero exit code.
2019-05-27 22:31:55 +03:00
Frantisek Sumsal
37ee8dc80f
test: improve handling of ASan under clang
...
Running integration tests with ASan is somewhat tricky to begin with, as
we need to pre-load the ASan runtime DSO for certain services (like
dbus), otherwise they won't start or behave as expected. In case of gcc
this is pretty easy, as we need the runtime DSO during compilation, so
it's already present on the host system. For clang things get more
complicated, as ASan is compiled in statically by default, thus to
enable the necessary dynamic-ish behavior one needs to compile with
-shared-libasan and then correctly set LD_PRELOAD_PATH, as the runtime
libraries are not in a standard library path.
2019-05-27 17:46:07 +02:00
Lennart Poettering
a429223d17
test-execute: turn off coredump generation in test services
...
These services are likely to coredump, and we expect that but aren't
interested in the coredump. Hence let's turn off processing by setting
RLIMIT_CORE to 0/0.
2019-05-24 10:48:28 +02:00
Lennart Poettering
05332e243c
Merge pull request #12590 from keszybz/unicode-cmdlines
...
Use unicode for cmdline printing
2019-05-24 10:41:30 +02:00
Yu Watanabe
f63b14d35e
test-network: add basic tests for vxcan device
2019-05-24 10:56:54 +09:00
Yu Watanabe
0aefa2274d
test-network: add more tests for LinkLocalAddressing=yes on various netdevs
2019-05-24 10:54:53 +09:00
Yu Watanabe
241836a87c
test-network: drop pure test for dummy device
...
The dummy device is well used in test-network. So, the dropped test
is completely redundant.
2019-05-23 23:55:57 +09:00
Yu Watanabe
b08b056e19
test-network: drop redundant check_link_exists()
...
When wait_online() passes, then the link must exist.
2019-05-23 23:45:53 +09:00
Yu Watanabe
a43b1f8267
Merge pull request #12618 from yuwata/test-network-improvements
...
network: several cleanups
2019-05-23 11:17:33 +09:00
Zbigniew Jędrzejewski-Szmek
9e099c9fd8
Merge pull request #12431 from poettering/tmpfiles-chmod-chown-order
...
tmpfiles: run chown() before chmod()
2019-05-22 17:23:28 +02:00
Yu Watanabe
17bcf0a09f
test-network: drop wait_online() from test_ip6gre_tunnel()
2019-05-22 18:02:20 +09:00
Yu Watanabe
be0e1ef9b5
test-network: wait for bridge slave to be enslaved in test_bridge_ignore_carrier_loss_frequent_loss_and_gain()
2019-05-22 17:59:39 +09:00
Yu Watanabe
0a5dced161
test-network: drop unused variable
2019-05-22 17:58:46 +09:00
Yu Watanabe
a1b3559088
test-network: add test that vcan device can be configured state
2019-05-22 17:58:46 +09:00
Yu Watanabe
671dacdf0c
test-network: add basic tests for veth interfaces
2019-05-22 17:58:46 +09:00
Yu Watanabe
2746d30797
test-network: add tests for flags of tun or tap devices
2019-05-22 17:58:46 +09:00
Yu Watanabe
75eed300a9
network: Allow IFF_VNET_HDR to also be set for tun devices
...
f5f07dbf06
adds VnetHeader= for tap
devices, but the flag is also used for tun devices.
This adds VnetHeader= setting in [Tun] section.
2019-05-22 17:58:46 +09:00
Yu Watanabe
077f9abc3a
test-network: add tests for LinkLocalAddressing= on ipvlan or friends
2019-05-22 17:58:46 +09:00
Yu Watanabe
40921f0886
test-network: add tests for Flags= in [IPVTAP]
2019-05-22 17:58:46 +09:00
Yu Watanabe
bc6dff6e25
test-network: add tests for Flags= in [IPVLAN]
2019-05-22 17:58:46 +09:00
Yu Watanabe
460feb6127
test-network: add tests for Mode= setting in [MACVTAP] section
2019-05-22 17:58:46 +09:00
Yu Watanabe
dff9792b15
test-network: add tests for Mode= setting in [MACVLAN] section
2019-05-22 17:58:46 +09:00
Yu Watanabe
3d16512423
test-network: convert jiffies to sec
2019-05-22 17:58:46 +09:00
Yu Watanabe
8d7f098756
test-network: show interface status when wait_online() fails
2019-05-22 17:58:46 +09:00
Yu Watanabe
a9a2ee6a96
test-network: use wait_online() more
2019-05-22 17:58:46 +09:00
Yu Watanabe
e39cc4450d
test-network: introduce check_link_exists()
2019-05-22 17:58:46 +09:00
Yu Watanabe
c815f33e70
test-network: use wait_online() more
2019-05-22 17:58:46 +09:00
Yu Watanabe
881b1f358f
test-network: use splitlines() at one more place
2019-05-22 17:58:46 +09:00
Zbigniew Jędrzejewski-Szmek
77599f06e1
cgtop,test: use consistent capitalization for CGroup
2019-05-21 10:57:23 +02:00
Yu Watanabe
826c4f35c6
Merge pull request #12612 from keszybz/bootctl-column
...
Rename TEST-31-OOMPOLICY to avoid conflict and look in $BOOT for kernels
2019-05-21 07:45:12 +09:00
Yu Watanabe
a166cd3aac
Merge pull request #12603 from ssahani/ndisc-blacklist
...
networkd: Ability to selectively ignore IPv6 prefixes supplied via ro…
2019-05-19 23:19:27 +09:00
Susant Sahani
e520ce6440
networkd: Ability to selectively ignore IPv6 prefixes supplied via router advertisement
...
Closes https://github.com/systemd/systemd/issues/10647
2019-05-19 22:23:06 +09:00
Zbigniew Jędrzejewski-Szmek
d04876b143
TEST-32-OOMPOLICY: drop unneeded headers
2019-05-19 13:03:21 +02:00
Zbigniew Jędrzejewski-Szmek
5c305ce2db
test: rename TEST-31-OOMPOLICY to TEST-32-OOMPOLICY
...
TEST-31-DEVICE-ENUMERATION got merged first.
2019-05-19 13:00:00 +02:00
Zbigniew Jędrzejewski-Szmek
95cff2a794
test: search $BOOT for kernel+initrd
...
$BOOT is the preferred location for kernel images. If $BOOT does not
exist, -x will print the path to ESP, so well fall back to previous
behaviour.
2019-05-19 12:05:21 +02:00
Yu Watanabe
2700d2c7dc
test-network: wait for bond interface to be no-carrier operational state
2019-05-19 05:39:45 +09:00
Yu Watanabe
ce87a19087
test-network: enable universal_newline= flag for subprocess.check_output()
2019-05-19 05:39:21 +09:00
Yu Watanabe
4b3cf93507
test-network: remove unnecessary links
2019-05-19 05:29:25 +09:00
Yu Watanabe
3ccf7af087
test-network: fix underlying device name
2019-05-19 05:27:56 +09:00
Yu Watanabe
791c1140c9
test-network: use check_operstate() helper function where applicable
2019-05-19 05:27:56 +09:00
Yu Watanabe
2be0b6fc5e
test-network: add get_operstate() and check_operstate() helper functions
2019-05-19 05:27:46 +09:00
Yu Watanabe
e7b621ee1f
Merge pull request #12586 from ssahani/route-properties
...
Route properties
2019-05-18 10:31:37 +09:00
Susant Sahani
9b88f20aba
networkd: route add MPLS TTL propagate
2019-05-18 10:30:41 +09:00
Susant Sahani
8f02c9b085
networkd: FOU netdev add support to configure peer port
2019-05-18 10:25:36 +09:00
Zbigniew Jędrzejewski-Szmek
be44e09162
shared/varlink: add missing setting of output_buffer_allocated
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14708 ,
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14735 ,
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14725 ,
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14720 ,
and probably others.
2019-05-17 15:09:32 +02:00
Yu Watanabe
8688c29b5a
varlink: initialize Varlink with 0
...
Closes oss-fuzz#14688.
2019-05-16 18:51:33 +02:00
Yu Watanabe
a32a00831c
Merge pull request #12574 from yuwata/network-mtu-issue-12552
...
network: do not always bump MTU with additional 4bytes
2019-05-16 08:25:48 +02:00
Yu Watanabe
4e14e54638
Merge pull request #12549 from yuwata/network-sittun-disable-link-local-addressing-12547
...
network: disable LinkLocalAddressing on sit devices
2019-05-16 05:11:05 +02:00
Yu Watanabe
db439337f9
Merge pull request #12576 from ssahani/fou
...
networkd: FOU tunnel support Local and Peer tunnel addresses
2019-05-16 05:10:35 +02:00
Yu Watanabe
7d7be1b9d8
test-network: adjust mtu
2019-05-16 11:51:07 +09:00
Yu Watanabe
11309591a5
test-network: check tunnel netdevs become operstate 'routable'
2019-05-16 10:37:11 +09:00
Susant Sahani
4502a61c8a
networkd: FOU tunnel support Local and Peer tunnel addresses
2019-05-16 10:24:48 +09:00
Yu Watanabe
956c8feca4
test-network: add a basic test for ipvtap
2019-05-16 09:48:53 +09:00
Susant Sahani
69c317a07f
networkd: introduce netdev ipvtap
...
This patch adds netdev ipvtap that is based on the
IP-VLAN network interface, called ipvtap. An ipvtap device can be created
in the same way as an ipvlan device, using 'kind ipvtap', and then accessed
using the tap user space interface.
2019-05-16 09:48:53 +09:00
Yu Watanabe
2b00dff809
test-network: add a test for IPv4LLRoute=
2019-05-15 12:44:30 +09:00
Yu Watanabe
6543b7fd78
test-network: add tests for DefaultRouteOnDevice=
2019-05-15 12:44:30 +09:00
Yu Watanabe
5d5003ab35
network: add DefaultRouteOnDevice= setting in [Network] section
...
When enabled, then default route bound to the interface will be created.
This is useful when adding routes on point-to-point interfaces.
Closes #788 .
2019-05-15 12:44:30 +09:00
Yu Watanabe
6e114a2475
Merge pull request #12555 from ssahani/route-properties
...
networkd: route add support to configure fastopen_no_cookie
2019-05-14 09:03:52 +02:00
Susant Sahani
1501b429a9
networkd: DHCP client add support to send RELEASE packet
...
closes #10820
2019-05-14 09:03:01 +02:00
Susant Sahani
633c725865
networkd: route add support to configure fastopen_no_cookie
...
This patch adds fastopen_no_cookie option to enable/disable TCP fastopen
without a cookie on a per-route basis.
2019-05-14 08:08:36 +05:30
Susant Sahani
bdb397ed10
networkd: bridge FDB support more NTF_* flags
...
Add support to configure NTF_ROUTER and NTF_USE
2019-05-14 02:24:51 +02:00
Yu Watanabe
d8f31d7d32
Merge pull request #12537 from yuwata/network-link-local-follow-ups
...
network: do not send ipv6 token to kernel
2019-05-14 02:22:18 +02:00
Evgeny Vereshchagin
1328a4bcc9
Merge pull request #12524 from evverx/UBSan-reports
...
tests: stop sending UBsan reports to /dev/null
2019-05-12 05:17:16 +03:00
Evgeny Vereshchagin
a5372344ea
tests: override a hard-coded timeout that kicks in too early (under ASan+UBSan)
...
The test has failed two times today: https://travis-ci.org/systemd/systemd/jobs/530750626
and https://travis-ci.org/systemd/systemd/jobs/530759465 .
2019-05-12 03:37:36 +02:00
Evgeny Vereshchagin
6141c6c99b
tests: redirect the stdout/stderr of journald to a file (under ASan+UBSan)
...
Sometimes UBSan sends its reports to stderr regardless of what is specified in log_path
Let's try to catch them by redirecting stderr (and stdout just in case) to a file
See https://github.com/systemd/systemd/pull/12524#issuecomment-491108821
2019-05-12 03:37:36 +02:00
Evgeny Vereshchagin
abf9b52ccd
tests: redirect UBsan reports to a file
...
so that they won't end up in /dev/null
2019-05-12 03:37:36 +02:00
Yu Watanabe
3a956d388a
test-network: add a tiny test for IPv6Token=
2019-05-12 07:34:13 +09:00
Yu Watanabe
cd43199671
Merge pull request #12520 from ssahani/geneve
...
networkd: Geneve add DF feature and allow TTL to bechosen by kernel
2019-05-10 19:47:19 +02:00
Evgeny Vereshchagin
c778f8c992
Merge pull request #12521 from mrc0mmand/test-functions-tweaks-for-sanitizers
...
test: don't preload libasan for systemd-remount-fs.service
2019-05-10 17:17:23 +03:00
Susant Sahani
aac350192b
networkd: Geneve add support configure IP don't fragment
2019-05-10 22:45:26 +09:00
Yu Watanabe
5af7bc6f4c
Merge pull request #12480 from ssahani/proxy-arp
...
network: bridge add support to configure proxy ARP/WIFI
2019-05-10 15:30:41 +02:00
Susant Sahani
727b573418
networkd: Add support for blacklisting servers
...
closes #6260
fuzzer: Add DHCP support for blacklisting servers
2019-05-10 15:29:55 +02:00
Lennart Poettering
d768467563
fuzzer: add varlink fuzzer
2019-05-09 14:14:20 -04:00
Frantisek Sumsal
54a3790ccb
test: allow SKIP_INITRD override
...
Certain distributions (e.g. Arch Linux) require booting with initrd, as
they lack support for commonly used filesystems in the kernel (i.e. the
support is compiled in as modules)
2019-05-09 20:11:31 +02:00
Frantisek Sumsal
aaef1ed21d
test: don't preload libasan for systemd-remount-fs.service
...
The `mount` utility has an unexpected behavior when run with libasan,
causing false-positives during the integration testing.
For example, on Arch Linux with LD_PRELOAD pointing to libasan:
```
bash-5.0# mount -o remount,rw -v /
mount: /dev/sda1 mounted on /.
bash-5.0# echo $?
1
```
However:
```
bash-5.0# LD_PRELOAD= mount -o remount,rw -v /
mount: /dev/sda1 mounted on /.
bash-5.0# echo $?
0
```
Further investigation with strace shows a LeakSanitizer error:
```
bash-5.0# strace -s 512 mount -o remount,rw -v /
...
write(2, "==355==LeakSanitizer has encountered a fatal error.\n", 52) = -1 EBADF (Bad file descriptor)
write(2, "ReportFile::Write() can't output requested buffer!\n", 51) = -1 EBADF (Bad file descriptor)
exit_group(1) = ?
+++ exited with 1 +++
```
Let's workaround this by clearing the LD_PRELOAD variable for
systemd-remount-fs.service
2019-05-09 20:11:20 +02:00
Susant Sahani
0fadb2a46f
network: add support to configure proxy ARP/WIFI
2019-05-09 15:03:04 +09:00
Susant Sahani
1189c00a3c
networkd: VXLAN add support to configure IP Don't fragment.
...
Allow users to set the IPv4 DF bit in outgoing packets, or to inherit its
value from the IPv4 inner header. If the encapsulated protocol is IPv6 and
DF is configured to be inherited, always set it.
2019-05-09 06:40:33 +02:00
Susant Sahani
1087623bac
networkd: Add support to configure proxy ARP and proxy ARP Wifi
2019-05-09 01:44:26 +02:00
Chris Down
465ace74d9
cgroup: Test that it's possible to set memory protection to 0 again
...
The previous commit fixes this up, and this should prevent it
regressing.
2019-05-08 12:06:32 +01:00
Zbigniew Jędrzejewski-Szmek
d1c377da0d
Merge pull request #12489 from ssahani/vxlan
...
networkd: VXLAN rename Id to VNI
2019-05-08 12:02:54 +02:00
Susant Sahani
61b824c561
networkd: bridge fdb add support to configure VXLAN VNI
2019-05-08 03:43:43 +02:00
Zbigniew Jędrzejewski-Szmek
29e19a6f19
fuzz: fix spelling of MACsec and MACAddress in the corpus
2019-05-08 06:53:07 +05:30
Susant Sahani
4cc0fd7531
networkd: VXLAN add support to configure Generic Protocol Extension
...
See https://tools.ietf.org/html/draft-ietf-nvo3-vxlan-gpe-07
2019-05-08 06:52:42 +05:30
Zbigniew Jędrzejewski-Szmek
9175aabfb6
Merge pull request #12481 from ssahani/dhcp-max-retry
...
networkd: Allow DHCP4 client to set the number to attempt to configure/reconfigure
2019-05-07 19:58:40 +02:00
Susant Sahani
6f213e4a34
networkd: VXLAN rename Id to VNI
...
It makes more sense to call VXLAN ID as
1. the VXLAN Network Identifier (VNI) (or VXLAN Segment ID)
2. test-network: rename VXLAN Id to VNI
3. fuzzer: Add VXLAN VNI directive to fuzzer
2019-05-07 20:52:11 +05:30
Yu Watanabe
117a55c755
test-network: add one more test for LinkLocalAddressing=fallback
2019-05-07 17:12:09 +02:00
Susant Sahani
715cedfbf0
networkd: Allow DHCP4 client to set the number to attempt to reconfigure.
...
Otherwise current value is 6 and after 6 it will give up.
2019-05-07 17:12:04 +02:00
Yu Watanabe
b30160ff7f
Merge pull request #12478 from yuwata/wireguard-fwmark
...
network: rename WireGuard.FwMark -> FirewallMark
2019-05-07 05:16:34 +02:00
Yu Watanabe
1c30b174ed
network: rename WireGuard.FwMark -> FirewallMark
...
For the consistency with FirewallMark= in [RoutingPolicyRule] section.
2019-05-04 17:20:23 +02:00
Yu Watanabe
63c598ede3
test-network: add a test for LinkLocalAddressing=fallback
2019-05-04 16:46:03 +02:00
Yu Watanabe
1c862fe05a
test-network: add tests for BridgeFDB.Destination=
2019-05-03 06:12:04 +02:00
Susant Sahani
c2c2793f39
networkd: Add support to configure destination address for bridge FDB
...
Closes #5145 .
Example conf:
```
[Match]
Name=vxlan1309
[BridgeFDB]
MACAddress=00:00:00:00:00:00
Destination=10.0.0.2
[BridgeFDB]
MACAddress=00:00:00:00:00:00
Destination=10.0.0.4
[BridgeFDB]
MACAddress=00:00:00:00:00:00
Destination=10.0.0.5
```
2019-05-03 06:11:52 +02:00
Lennart Poettering
34015aea17
tests: add test for suid/sgid handling in tmpfiles
2019-04-30 09:18:23 +02:00
Lennart Poettering
908665f4e9
test-functions: follow fedora dbus-daemon/dbus-broker rearrangements
...
Apparently dbus.service is now a symlink to either dbus-broker.service
or dbus-daemon.service. Copy in the right target service in each case.
2019-04-30 09:18:23 +02:00
Ben Boeckel
5238e95759
codespell: fix spelling errors
2019-04-29 16:47:18 +02:00
Yu Watanabe
06895a1dda
test-network: fix invalid assertions
2019-04-25 00:29:20 +02:00
Frantisek Sumsal
772f15c1d8
test: don't timeout while waiting for other test units
...
The main testsuite service timeouts sporadically when waiting for
other testsuite-* units. As the test timeout is handled by
the "test executor" (test.sh), let's disable it for the service.
This should (hopefully) fix the test flakiness.
2019-04-15 13:59:27 +02:00
Jan Klötzke
dc653bf487
service: handle abort stops with dedicated timeout
...
When shooting down a service with SIGABRT the user might want to have a
much longer stop timeout than on regular stops/shutdowns. Especially in
the face of short stop timeouts the time might not be sufficient to
write huge core dumps before the service is killed.
This commit adds a dedicated (Default)TimeoutAbortSec= timer that is
used when stopping a service via SIGABRT. In all other cases the
existing TimeoutStopSec= is used. The timer value is unset by default
to skip the special handling and use TimeoutStopSec= for state
'stop-watchdog' to keep the old behaviour.
If the service is in state 'stop-watchdog' and the service should be
stopped explicitly we still go to 'stop-sigterm' and re-apply the usual
TimeoutStopSec= timeout.
2019-04-12 17:32:52 +02:00
Chris Down
c52db42b78
cgroup: Implement default propagation of MemoryLow with DefaultMemoryLow
...
In cgroup v2 we have protection tunables -- currently MemoryLow and
MemoryMin (there will be more in future for other resources, too). The
design of these protection tunables requires not only intermediate
cgroups to propagate protections, but also the units at the leaf of that
resource's operation to accept it (by setting MemoryLow or MemoryMin).
This makes sense from an low-level API design perspective, but it's a
good idea to also have a higher-level abstraction that can, by default,
propagate these resources to children recursively. In this patch, this
happens by having descendants set memory.low to N if their ancestor has
DefaultMemoryLow=N -- assuming they don't set a separate MemoryLow
value.
Any affected unit can opt out of this propagation by manually setting
`MemoryLow` to some value in its unit configuration. A unit can also
stop further propagation by setting `DefaultMemoryLow=` with no
argument. This removes further propagation in the subtree, but has no
effect on the unit itself (for that, use `MemoryLow=0`).
Our use case in production is simplifying the configuration of machines
which heavily rely on memory protection tunables, but currently require
tweaking a huge number of unit files to make that a reality. This
directive makes that significantly less fragile, and decreases the risk
of misconfiguration.
After this patch is merged, I will implement DefaultMemoryMin= using the
same principles.
2019-04-12 17:23:58 +02:00
Lennart Poettering
b51629ad84
Merge pull request #12222 from yuwata/macsec
...
network: introduce MACsec
2019-04-12 13:59:30 +02:00
Zbigniew Jędrzejewski-Szmek
cc5549ca12
scripts: use 4 space indentation
...
We had all kinds of indentation: 2 sp, 3 sp, 4 sp, 8 sp, and mixed.
4 sp was the most common, in particular the majority of scripts under test/
used that. Let's standarize on 4 sp, because many commandlines are long and
there's a lot of nesting, and with 8sp indentation less stuff fits. 4 sp
also seems to be the default indentation, so this will make it less likely
that people will mess up if they don't load the editor config. (I think people
often use vi, and vi has no support to load project-wide configuration
automatically. We distribute a .vimrc file, but it is not loaded by default,
and even the instructions in it seem to discourage its use for security
reasons.)
Also remove the few vim config lines that were left. We should either have them
on all files, or none.
Also remove some strange stuff like '#!/bin/env bash', yikes.
2019-04-12 08:30:31 +02:00
Zbigniew Jędrzejewski-Szmek
408c9a07e5
test: filter out messages when stripping binaries
...
We would get an error for every script, which is just noise.
2019-04-12 08:23:41 +02:00
Yu Watanabe
02849d8b4f
test-network: add tests for MACsec
2019-04-12 10:12:42 +09:00
Yu Watanabe
b0e13c3122
network: add MACsecTransmitAssociation.UseForEncoding= setting
2019-04-12 10:12:42 +09:00
Yu Watanabe
a7b9c52f1f
network: add MACsec*Association.Activate= setting
2019-04-12 10:12:42 +09:00
Yu Watanabe
eb4705fb36
network: add MACsec*Association.KeyFile= setting
2019-04-12 10:12:42 +09:00
Susant Sahani
81962db798
network: Introduce MACsec
...
Media Access Control Security (MACsec) is an 802.1AE IEEE
industry-standard security technology that provides secure
communication for all traffic on Ethernet links.
MACsec provides point-to-point security on Ethernet links between
directly connected nodes and is capable of identifying and preventing
most security threats, including denial of service, intrusion,
man-in-the-middle, masquerading, passive wiretapping, and playback attacks.
Closes #5754
2019-04-12 10:12:41 +09:00
Lennart Poettering
54f802ff8a
Merge pull request #12037 from poettering/oom-state
...
add cgroupv2 oom killer event handling to service management
2019-04-11 18:57:47 +02:00
Lennart Poettering
574ef404d8
Merge pull request #12279 from keszybz/sd-bus-long-signatures
...
sd-bus: properly handle messages with overlong signatures
2019-04-11 17:03:57 +02:00
Zbigniew Jędrzejewski-Szmek
f0ae945ecc
bus-message: validate signature in gvariant messages
...
We would accept a message with 40k signature and spend a lot of time iterating
over the nested arrays. Let's just reject it early, as we do for !gvariant
messages.
2019-04-11 14:01:38 +02:00
Yu Watanabe
8b0f4bac72
test: make directory for drop-in config
...
Follow-up for a2fbac5875
.
2019-04-11 09:58:47 +02:00
Zbigniew Jędrzejewski-Szmek
4ddff52640
Merge pull request #12270 from yuwata/test-set-longer-timeout
...
test: set longer timeout
2019-04-11 08:31:14 +02:00
Yu Watanabe
a2fbac5875
test: set longer watchdog timeout for timedated
2019-04-11 03:25:08 +09:00
Yu Watanabe
70f3336e96
test: set longer timeout for 'udevadm control'
2019-04-11 02:27:15 +09:00
Yu Watanabe
86a3d44de5
network: fix use-of-uninitialized-value or null dereference
...
This fixes a bug introduced by 6ef5c881dd
.
Fixes oss-fuzz#14157 and oss-fuzz#14158.
2019-04-10 18:18:11 +09:00
Lennart Poettering
36869f3381
test: add test case for new OOM logic
2019-04-09 11:17:58 +02:00
Zbigniew Jędrzejewski-Szmek
52efbd8f0e
Merge pull request #12223 from yuwata/network-wireguard-preshared-key-file
...
network: add PresharedKeyFile= setting and make reading key file failure fatal
2019-04-09 10:52:52 +02:00
Yu Watanabe
9e5d79e7a1
test-network: add tests for WireGuardPeer.PresharedKey= and PresharedKeyFile=
2019-04-09 15:50:23 +09:00
Yu Watanabe
a3945c6361
network: add WireGuardPeer.PresharedKeyFile= setting
2019-04-09 15:50:22 +09:00
Yu Watanabe
cb31e7c861
network: make reading PrivateKeyFile= failure always fatal
...
This also refactor wireguard_read_key_file().
2019-04-09 15:50:22 +09:00
Yu Watanabe
daa4aca1cb
calendarspec: fix possible integer overflow
...
Fixes oss-fuzz#14108.
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14108
2019-04-08 00:50:07 +09:00
Zbigniew Jędrzejewski-Szmek
6c34ed5111
test: use newer verb to set log levels
2019-04-03 08:19:08 +02:00
Lennart Poettering
f69567cbe2
core: expose SUID/SGID restriction as new unit setting RestrictSUIDSGID=
2019-04-02 16:56:48 +02:00
Zbigniew Jędrzejewski-Szmek
237ebf61e2
Merge pull request #12013 from yuwata/fix-switchroot-11997
...
core: on switching root do not emit device state change based on enumeration results
2019-04-02 16:06:07 +02:00
Lennart Poettering
347da10194
test: add tests for new .timer units
2019-04-02 08:20:10 +02:00
Yu Watanabe
dd09a9ec0f
Merge pull request #12160 from yuwata/wait-online-allow-configuring
...
wait-online: add --any option
2019-04-02 06:10:36 +09:00
Yu Watanabe
03db80b2d1
test-network: add tests for --any option of wait-online
2019-04-02 03:38:22 +09:00
Yu Watanabe
c7f070bd4a
test-network: fix timeout argument for wait_online()
2019-04-02 03:38:22 +09:00
Yu Watanabe
4b6a6d1e37
test-network: add tests for FooOverUDP tunnels
2019-04-02 03:29:46 +09:00
Yu Watanabe
38f4bb4428
test-network: add more tests for SerializeTunneledPackets=, Key=, and friends
2019-04-02 03:07:08 +09:00
Yu Watanabe
546c203d83
test: set longer StartLimitIntervalSec= and fewer StartLimitBurst=
...
Some test environment may be in heavy load. In that case, rate limit
never hit, and the test fails...
2019-04-01 19:13:36 +02:00
Yu Watanabe
753e0a2446
test-network: add test for NetDev.Name= conflict
2019-04-01 10:30:31 +09:00
Yu Watanabe
5a0bd90b82
test-network: add test for drop-in [WireGuardPeer] section
...
This also merges the two wireguard tests, and use wait_online()
to speed up the test.
2019-04-01 10:30:30 +09:00
Yu Watanabe
b07b19dff8
Merge pull request #12147 from yuwata/network-gre-key-12144
...
network: make GRE and GRETAP support Key= or friends
2019-03-31 22:12:34 +09:00
Yu Watanabe
6730a1f343
test-network: test stacked erspan tunnels
2019-03-30 21:17:53 +09:00
Yu Watanabe
0ef830cf54
test-network: merge tests for [Route] section
2019-03-30 02:27:22 +09:00
Yu Watanabe
a15ff207df
test-network: use wait_online() in test_sysctl_disable_ipv6()
2019-03-30 02:27:22 +09:00
Yu Watanabe
ba1e0d0612
test-network: use wait_online() in test_sysctl()
...
This also disables IPv6AcceptRA= to speed up the test.
2019-03-30 02:27:22 +09:00
Yu Watanabe
2dcfcc08d9
test-network: use wait_online() in test_link_local_addressing()
...
This also disables IPv6AcceptRA= to speed up the test.
2019-03-30 02:27:22 +09:00
Yu Watanabe
d06f30fc73
test-network: fix addr_gen_mode
...
If stable_secret is set, then networkd sets addr_gen_mode 2.
2019-03-30 02:27:22 +09:00
Yu Watanabe
c2990ec39a
test-network: move tests related to bonding
2019-03-30 02:27:22 +09:00
Yu Watanabe
b810272594
test-network: merge tests about static addresses
...
And use wait_online()
2019-03-30 02:27:22 +09:00
Yu Watanabe
5aa58329d8
test-network: add wait_online() helper function
2019-03-30 02:27:16 +09:00
Lennart Poettering
f087c7e072
test: add some basic testing that "systemctl start -T" does something
2019-03-27 12:37:37 +01:00
Yu Watanabe
4d6cd572a7
fuzz: add testcases for the bug in condition_free_list_type()
2019-03-24 00:35:39 +09:00
Zbigniew Jędrzejewski-Szmek
b2645747b7
nspawn-oci: fix double free
...
Also rename function to make it clear that it also frees the array
object itself.
2019-03-22 17:39:12 +01:00
Zbigniew Jędrzejewski-Szmek
b1f13b0e75
nspawn-oci: mount source is optional
2019-03-22 12:04:32 +01:00
Zbigniew Jędrzejewski-Szmek
9ddd62cda1
fuzz-nspawn-oci: add fuzzer for the oci bundle loader
2019-03-22 11:09:52 +01:00
Yu Watanabe
3f4c9bc04c
Merge pull request #12066 from yuwata/fix-network-tunnel-12041
...
network: fix netdev_tunnel_verify()
2019-03-22 05:57:38 +09:00
Yu Watanabe
6a97a86489
test-network: add more tests for tunneling devices
2019-03-22 03:31:50 +09:00
Zbigniew Jędrzejewski-Szmek
59b44cc3b1
Merge pull request #12020 from mrc0mmand/test-functions-interactive-debug
...
test: test-functions improvements for debugging
2019-03-21 18:15:04 +01:00
dana
4890482531
journalctl: support -b all
to negate effect of -b
...
Also fix an issue where -b without argument didn't always behave as -b0
2019-03-19 10:48:26 +01:00
Frantisek Sumsal
5a2114b60e
test: improve testsuite configuration documentation
2019-03-16 18:59:07 +01:00
Frantisek Sumsal
b43c2c01e9
test: allow overriding of the KVM detection using TEST_NO_KVM
...
By default the run_qemu() function enables KVM automatically
if it detects the /dev/kvm char device and if the machine is not
already a KVM one. Let's add a TEST_NO_KVM env variable to suppress
this detection.
2019-03-16 18:59:07 +01:00
Frantisek Sumsal
c81a46b904
test: introduce INTERACTIVE_DEBUG
...
Make the interactive debugging of (particularly QEMU) machines less
painful, by replacing the default vt220 TERM with linux one, and
by not shutting down the machine after running the test itself.
2019-03-16 18:59:01 +01:00
Frantisek Sumsal
6d67286fc3
test: unify indentation
2019-03-16 15:49:43 +01:00
Lennart Poettering
95658673a0
Merge pull request #12016 from yuwata/fix-two-memleaks-found-by-oss-fuzz
...
Fix two memleaks found by oss fuzz
2019-03-15 17:33:48 +01:00
Yu Watanabe
c7a67ba5eb
fuzz: add testcase for oss-fuzz#13691
2019-03-15 23:54:30 +09:00
Yu Watanabe
5ba40bb2cc
fuzz: add a testcase for oss-fuzz#13719
2019-03-15 23:47:41 +09:00
Zbigniew Jędrzejewski-Szmek
054d871d41
test-execute: block /sys not /proc
...
As explained in the previous commit, blocking /proc can cause us
to go into a long loop or fail the test.
2019-03-15 15:46:41 +01:00
Yu Watanabe
8cc6727a5a
test: add a testcase for device plugged -> dead -> plugged bug
2019-03-15 21:16:58 +09:00
Lennart Poettering
9bbd37845c
Merge pull request #11988 from keszybz/test-binaries-installation
...
Install more requires binaries for tests
2019-03-15 13:06:11 +01:00
Frantisek Sumsal
5b69d297c1
test: use PBKDF2 instead of Argon2 in cryptsetup...
...
to reduce memory requirements for volume manipulation. Also,
to further improve the test performance, reduce number of PBKDF
iterations to 1000 (allowed minimum).
2019-03-15 10:05:33 +01:00
Frantisek Sumsal
32983312ed
test: bump the second partition size to 50MB
...
10MB is not enough for a LUKS2 partition.
2019-03-15 06:12:23 +01:00
Zbigniew Jędrzejewski-Szmek
98b0439f08
tests: install /usr/bin/dbus-broker when using dbus-broker
...
We'd install the service file, and then dbus-broker-launcher because it is
mentioned in ExecStart=, but not the main executable, so nothing would work.
Let's just install dbus-broker executables if found. They are small, so this
doesn't matter much, and is much easier than figuring the exact conditions
under which dbus-broker will be used instead of dbus-daemon.
2019-03-14 15:52:38 +01:00
Yu Watanabe
cff83db917
test-network: add tests for L2TP
2019-03-14 11:12:32 +09:00
Susant Sahani
3a56e697c8
networkd: Introduce l2tp tunnel
...
This works allows networkd to configure l2tp tunnel.
See http://man7.org/linux/man-pages/man8/ip-l2tp.8.html
2019-03-14 10:57:41 +09:00
Frantisek Sumsal
0ae4456c93
test: avoid double-fsck'ing of the rootfs on Arch
...
Since systemd 206 the combination of systemd and mkinitcpio
causes, under certain conditions, the rootfs to be double fsck'd.
Symptoms:
```
:: performing fsck on '/dev/sda1'
systemd: clean, 3523/125488 files, 141738/501760 blocks
********************** WARNING **********************
* *
* The root device is not configured to be mounted *
* read-write! It may be fsck'd again later. *
* *
*****************************************************
<snip>
[ OK ] Started File System Check on Root Device
```
This occurs when neither 'ro' or 'rw', or only 'ro' is present
on the kernel command line. The solution is to mount the roofs
as read-write on the kernel command line, so systemd knows to not fsck
it again.
2019-03-13 17:05:31 +01:00
Zbigniew Jędrzejewski-Szmek
1e46047066
tests: install "head" in the image
...
For #11915 .
2019-03-13 16:35:23 +01:00
Tobias Jungel
7f15b71460
networkd: Add bridge port capabilities
...
This PR adds the configuration switches for multicast flooding, neighbor
suppression and learning of a bridge port.
2019-03-13 16:27:22 +01:00
Frantisek Sumsal
3f50fff536
test: don't overwrite TESTDIR if already set
2019-03-13 10:30:25 +01:00
Lennart Poettering
96c45cc697
Merge pull request #11861 from yuwata/network-verify-2
...
network: config parser updates and wireguard refactoring
2019-03-13 10:15:27 +01:00
Lennart Poettering
3cca6cfd41
Merge pull request #11893 from yuwata/wait-online-take-operstate
...
wait-online: optionally take required minimum operational state
2019-03-13 10:10:43 +01:00
Yu Watanabe
c9cc038343
network: introduce 'degraded-carrier' operstate to order all states
...
Previously, 'degraded' state is ambiguous for bonding or bridge master:
1. one or more slave interfaces does not have carrier,
2. no link local address is assigned to the master,
3. combination of the above two.
This makes the above case 1 and 3 are in the new 'degraded-carrier'
state, and makes 'degraded' state as all slaves are active but no
link local address on master.
2019-03-13 14:29:00 +09:00
Yu Watanabe
4ddbf08cfd
test-network: wait more and fix wrong operational state
...
Closes #11977 .
2019-03-13 14:27:39 +09:00
Yu Watanabe
39bcff3bca
test-network: add test for WireGuard.PrivateKeyFile=
2019-03-13 12:02:08 +09:00
Yu Watanabe
76df77794a
wireguard: add PrivateKeyFile= option
...
Closes #11878 .
2019-03-13 12:02:03 +09:00
Yu Watanabe
bbb5aebe3e
test-network: add tests for invalid Address sections
2019-03-13 11:59:18 +09:00
Yu Watanabe
7e46b29bd3
test: add a testcase for ProtectHome=tmpfs vs ProtectSystem=strict
2019-03-13 11:53:59 +09:00
Davide Cavalca
1485aacb16
meson: scope more git invocations with current_source_dir()
2019-03-12 15:01:47 +01:00
Zbigniew Jędrzejewski-Szmek
ec637f309f
Merge pull request #11943 from yuwata/device-action-seqnum-cleanups
...
sd-device: store parsed SEQNUM and ACTION string
2019-03-12 13:17:33 +01:00
Zbigniew Jędrzejewski-Szmek
a729e42d4b
Merge pull request #11897 from mrc0mmand/parallelize-TEST-24-UNIT-TESTS
...
test: parallelize tasks in TEST-24-UNIT-TESTS
2019-03-12 11:21:06 +01:00
Yu Watanabe
7905e6d70e
test: wait for a while active state of .device is updated
2019-03-12 09:49:58 +09:00
Lennart Poettering
35d3a35e56
Merge pull request #11960 from mrc0mmand/more-fuzzers
...
fuzz: introduce more fuzzers
2019-03-11 18:04:22 +01:00
Clemens Gruber
c423be28a0
network: introduce TripleSampling= option in CAN section
...
When enabled, three samples are used to determine the value of a
received bit by majority rule.
This patch adds support for the TripleSampling= option in the [CAN]
section of .network files.
2019-03-11 17:15:47 +01:00
Yu Watanabe
7f45d738a6
test-network: add tests for issue #11921
2019-03-11 15:29:19 +01:00
Frantisek Sumsal
ea1cdaf262
fuzz: add a memleak reproducer for fuzz-nspawn-settings
2019-03-11 14:13:09 +01:00
Frantisek Sumsal
b5b499b32c
fuzz: add nspawn-settings fuzzer
2019-03-11 14:13:00 +01:00
Frantisek Sumsal
18d51b4509
fuzz: add env-file fuzzer
2019-03-11 14:11:28 +01:00
Frantisek Sumsal
5bfb2a93a4
test: try to determine QEMU_SMP dynamically
...
If the QEMU_SMP value has not been explicitly set, try to determine it
from the number of online CPUs using the nproc utility. If this approach
fails, fall back to the default value QEMU_SMP=1.
This change should significantly help when running integration tests
under QEMU on multicore systems.
2019-03-08 21:28:26 +01:00
Yu Watanabe
1ec38b8574
test: add test for ID_RENAMING= udev property handling by pid1
2019-03-07 17:28:19 +09:00
Frantisek Sumsal
2f2a0454ef
test: parallelize tasks in TEST-24-UNIT-TESTS
2019-03-06 10:23:19 +01:00
Zbigniew Jędrzejewski-Szmek
f27abfccd0
fuzz-dns-packet: add test case with lots of labels
...
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13422
2019-03-04 15:53:37 +01:00
Lennart Poettering
46d4d67d79
Merge pull request #11820 from dm0-/chase
...
Allow tmpfiles to create files in a root under an unprivileged directory
2019-03-04 13:04:45 +01:00
Yu Watanabe
26bf9c302d
test-network: add tests for address pool
2019-03-01 16:34:55 +09:00
David Michael
8595c4588c
TEST-22: add test for unprivileged dirs in root prefixes
...
This verifies the fix for the issue described in:
https://github.com/systemd/systemd/pull/11820
2019-02-28 13:06:07 -05:00
Zbigniew Jędrzejewski-Szmek
2fe4c28d30
Merge pull request #11834 from martinpitt/network-test-fixes
...
networkd-test fix/improvement
2019-02-28 17:48:41 +01:00
Yu Watanabe
af3b1498c6
test-network: add testcase for #1850
2019-02-28 10:34:27 +09:00
Yu Watanabe
9cb8c55934
network: rename GatewayOnlink= to GatewayOnLink=
...
But still GatewayOnlink= is supported for backward compatibility.
2019-02-28 10:00:22 +09:00
Martin Pitt
09b8826ea3
networkd-test: ignore failures of test_route_only_dns* in containers
...
This test exposes a race condition when running in LXC, see issue #11848
for details. Until that is understood and fixed, skip the test as it's
not a recent regression.
2019-02-27 23:15:31 +01:00
Martin Pitt
829c0672e0
networkd-test: specify Address= with prefix length
...
This avoids a warning:
An address '192.168.42.100' is specified without prefix length. The
behavior of parsing addresses without prefix length will be changed
in the future release. Please specify prefix length explicitly.
2019-02-27 22:53:57 +01:00
Martin Pitt
74c13b7659
networkd-test: show service journal on startup failure
...
This provides easier evaluation of failed tests.
2019-02-27 22:53:57 +01:00
Lennart Poettering
dc16327c48
Merge pull request #11795 from yuwata/fix-network-routing-policy-11280
...
network: fix routing policy rule issue #11280
2019-02-27 18:43:56 +01:00
Lennart Poettering
200fb167a2
Merge pull request #11844 from keszybz/networkd-fuzzer-fixes
...
Networkd fuzzer fixes
2019-02-27 17:45:55 +01:00
Zbigniew Jędrzejewski-Szmek
c448459d56
networkd: refuse more than 128 NTP servers
...
This test case is a bit silly, but it shows that our code is unprepared to
handle so many network servers, with quadratic complexity in various places.
I don't think there are any valid reasons to have hundres of NTP servers
configured, so let's just emit a warning and cut the list short.
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13354
2019-02-27 14:52:33 +01:00
Zbigniew Jędrzejewski-Szmek
83ec459276
networkd: fix memleak when the same NetDev is specified twice
...
hashmap_put() returns 0 if the (key, value) pair is already present in the
hashmap, and -EEXIST if the key exists, but the value is different.
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13433
2019-02-27 14:31:28 +01:00
Yu Watanabe
b677774d69
test-network: add testcase for issue #11280
2019-02-27 19:24:13 +09:00
Yu Watanabe
703bc7a2a6
test-network: drop relevant ip routing policy rules before testing
2019-02-27 19:23:46 +09:00
Yu Watanabe
72b7f1b976
test-network: add test for MTUBytes= in vlan or macvlan devices
2019-02-27 10:05:02 +09:00
Lennart Poettering
f3892edd5e
Merge pull request #11824 from keszybz/fuzzer-fixes
...
Fuzzer fixes
2019-02-26 19:02:12 +01:00
Lennart Poettering
8c28360a21
Merge pull request #11823 from keszybz/more-fuzz-coverage
...
More fuzz coverage
2019-02-26 17:21:32 +01:00
Zbigniew Jędrzejewski-Szmek
92e068b465
basic/utf8: do not read past end of string when looking for a multi-byte character
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=9341 .
2019-02-26 12:37:40 +01:00
Yu Watanabe
10f6188b67
fuzz: add a sample for fuzz-udev-database
2019-02-26 13:28:30 +09:00
Lennart Poettering
510dc4da13
Merge pull request #11767 from yuwata/network-bridge-enslaved
...
network: extend 'enslaved' state to bridge slave
2019-02-25 19:29:30 +01:00
Zbigniew Jędrzejewski-Szmek
4c4589227e
fuzz-unit-file: add some directives for stuff coverage reports as not covered
...
Some of those directives appear in the corpus, but without arguments, so maybe
the fuzzing libraries can't trigger the right cases. Let's help them.
2019-02-25 15:46:23 +01:00
Yu Watanabe
eac31d708f
fuzz: add directives.link and 99-default.link for fuzz-link-parser
...
Also adds several reproducers of errors fixed in earlier commits.
2019-02-25 12:40:42 +09:00
Yu Watanabe
6609924c32
test-network: add more tests for IgnoreCarrierLoss=
...
Suggested by @amishmm in #9262 .
2019-02-25 09:34:14 +09:00
Yu Watanabe
2be6c5d2ec
test-network: add more tests for Bridge=
2019-02-25 09:34:14 +09:00
Yu Watanabe
cc3e488c7d
test-network: testing with two bond slaves
2019-02-23 19:43:25 +09:00
Yu Watanabe
3dd2d52414
test-udev: fix alignment and drop unnecessary white spaces
2019-02-22 06:50:21 +09:00
Yu Watanabe
84a0819c9d
test-udev: add more tests for line continuation
2019-02-22 06:50:20 +09:00
Lennart Poettering
953a1af082
Merge pull request #11776 from keszybz/networkd-ordered-sets
...
Store domains lists in OrderedSets in networkd
2019-02-21 15:15:11 +01:00
Martin Pitt
f5cf985e9c
networkd-test: fix test_dropin()
...
- This test needs resolved, so make sure it is started. In some Debian
environments it is not.
- It was an unnecessary, and now failing assumption that name servers
get atomically written to the resolved's resolv.conf. Wait until both
expected name servers are in the file.
2019-02-21 12:37:08 +01:00
Martin Pitt
ca56805c8d
networkd-test: use a complete domain name in test_route_only_dns()
...
Since version 241 (commit ea4678?), querying MX type records for
single-label domains does not actually forward the query to the DNS
server any more. Use "example.com" instead, which is the recommended
test domain anyway.
2019-02-21 12:37:08 +01:00
Martin Pitt
6592c9c850
networkd-test: disable DNSSEC in domain-restricted DNS test
...
dnsmasq 2.80 changed behaviour when being queried by resolved with
enabled DNSSEC: It returns errors for SOA and DS queries which cause the
entire query to fail. As we don't configure DNSSEC in this test anyway,
just disable it so that we retain compatibility with old and new dnsmasq
versions.
2019-02-21 12:37:06 +01:00
Zbigniew Jędrzejewski-Szmek
95b2903bde
tests: shorten the fuzz test case
...
The test was failing in Ubuntu CI with a 30s timeout. It makes
sense to keep the file so exercise the set allocation logic, but
we can make it shorter.
2019-02-21 12:30:13 +01:00
Zbigniew Jędrzejewski-Szmek
5e2a51d588
networkd: use OrderedSets instead of strvs to store lists of domains
...
We were already using OrderedSets in the manager object, but strvs in the
configuration parsing code. Using sets gives us better scaling when many
domains are used.
In oss-fuzz #13059 the attached reproducer takes approximately 30.5 s to be
parsed. Converting to sets makes this go down to 10s. This is not _vastly_
faster, but using sets seems like a nicer approach anyway. In particular, we
avoid the quadratic de-unification operation after each addition.
2019-02-21 12:04:27 +01:00
Yu Watanabe
4da3315452
test-network: add testcases for handling disable_ipv6 sysctl property
2019-02-21 11:08:07 +09:00
Yu Watanabe
ecdd039246
test-network: update cosmetic workaround
...
Almost all tests call copy_unit_to_networkd_unit_path() at first.
So, let's move the line break there.
2019-02-21 10:55:46 +09:00
Anita Zhang
7ca69792e5
core: add ':' prefix to ExecXYZ= skip env var substitution
2019-02-20 17:58:14 +01:00
Yu Watanabe
2dcaf38020
Merge pull request #11764 from yuwata/network-verify
...
network: introduce network_verify() and drop incompatible settings
2019-02-20 06:13:53 +09:00
Yu Watanabe
0cc972aac3
test-network: add tests for meaningless settings which should be ignored by networkd
2019-02-20 06:12:54 +09:00
Yu Watanabe
71064bd5ac
Merge pull request #11759 from yuwata/fix-test-dropin
...
test-network: check whether ethtool support driver field for dummy interfaces
2019-02-20 06:11:11 +09:00
Yu Watanabe
b1b10691be
Merge pull request #11757 from yuwata/test-udev-continuation
...
test-udev: add more tests for line continuations and comments
2019-02-20 06:10:37 +09:00
Yu Watanabe
232152bcb1
test-network: check whether ethtool support driver field for dummy interfaces
...
Fixes #11758 .
2019-02-19 22:00:06 +09:00
Yu Watanabe
f32c600935
test-network: disable test for Driver field in networkctl
...
CentOS CI does not like the test. Let's at least tentatively disable the test.
2019-02-19 17:39:05 +09:00
Yu Watanabe
fde66c2120
test-network: update format used by networkctl status
2019-02-19 17:38:30 +09:00
Yu Watanabe
d35976c670
test-udev: add more tests for line continuations and comments
2019-02-19 09:22:45 +09:00
Yu Watanabe
e37a5d90b0
test-udev: use proper semantics for too long line with continuation
...
Follow-up for 1e797cf596
.
2019-02-19 09:21:58 +09:00
Lennart Poettering
9c5675af76
Merge pull request #11729 from yuwata/fix-11721
...
sd-device: also store properties read from udev database to sd_device::properties_db
2019-02-18 16:02:26 +01:00
Lennart Poettering
1ff3e129ae
Merge pull request #11746 from yuwata/udev-rules-cleanup
...
udev-rules: several cleanups for udev-rules.c
2019-02-18 13:05:34 +01:00
Lennart Poettering
1cfece4a45
Merge pull request #11681 from yuwata/network-link-enslaved-operstate
...
network: introduce new 'enslaved' operstate
2019-02-18 13:00:13 +01:00
Lennart Poettering
702451b038
Merge pull request #11698 from yuwata/fix-network-route-table
...
network: honor specified route table
2019-02-18 12:58:32 +01:00
Lennart Poettering
31ced79065
Merge pull request #11743 from keszybz/two-memory-fixups
...
Two fixups for issues found by scanners
2019-02-18 12:09:25 +01:00
Yu Watanabe
c3a8853f6e
test-network: add tests for bonding
2019-02-18 18:07:11 +09:00
Yu Watanabe
1e797cf596
test-udev: add a testcase of too long line
2019-02-18 12:22:54 +09:00
Yu Watanabe
b117044c09
test-network: decrease sleep time in test_bind_carrier()
...
This effectively reverts 63eb09569a
,
as the commit does not fix #11724 .
2019-02-18 06:11:50 +09:00
Zbigniew Jędrzejewski-Szmek
ea53cfd195
shared/calendarspec: do not allocate a big string on stack
...
The string can be as long as a logical line in a unit file — so no unlimited,
but quite big. Let's use a normal heap allocation when making a copy.
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13125
2019-02-16 23:31:07 +01:00
Yu Watanabe
18c613dc36
test-network: add tests for VRF=
2019-02-17 01:25:21 +09:00
Yu Watanabe
0ae7a66d1a
test-network: add tests for DHCP.RouteTable=
2019-02-17 01:17:40 +09:00
Yu Watanabe
3b51bbe135
test-network: drop unused variable
2019-02-17 01:17:40 +09:00
Yu Watanabe
96fb7dc30f
test-network: add a tiny test for ID_NET_DRIVER= udev property
...
Test for #11721 .
2019-02-17 00:43:38 +09:00
Yu Watanabe
63eb09569a
test-network: increase sleep time in test_bind_carrier()
...
Hopefully fixes #11667 .
2019-02-16 07:22:54 +09:00
Lennart Poettering
84e4b0b893
Merge pull request #11716 from ssahani/drop-autoconf-address
...
networkd: ipv6ra allow to ignore addresses
2019-02-15 12:17:46 +01:00
Lennart Poettering
a0279563d7
Merge pull request #11719 from yuwata/networkctl-wildcards
...
networkctl: accept wildcards to specify links
2019-02-15 11:44:24 +01:00
Lennart Poettering
19df3047f3
Merge pull request #9262 from ssahani/ignore-carrier-9111
...
networkd: allow to retain configs even if carrier is lost
2019-02-15 11:35:43 +01:00
Yu Watanabe
cd65d06720
test-network: add test for BindCarrier=
2019-02-15 11:30:17 +01:00
Yu Watanabe
308ae89c9b
test-network: add tests for wildcards in networkctl
2019-02-15 13:54:28 +09:00
Susant Sahani
24433ffa6d
Add to fuzzer
2019-02-14 21:10:59 +05:30
Zbigniew Jędrzejewski-Szmek
dc9cced4ac
Merge pull request #11704 from yuwata/fix-oss-fuzz-12980
...
udev-rule: make rule_add_key() return negative errno when too much tokens
2019-02-13 23:27:12 +01:00
Yu Watanabe
be18d18bd8
test: add testcase for oss-fuzz#12980
2019-02-13 04:16:30 +09:00
Yu Watanabe
05514ae196
test-network: add tests for LinkLocalAddressing=
2019-02-13 02:36:15 +09:00
Frantisek Sumsal
b35d6d828b
test: replace echo with socat
...
The original version of the test used netcat along with a standard
AF_UNIX socket, which caused issues across different netcat
implementations. The AF_UNIX socket was then replaced by a FIFO with a
simple echo, which, however, suffers from the same issue (some echo
implementations don't check if the write() was successful).
Let's revert back to the AF_UNIX socket, but replace netcat with socat,
which, hopefully, resolves the main issue.
Relevant commit: 9b45c2bf02
2019-02-12 19:45:50 +03:00
Jan Synacek
ed2dc503da
rule-syntax-check: allow PROGRAM as an assignment
2019-02-10 19:06:58 +01:00
Yu Watanabe
b412fce830
test-network: use dnsmasq with --dhcp-alternate-port option to test DHCP.ListenPort=
...
Fixes #11675 .
2019-02-09 23:49:12 +09:00
Yu Watanabe
804b6cd26b
test-network: add testcases for IgnoreCarrierLoss=
2019-02-08 22:00:07 +09:00
Yu Watanabe
e327272d79
test-network: ignore tunnel devices automatically added by kernel
...
Fixes #10934 .
2019-02-06 22:04:32 +09:00
Susant Sahani
93b4dab57e
networkd: Allow to retain configs even if carrier is lost
...
When there is bad link in the network the carrier goes up/down.
This makes networkd stops all the clients and drop config.
But if the remote router/dhcpserver running a prevention
of DHCP Starvation attack or DHCP Flood attack it does not allow
networkd to take a DHCP lease resulting failure in configuration.
This patch allows to keep the client running and keep the conf
also for this scenario.
Closes #9111
2019-02-06 13:35:11 +01:00
Yu Watanabe
d586a2c30c
test-network: check port range and ipproto attributes are supported by kernel and ip command
2019-02-06 10:18:23 +01:00
Yu Watanabe
f5d191a9e7
test-network: add or drop whitespace
2019-02-03 05:27:15 +01:00
Yu Watanabe
3e9d555241
test-network: fix test_dhcp_server() and test_ipv6_prefix_delegation()
...
The tests have been broken since 30d3b54eba
.
2019-02-03 04:40:05 +01:00
Taro Yamada
19632f6dbb
test: (ArchLinux) Replace initramfs-linux.img with initramfs-linux-fallback.img.
...
Currently /boot/initramfs-linux.img is used as the default initrd for ArchLinux.
Although, since the kernel modules that are not necessary for the host environment are removed from
initramfs-linux.img by mkinitcpio 's autodetect hook, the kernel modules necessary for qemu may be missing.
(ata_piix, ext4, and so on in my case.)
As a result, the test environment may not be built properly and the test will be failed.
initramfs-linux-fallback.img will skip this autodetect hook, so the test will run successfully in more
environments.
Both initramfs-linux.img and initramfs-linux-fallback.img are generated by default.
2019-02-02 12:45:51 +01:00
Susant Sahani
7bea7f9b57
test-network: skip erspan test if not available
2019-01-30 14:30:59 +01:00
Evgeny Vereshchagin
a19f909b5b
tests: crash PID1 if UBSan is unhappy
...
Now that https://github.com/systemd/systemd/issues/10332 is unlikely to happen
it should be totally fine to try to crash PID1 :-)
2019-01-30 03:16:14 +01:00
Evgeny Vereshchagin
d56db495de
tests: ignore memory leaks in dbus-daemon
...
Otherwise, the test fails on Fedora 28 with
```
Jan 30 01:42:35 systemd-testsuite dbus-daemon[61]: [system] Successfully activated service 'org.freedesktop.systemd1'
Jan 30 01:42:35 systemd-testsuite systemd[61]: dbus.service: Kernel keyring access prohibited, ignoring.
Jan 30 01:42:35 systemd-testsuite systemd[61]: dbus.service: Executing: /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: =================================================================
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: ==61==ERROR: LeakSanitizer: detected memory leaks
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: Direct leak of 72 byte(s) in 1 object(s) allocated from:
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: #0 0x7f21f9e29088 in __interceptor_realloc (/usr/lib64/libasan.so.5+0xef088)
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: #1 0x7f21f9b1b23c (/lib64/libdbus-1.so.3+0x3323c)
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: #2 0x240000001b (<unknown module>)
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: Direct leak of 16 byte(s) in 1 object(s) allocated from:
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: #0 0x7f21f9e29088 in __interceptor_realloc (/usr/lib64/libasan.so.5+0xef088)
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: #1 0x7f21f9b1b23c (/lib64/libdbus-1.so.3+0x3323c)
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: #2 0x7ffffffff (<unknown module>)
Jan 30 01:42:50 systemd-testsuite dbus-daemon[61]: SUMMARY: AddressSanitizer: 88 byte(s) leaked in 2 allocation(s).
```
The leaks were reported and fixed in https://bugs.freedesktop.org/show_bug.cgi?id=107320 .
2019-01-30 02:28:40 +01:00
Lennart Poettering
f90bf549f7
Merge pull request #11569 from yuwata/first-step-11307
...
util-lib: warn if address is specified without prefix length
2019-01-29 11:25:55 +01:00
Yu Watanabe
0b5245a2ee
test-network: set missing prefixlen
2019-01-29 07:36:35 +01:00
Yu Watanabe
16ab043bda
test-network: add more checks in NetworkdNetDevTests.test_wireguard
2019-01-28 10:10:15 +01:00
Lennart Poettering
7c45deb20d
Merge pull request #11460 from yuwata/fix-11458
...
network: update address when static address was already configured by DHCP
2019-01-26 15:41:06 +01:00
Dimitri John Ledkov
9a2e265bb0
test/test-functions: on PPC64 use hvc0 console
2019-01-26 00:21:08 +00:00
Dimitri John Ledkov
eaa602cb14
test/test-functions: on PP64 use vmlinux
...
At least on Ubuntu, ppc64el uses vmlinux-, not vmlinuz. With this, it should be
possible to run qemu tests on ppc64el as part of Ubuntu autopkgtests.
2019-01-26 00:21:07 +00:00
Frantisek Sumsal
e4e039bce4
test: mark plymouth as optional dependency
...
rescue.service pulls in /bin/plymouth, which doesn't exist on some
distributions (e.g. Arch Linux). Let's mark it as optional, as it's not
even required by the referencing unit and causes unwanted fails in the
integration testsuite.
2019-01-21 11:35:24 +01:00
Frantisek Sumsal
bb0e960448
meson: bump timeout for test-udev to 180s
...
On some (mainly virtual) machines the last test takes more than 30
seconds, which causes unnecessary fails, as the test itself is working
properly.
2019-01-21 11:33:54 +01:00
Lennart Poettering
a8ea2833cf
Merge pull request #11375 from daxtens/issue5882
...
network: Fix IPv6 PreferredSource routes
2019-01-17 18:08:01 +01:00
Yu Watanabe
30d3b54eba
test: add a testcase for #11458
2019-01-17 15:38:17 +09:00
Daniel Axtens
20ca06a669
tests: Add test for IPv6 source routing
...
The test is a bit messy because it must be done on a device that
enforces a tentative state for IPv6 addresses, and it appears
that the dummy device does not. So we use a bond instead.
Signed-off-by: Daniel Axtens <dja@axtens.net>
2019-01-16 12:54:06 +11:00
Zbigniew Jędrzejewski-Szmek
29a93cb19d
Merge pull request #11418 from yuwata/fix-11404
...
network: fix infinite loop in setting up wireguard
2019-01-15 21:04:32 +01:00
Zbigniew Jędrzejewski-Szmek
477fd8e886
Merge pull request #11345 from kirbyfan64/tmpfiles-c-empty
...
tmpfiles: Make C still copy if the destination directory is empty
2019-01-15 16:54:19 +01:00
Yu Watanabe
7e6636196a
test: add a testcase for Address.Peer= with ipv6
...
Testcase for #9130 .
2019-01-15 07:37:15 +09:00
Yu Watanabe
da44fb8a72
test: add a testcase for 23 wirguard peers
2019-01-14 10:08:58 +09:00