Remove:
- Add limited text support
- consider making details plugin have stdin hooked up
to the pty instead of tty so input works
- More on the last point, we need to have an escape
hatch for fsck etc
There was a sort useless layer of indirection between the
window object and splash plugins. It ended up with
functions like:
void
on_backspace (ply_splash_plugin_t *plugin)
{
plugin->interface->on_backspace (plugin);
}
Since the individual plugins are aware of the window object
anyway, they can register their own on_backspace et al handlers
without going through the ply_splash_plugin_t layer.
Add:
- Add limited text support
- Make --ask-for-password take a prompt message
- consider making details plugin have stdin hooked
up to the pty instead of tty so input works
- consider making details plugin go back to pretty
plugin if user presses escape
The logic for line editing is a little complicated, so it's
best not to duplicate it across all the plugins. Now we
manage it all from the window. The plugins now access the
various editing events via there vtable, but that's an
extra layer of indirection that doesn't matter given that
we pass the window to the plugins anyway. We should drop
that and just have the plugins register for edit events
directly.
This version works even in raw mode, by buffering key presses
passed from the window object, and replying to the client
after the user presses enter. There are a lot of layers of
function pointers getting passed around, so it may make
sense to introduce an opaque type for holding the password
and triggering the reply.
We don't want normal users on the system to be able to
manipulate plymouth. This will be especially important
later when we run plymouth for post-bootup reasons. This
patch checks peer credentials and sends back a NAK to
clients who aren't root.
Add:
- Drop all the make ram disk and copy code. That was just to make bolting things
on easier. We can integrate now.
- check peer credentials on client to make sure it's not running unprivileged
Add:
- Don't start boot-splash automatically, rather wait until given command from client
- Allow plymouth to be started from nash instead of the other way around
Remove:
- add the ability to watch for timeouts in the event loop