Bump version to 0.8.12
Extend process_cond.awk to handle lists

This is necessary to handle conditions like: "Architecture is one of
ppc64 and ppc64le".

Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
Generate udev rules conditionally, based on target architecture

This is based on the following observations:
1. Only IBM POWER needs a restart when onlining/offlining a CPU.
2. IBM z/Series do not need any restart (memory ranges are created
   in the kdump kernel rather than by kexec-tools).

Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
Reset fail counter when running with systemd installed

When building for systemd-enabled systems, use systemctl to reset the
failed counter.

Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
Make udev rules completely empty for s390x

Since there are no rules, there is also no need to check if systemd is
installed.

Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
Use RUN instead of PROGRAM in the udev rules

PROGRAM is intended to run a test. RUN is appropriate as an "action".

Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
Implement Stringutil::hex2int()

This utility function converts a single hexadecimal digit to its
corresponding numeric value.

Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
Implement KString::decodeURL()

Provide a method to decode a URL-encoded string.
Plus add a unit test for it.

Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
Rewrite URL parsing according to RFC3986

The old code looked like a collection of random ideas about parsing
a URL. I rewrote the code completely, following the ABFN syntax and
proposed regular expression from the RFC.

Still passes the urlparser test suite.

Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
Decode percent-encoded strings in URL

This allows to use reserved characters e.g. in passwords.

References: bnc#869590
Signed-off-by: Petr Tesarik <ptesarik@suse.cz>