1
0
mirror of https://github.com/systemd/systemd.git synced 2024-10-28 20:25:38 +03:00
Commit Graph

13530 Commits

Author SHA1 Message Date
Patrik Flykt
3dd7140035 libsystemd-dhcp: Handle T2 Rebinding timeout
Reuse existing functionality when adding T2 Rebinding support.
2013-12-22 14:37:53 +01:00
Patrik Flykt
6a1cd41ef0 libsystemd-dhcp: Factor out common code initializing events
Factor out common code from timeout T1 handling and starting of
the DHCP client.
2013-12-22 14:37:53 +01:00
Patrik Flykt
aba26854e5 libsystemd-dhcp: Handle T1 Renewing timeout
Expiration of T1 timeout takes the client to the Rebinding state,
where it attempts to renew its lease. Start by opening a DCHP unicast
socket as there now is a proper IP address set.

Compute the resend timer as half of the remaining time down to a
minimum of 60 seconds (RFC2131). Modify DHCP Request sending to send
only UDP DHCP data when unicasting. Also modify DHCP Ack/Nak
receiving such that the client_receive_ack() takes care of using
either the full IP, UDP, DHCP packet or only the DHCP payload
depending whether the client is in Requesting or Renewing state.
Finally always report DHCP_EVENT_IP_ACQUIRE from Requesting state
and only DHCP_EVENT_IP_CHANGE if the IP address was modified when
the lease was renewed.
2013-12-22 14:37:53 +01:00
Patrik Flykt
234fc2dfce libsystemd-dhcp: Add functions for sending unicast UDP messages
Create a helper functions setting up an unicast DHCP UDP socket and
sending data. Add function stubs for the test program.

[tomegun: initialize structs when allocating, and drop unneccesary 'err']
2013-12-22 14:37:49 +01:00
Patrik Flykt
2fba7b03b5 libsystemd-dhcp: Check test result without casting value 2013-12-22 14:28:00 +01:00
Patrik Flykt
0c6a3c888a libsystemd-dhcp: Fix checksum computation for buffer with odd size
Fix off-by-one error and notice that summing may need more than one
round for the result to be in the lower 16 bits.
2013-12-22 14:28:00 +01:00
Patrik Flykt
77e8d29dd2 libsystemd-dhcp: Fix receiving of other message when expecting Ack
When a DHCP Nak is received, return a DHCP_EVENT_NO_LEASE event. If
some other DHCP message is received or an error happens when parsing
options, return -ENOMSG in order to ignore the packet. There may be
more than one server serving the same subnet, each server will send
its Offer to the client.
2013-12-22 14:28:00 +01:00
Patrik Flykt
2ed0375c2d libsystemd-dhcp: Unref event source before closing socket 2013-12-22 14:28:00 +01:00
Patrik Flykt
20d471b933 libsystemd-dhcp: Return proper error on OOM 2013-12-22 14:28:00 +01:00
Patrik Flykt
1c8035a897 libsystemd-dhcp: Return proper error if bind fails
This also fixes a minor indentation damage.

[tomegun: use close_noint_nofail() instead and drop 'err' variables]
2013-12-22 14:27:15 +01:00
Patrik Flykt
3b349af69a libsystemd-dhcp: Use be32_t for IP addresses in network order. 2013-12-22 10:48:31 +01:00
Zbigniew Jędrzejewski-Szmek
eb53c37e2e logind: remove dead variable
Noticed-by: Jan Alexander Steffens <jan.steffens@gmail.com>
2013-12-21 22:54:03 -05:00
Thomas Bächler
e2f123b97b fstab-generator: Do not try to fsck non-devices
This fixes a regression introduced in 64e70e4 where the mount fails
when fstab is misconfigured with fs_passno > 0 on a virtual file
system like nfs, and the type is specified as "auto".
2013-12-21 22:52:56 -05:00
Mantas Mikulėnas
5b04fe6000 libsystemd-login: add sd_session_get_remote_{host, user} 2013-12-21 22:02:57 -05:00
Lennart Poettering
bee7e92899 update TODO 2013-12-22 03:50:52 +01:00
Lennart Poettering
aec8de63b1 core: no need to list properties for PropertiesChanged messages anymore
Since the vtable includes this information anyway, let's just use that
2013-12-22 03:50:52 +01:00
Lennart Poettering
a03e4337fd bus: allow invocation of sd_bus_emit_properties_changed_strv() with NULL list
When NULL is passed this shall indicate that a PropertiesChanged message
for all properties marked as EMITS_CHANGE or EMITS_INVALIDATION should
be generated.
2013-12-22 03:50:52 +01:00
Lennart Poettering
556089dc57 bus: decorate the various object vtables with SD_BUS_VTABLE_PROPERTY_CONST where appropriate 2013-12-22 03:50:52 +01:00
Lennart Poettering
df98a87ba3 bus: introduce concept of "const" properties
This way we have four kinds of properties:

a) those which are constant as long as an object exists
b) those which can change and PropertiesChange messages with contents are generated
c) those which can change and where the PropertesChange merely includes invalidation
d) those which can change but for which no events are generated

