1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-02 19:21:53 +03:00
Commit Graph

11387 Commits

Author SHA1 Message Date
Kay Sievers
fcdfc15924 TODO: remove dbus items which we will not touch anymore 2013-04-20 19:26:28 +02:00
Josh Triplett
601d9d6fb3 TODO: journal enhancements 2013-04-20 19:24:33 +02:00
Kay Sievers
de7a659c05 hwdb: update 2013-04-20 18:41:57 +02:00
Evangelos Foutras
9d2d0fe1e3 build-sys: prevent library underlinking
Underlinking can cause subtle bugs like the recent issue with
libnss_myhostname (which was fixed in commit 1e335af7).
2013-04-19 18:15:45 -04:00
Dave Reisner
1e335af70f nss-myhostname: ensure that glibc's assert is used 2013-04-19 16:31:52 -04:00
Lukas Nykryn
7f6437976d logind-dbus: initialize result variable 2013-04-19 10:10:41 -04:00
Lukas Nykryn
5a8e217859 crypt-setup-generator: correctly check return of strdup 2013-04-19 10:10:41 -04:00
Zbigniew Jędrzejewski-Szmek
31885cd5e3 core/killall: use procfs_file_alloca 2013-04-19 10:10:41 -04:00
Harald Hoyer
bdd29249a8 Reintroduce f_type comparison macro
This reverts commit 4826f0b7b5.

Because statfs.t_type can be int on some architecures, we have to cast
the const magic to the type, otherwise the compiler warns about
signed/unsigned comparison, because the magic can be 32 bit unsigned.

statfs(2) man page is also wrong on some systems, because
f_type is not __SWORD_TYPE on some architecures.

The following program:

int main(int argc, char**argv)
{
        struct statfs s;
        statfs(argv[1], &s);

	printf("sizeof(f_type) = %d\n", sizeof(s.f_type));
	printf("sizeof(__SWORD_TYPE) = %d\n", sizeof(__SWORD_TYPE));
	printf("sizeof(long) = %d\n", sizeof(long));
	printf("sizeof(int) = %d\n", sizeof(int));
	if (sizeof(s.f_type) == sizeof(int)) {
		printf("f_type = 0x%x\n", s.f_type);
	} else {
                printf("f_type = 0x%lx\n", s.f_type);
	}
        return 0;
}

executed on s390x gives for a btrfs:

sizeof(f_type) = 4
sizeof(__SWORD_TYPE) = 8
sizeof(long) = 8
sizeof(int) = 4
f_type = 0x9123683e
2013-04-19 13:59:07 +02:00
Zbigniew Jędrzejewski-Szmek
cbeabcfbc5 Update NEWS 2013-04-18 19:59:12 -04:00
Zbigniew Jędrzejewski-Szmek
7f876bc428 systemd-python: wrap sd_journal_add_conjunction 2013-04-18 19:38:28 -04:00
Zbigniew Jędrzejewski-Szmek
f333fbb1ef nspawn: create empty /etc/resolv.conf if necessary
nspawn will overmount resolv.conf if it exists. Since e.g.
default install with yum doesn't create /etc/resolv.conf,
a container created with yum will not have network. This
seems undesirable, and since we overmount the file anyway,
let's create it too.

Also, mounting a read-write /etc/resolv.conf in the container
is treated as a failure, since it makes it possible to
modify hosts /etc/resolv.conf from inside the container.
2013-04-18 19:38:28 -04:00
Lennart Poettering
7c04ad2da1 build-sys: run 'make update-man-list' 2013-04-19 01:11:38 +02:00
Lennart Poettering
ef3b524687 build-sys: prepare release 202 2013-04-19 00:41:24 +02:00
Marius Vollmer
a3e6f050de journal: when iterating through a file we might lose messages when changing direction.
https://bugs.freedesktop.org/show_bug.cgi?id=63672
2013-04-18 22:34:36 +02:00
Lennart Poettering
cc400110ff man: document the new login class 'background' 2013-04-18 22:20:56 +02:00
Lennart Poettering
461bd8e47c update TODO 2013-04-18 22:19:33 +02:00
Harald Hoyer
8d768d9962 cryptsetup: ask for password, if key file cannot be accessed
If the key file cannot be accessed, we can at least ask for the
password.
2013-04-18 22:17:13 +02:00
Josh Triplett
4befe2eba0 systemd-logind: Fix linking by reordering libraries in LDADD
libsystemd-audit needs functions from libsystemd-shared, so
libsystemd-audit needs to appear first.  Otherwise:

  CCLD   systemd-logind
