summaryrefslogtreecommitdiff
path: root/src/fsckd
AgeCommit message (Collapse)Author
2015-04-28fsck: remove fsckd again, but keep the door open for external replacementLennart Poettering
For a longer discussion see this: http://lists.freedesktop.org/archives/systemd-devel/2015-April/030175.html This introduces /run/systemd/fsck.progress as a simply AF_UNIX/SOCK_STREAM socket. If it exists and is connectable we'll connect fsck's -c switch with it. If external programs want to get progress data they should hence listen on this socket and will get all they need via that socket. To get information about the connecting fsck client they should use SO_PEERCRED. Unless /run/systemd/fsck.progress is around and connectable this change reverts back to v219 behaviour where we'd forward fsck output to /dev/console on our own.
2015-03-16fsckd: check if plymouth is running before attempting connectionDidier Roche
2015-03-16fsckd: Don't use strjoina on gettext() callDidier Roche
2015-03-10fsckd: clean up log messagesDidier Roche
Avoid double logs printing. Not that we don't return manager_update_global_progress() to the handler callback as if the console or plymouth isn't available momentarily, we still desire to handle future fd progress events if those are available again (like cancellation, reports…)
2015-03-10fsckd: Reduce the SAK window when writing to consoleDidier Roche
We don't want to keep /dev/console open all the time, but only open it when needed, to avoid interfering with SAK.
2015-03-09fsck: use _cleanup_close_pair_ where appropriateLennart Poettering
2015-03-09fsckd: make sure we free the connection event source before we close the ↵Lennart Poettering
connection fd
2015-03-09fsckd: don't allow unbounded numbers of clientsLennart Poettering
2015-03-09fsckd: free client event source before we close its fdLennart Poettering
2015-03-09fsck: rename functions to reflect some object orientationLennart Poettering
Let's clean up the function naming scheme and put the object they operate on first in the name, the way OO programming usually does it. Also, let's make sure can properly destroy half-initialized Manager objects.
2015-03-09fsck: don't read invalid dataLennart Poettering
2015-03-09fsckd: internaly check if a client already was cancelledLennart Poettering
2015-03-09fsck: simplify client destruction logicLennart Poettering
2015-03-09fsckd: rework plymouth connection managementLennart Poettering
- the even source should not be freed before the fd for it is closed - read() returns an ssize_t and we need to handle it as such - properly handle errors from read() - reuse on_plymouth_disconnect() whenever we disconnect from plymouth, and rename it plymouth_disconnect hence()
2015-03-09fscd: fix error handlingLennart Poettering
2015-03-09fsck: no need for a temporary variableLennart Poettering
2015-03-09fsckd: fix error handling when sending cancel request to fsck clientLennart Poettering
2015-03-09fsck: unify exit path for connect_plymouth()Lennart Poettering
2015-03-09fsck: use only a single exit code ternary operatorLennart Poettering
2015-03-09fsck: simplificationLennart Poettering
2015-03-09fsckd: the error code is actually returned in 'fd'Lennart Poettering
Also, we don't use {} for single-line if-blocks.
2015-03-09fsckd: simplify code a bitLennart Poettering
2015-03-09fsckd: make use of safe_close()'s return valueLennart Poettering
2015-02-18Translate fsckd messages for plymouthDidier Roche
For plymouth themes not supporting i18n (like .script), send translated messages to display to user, which is equivalent to the sent machine readable data.
2015-02-18Connect to plymouth and support cancellation of in progress fsckDidier Roche
Try to connect and send to plymouth (if running) some checked report progress, using direct plymouth protocole. Update message is the following: fsckd:<num_devices>:<progress>:<string> * num_devices corresponds to the current number of devices being checked (int) * progress corresponds to the current minimum percentage of all devices being checked (float, from 0 to 100) * string is a translated message ready to be displayed by the plymouth theme displaying the information above. It can be overriden by plymouth themes supporting i18n. Grab in fsckd plymouth watch key Control+C, and propagate this cancel request to systemd-fsck which will terminate fsck. Send a message to signal to user what key we are grabbing for fsck cancel. Message is: fsckd-cancel-msg:<string> Where string is a translated string ready to be displayed by the plymouth theme indicating that Control+C can be used to cancel current checks. It can be overriden (matching only fsckd-cancel-msg prefix) for themes supporting i18n.
2015-02-18systemd-fsck: always connect to systemd-fsckdDidier Roche
Remove the plymouth running or show-status checks from systemd-fsck. Instead, always connect to systemd-fsckd socket, and let this one decide if we display progress or not.
2015-02-18fsckd daemon for inter-fsckd communicationDidier Roche
Add systemd-fsckd multiplexer which accepts multiple systemd-fsck instances to connect to it and sends progress report. systemd-fsckd then computes and writes to /dev/console the number of devices currently being checked and the minimum fsck progress. This will be used for interactive progress report and cancelling in plymouth. systemd-fsckd stops on idle when no systemd-fsck is connected. Make the necessary changes to systemd-fsck to connect to the systemd-fsckd socket.