Clients (through code generators run on the introspection XML) can thus
aggressively cache a, b, c, with only d excluded.
2013-12-22 03:50:52 +01:00
Zbigniew Jędrzejewski-Szmek
69d918b092 man: update the list of commands influenced by --full
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=732798
2013-12-21 19:07:59 -05:00
Zbigniew Jędrzejewski-Szmek
e213d1a3c3 man: mention --full and --lines in systemctl status
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=732798
2013-12-21 19:00:23 -05:00
Florian Weimer
4ff4ebb1fb util: remove union dirent_storage 2013-12-21 18:35:55 -05:00
Florian Weimer
bde1fdd773 journal: replace readdir_r with readdir
This commit also adds error handling for failures during
directory reading.
2013-12-21 18:35:55 -05:00
Florian Weimer
a2be63f922 conf-files: replace readdir_r with readdir 2013-12-21 18:35:55 -05:00
Florian Weimer
0371ca0dac journald/server: replace readdir_r with readdir
The available_space function now returns 0 if reading the directory
fails.  Previously, such errors were silently ignored.
2013-12-21 18:35:55 -05:00
Florian Weimer
78a5d04dd6 journal/vacuum: replace readdir_r with readdir 2013-12-21 18:35:55 -05:00
Florian Weimer
3fd11280e8 util: replace readdir_r with readdir
This fixes rm_rf_children_dangerous to detect errors during directory
reading.  Previously, it could dereference an uninitialized pointer.
2013-12-21 18:35:55 -05:00
Florian Weimer
4d993c8cb7 install: replace readdir_r with readdir
The old code incorrectly assumed that readdir_r updates errno.
2013-12-21 18:35:55 -05:00
Florian Weimer
9fa3006323 core: replace readdir_r with readdir 2013-12-21 18:35:55 -05:00
Florian Weimer
66c7a5332a login: replace readdir_r with readdir 2013-12-21 18:35:55 -05:00
Florian Weimer
6887ec4f00 delta: replace readdir_r with readdir 2013-12-21 18:35:55 -05:00
Florian Weimer
d78096b343 tmpfiles: replace readdir_r with readdir 2013-12-21 18:35:55 -05:00
Djalal Harouni
016284c352 loginctl: correctly show session IDs on session-status
Commit f8f14b3654 introduced a regression that makes
loginctl session-status to not show the correct session ID(s)

In print_session_status_info() the map[] array, element "Seat" receives
the offset of the "id" in "SessionStatusInfo" struct instead of the
offset of the "seat" member.

This will cause prop_map_first_of_struct() function to overwrite the
SessionStatusInfo.id memory with seats if there are any.

Fix this typo by using the "seat" member.

Before:
 - tixxdz (1000)
          Since: Sat 2013-12-21 10:07:23 CET; 5h 26min ago
         Leader: 1265 (sshd)

After:
1 - tixxdz (1000)
           Since: Sat 2013-12-21 10:07:23 CET; 5h 26min ago
          Leader: 1265 (sshd)
2013-12-21 18:35:27 -05:00
Zbigniew Jędrzejewski-Szmek
841aa8c0b4 loginctl,shell-completions: fix listing of sessions/users/seats 2013-12-21 18:35:27 -05:00
Zbigniew Jędrzejewski-Szmek
40be878abb build-sys: add xml sources to EXTRA_DIST
Apparently automake does not include the sources if they are under
a conditional that is disabled when making dist. This means that
everything would have to be enabled to make distcheck work.
2013-12-21 18:35:27 -05:00
Zbigniew Jędrzejewski-Szmek
2dc38ed00f man: add systemd-dbus-proxy@.service(8) and systemd-dbus.proxy(8) 2013-12-21 18:34:40 -05:00
Zbigniew Jędrzejewski-Szmek
9818fa6d6d bus-proxyd: use a loop instead of c&p 2013-12-21 18:34:40 -05:00
Zbigniew Jędrzejewski-Szmek
cc4e8b6f70 bus-proxyd: show address nicely in --help 2013-12-21 18:26:47 -05:00
Lennart Poettering
dad5f697dd update TODO 2013-12-21 23:32:45 +01:00
Lennart Poettering
780f962c3e bus: fix bad memory access in driverd when we get an empty triggers list 2013-12-21 23:26:51 +01:00
Lennart Poettering
c20733832f bus: when getting credentials of a bus name that is activatable but not activated, say we don't have anything. 2013-12-21 23:21:31 +01:00
Lennart Poettering
050eb34da8 driverd: properly handle NameHasOwner() for unique names 2013-12-21 18:35:27 +01:00
Lennart Poettering
908b8720b8 bus: unify credential query code in driverd 2013-12-21 18:31:00 +01:00
Lennart Poettering
aa56560dbb bus: when client asks driverd for credentials of a name, return a useful error if that name doesn't exist on the bus 2013-12-21 18:21:49 +01:00
Lennart Poettering
8875e122f0 driverd: make sure AddMatch is accessible without privileges 2013-12-21 18:13:05 +01:00
Lennart Poettering
2aa40788f7 update TODO 2013-12-21 18:13:01 +01:00
Lennart Poettering
7fb411f035 bus: when introspecting, turn unprivileged flag into inverse annoation of "privileged"
Internally, it makes sense to have a default of "privileged" for
methods, and a flag to open it up. However, externally in the bus
introspection turn this around since negative options actually suck.
2013-12-21 18:08:39 +01:00
Lennart Poettering
b2bb3469fd bus: poll() on the right fds in proxyd 2013-12-21 17:54:29 +01:00
Lennart Poettering
0721804f03 bus: send status message from proxyd to systemd about client we are working for 2013-12-21 05:15:09 +01:00
Lennart Poettering
373d32c9f4 systemctl: fix bad memory access when processing PIDs on the "systemctl status" command line 2013-12-21 05:15:09 +01:00