./.libs/libsystemd-audit.a(audit.o): In function `audit_session_from_pid':
/home/josh/src/systemd/src/shared/audit.c:50: undefined reference to `detect_container'
2013-04-18 20:33:26 +02:00
Kay Sievers
b030d1f864 bus: test - add hack to receive messages 2013-04-18 19:05:10 +02:00
Kay Sievers
a2cef833cf bus: catch up with kernel changes 2013-04-18 18:54:17 +02:00
Henrik Grindal Bakken
cee22bd3cb buildsys: Add --disable-tests to avoid building tests
This patch adds --disable-tests to configure.  It is based on a patch
posted by Thierry Reding in 2010.  The motivation for adding it is that
some tests fail link-time when cross-compiling.

The patch adds a new Makefile variable -- manual_tests -- and uses
that instead of noinst_PROGRAMS.  However, if ENABLE_TESTS is true,
the former is added to the latter.  It also renames noinst_tests to
simply tests.
2013-04-18 17:15:59 +02:00
Harald Hoyer
4826f0b7b5 Revert f_type fixups
This reverts commit a858b64ddd.
This reverts commit aea275c431.
This reverts commit fc6e6d245e.
This reverts commit c4073a27c5.
This reverts commit cddf148028.
This reverts commit 8c68a70170.

The constants are now casted to __SWORD_TYPE, which should resolve the
compiler warnings about signed vs unsigned.

After talking to Kay, we concluded:

This should be fixed in the kernel, not worked around in userspace tools.

Architectures cannot use int and expect magic constants lager than INT_MAX
to work correctly. The kernel header needs to be fixed.

Even coreutils cannot handle it:
  #define RAMFS_MAGIC  0x858458f6
  # stat -f -c%t /
  ffffffff858458f6

  #define BTRFS_SUPER_MAGIC 0x9123683E
  # stat -f -c%t /mnt
  ffffffff9123683e

Although I found the perfect working macro to fix the thing :)

        __extension__ ({                                                \
                        bool _ret = false;                              \
                        switch(f) { case c: _ret=true; };               \
                        ( _ret );                                       \
                })
2013-04-18 15:01:55 +02:00
Harald Hoyer
a858b64ddd macro.h: let F_TYPE_CMP() macro fail to compile, if second parameter is not const
If the magic parameter is not a const, then the macro does not work, so
better fail to compile, than be surprised afterwards.
2013-04-18 12:05:41 +02:00
Harald Hoyer
98f59e59e0 fileio.c: do not parse comments after non-whitespace chars
systemd does not want to understand comments after the first
non-whitespace char occured.

key=foo #comment  will result into key == "foo #comment"
key="foo" #comment  will result into key == "foo#comment"
"key= #comment" will result into key == "#comment"
"key #comment" is an invalid line
2013-04-18 11:29:00 +02:00
Harald Hoyer
bef8951800 sd-login.c: fixup for d70964d0
p pointer is not _cleanup_free_
2013-04-18 10:16:17 +02:00
Harald Hoyer
7fd1b19bc9 move _cleanup_ attribute in front of the type
http://lists.freedesktop.org/archives/systemd-devel/2013-April/010510.html
2013-04-18 09:11:22 +02:00
Harald Hoyer
d70964d0f6 login/sd-login.c: make use of _cleanup_free_ and friends 2013-04-18 08:39:07 +02:00
Harald Hoyer
aea275c431 rename CMP_F_TYPE to F_TYPE_CMP 2013-04-18 08:06:55 +02:00
Harald Hoyer
fc6e6d245e Add ugly CMP_F_TYPE() macro
On some architectures (like s390x) the kernel has the type int for
f_type, but long in userspace.
Assigning the 32 bit magic constants from linux/magic.h to the 31 bit
signed f_type in the kernel, causes f_type to be negative for some
constants.
glibc extends the int to long for those architecures in 64 bit mode, so
the negative int becomes a negative long, which cannot be simply
compared to the original magic constant, because the compiler would
automatically cast the constant to long.
To workaround this issue, we also compare to the (int)MAGIC value in a
macro. Of course, we could do #ifdef with the architecure, but it has to
be maintained, and the magic constants are 32 bit anyway.

Someday, when the int is unsigned or long for all architectures, we can
remove this macro again. Until then, keep it as simple as it can be.
2013-04-18 07:34:25 +02:00
Harald Hoyer
5521d69856 core/execute: only clean the environment, if we have one 2013-04-18 07:16:01 +02:00
Lennart Poettering
14787e6499 build-sys: add sd_journal_add_conjunction() to symbol versioning file 2013-04-18 03:12:06 +02:00
Lennart Poettering
3dc8396ba9 man: document the new sd_journal_add_conjunction() call 2013-04-18 03:11:44 +02:00
Lennart Poettering
248f077586 update TODO 2013-04-18 02:54:58 +02:00
Simon Peeters
449101fce2 Move bus_error to dbus-common and remove bus_error_message_or_strerror
bus_error and bus_error_message_or_strerror dit almost exactly the same,
so use only one of them and place it in dbus-common.
2013-04-18 02:54:58 +02:00
Harald Hoyer
951657bd0a cryptsetup-generator: add support for rd.luks.key=
Also clarify rd.luks.uuid and luks.uuid in the manual.

https://bugzilla.redhat.com/show_bug.cgi?id=905683
2013-04-18 02:45:01 +02:00
Lennart Poettering
8b95c91638 man: document that timeout=0 is the default for entries in crypttab 2013-04-18 02:21:01 +02:00
Harald Hoyer
49714341c3 cryptsetup: set the timeout to 0 by default
cryptsetup itself has no timeout as default from the beginning. So the
default timeout has been "0" from the beginning.

https://bugzilla.redhat.com/show_bug.cgi?id=949702
2013-04-18 02:19:46 +02:00
Lennart Poettering
099a804b11 execute: always add in EXECUTABLE= field when we log something about execution 2013-04-18 02:18:33 +02:00
Lennart Poettering
a5e4972c89 systemctl: drop usage of "internally loaded modules"
I wouldn't know what "internally" is supposed to mean hear, and we use
this terminology in this context nowhere else, so let's drop this.
2013-04-18 02:10:44 +02:00
Lennart Poettering
b7253ecda5 readahead: let readahead run for a little longer
Especially slower systems need more than 10s for starting the session,
so let's bump this to 30s.
2013-04-17 22:24:07 +02:00
Lennart Poettering
ab8e074ce2 update TODO 2013-04-17 22:24:07 +02:00
Harald Hoyer
c4073a27c5 fixup for cddf148028
Instead of making a type up, just use __SWORD_TYPE, after reading
statfs(2).

Too bad, this does not fix s390x because __SWORD_TYPE is (long int) and
the kernel uses (int) to fill in the field!!!!!!
2013-04-17 19:00:50 +02:00
Auke Kok
9e6d4c613d bootchart: Fix errno usage. 2013-04-17 09:49:33 -07:00
Lennart Poettering
b454b11220 update TODO 2013-04-17 18:48:32 +02:00
Lennart Poettering
c556fe792d bus: replace aligned_alloc() with memalign() everywhere
aligned_alloc() is C11 and not available everywhere. Also it would
require us to align the size value. So let's just invoke memalign()
instead, which is universally available and doesn't have any alignment
restrictions on the size parameter.
2013-04-17 18:48:31 +02:00
Henrik Grindal Bakken
05b9b83ad3 core: Remove unnecessary typedef
ExecContext isn't used in this header file, and everything seems to
build just fine without this typedef.  The typedef doesn't really belong
here, and at least my gcc-4.4.6 gives an error on type redefined.
2013-04-17 18:27:46 +02:00
Harald Hoyer
cddf148028 fixup 8c68a7017 and cast to (unsigned long) 2013-04-17 18:23:17 +02:00
Harald Hoyer
8c68a70170 fixed statfs.f_type signed vs unsigned comparisons
statfs.f_type is signed but the filesystem magics are unsigned.
Casting the magics to signed will not make the signed.

Problem seen on big-endian 64bit s390x with __fsword_t 8 bytes.

Casting statfs.f_type to unsigned on the other hand will get us what we
need.

https://bugzilla.redhat.com/show_bug.cgi?id=953217
2013-04-17 18:14:25 +02:00
Zbigniew Jędrzejewski-Szmek
90cf049bfe shell-completion: use -a to see "empty" properties 2013-04-17 10:53:18 -04:00