Commit graph

627 commits

Author SHA1 Message Date
Ray Strode
ea53cbf0e8 Force shadow frame buffer to have cairo compatible row stride
Previously it would keep the rowstride of the scanout buffer,
which isn't right.  The entire point of the shadow buffer is
that it has a known at compile time constant memory layout.

(This change fixes password prompts on some hardware)
2008-09-10 13:31:47 -04:00
Ray Strode
de640c616f Fix typo
forgot a state->
2008-09-10 13:09:03 -04:00
Ray Strode
be0130677f don't assert if no window could be made 2008-09-10 10:47:16 -04:00
Ray Strode
a284953e42 Actually fix serial console loop 2008-09-10 10:46:33 -04:00
Ray Strode
ca07ac0c34 Fix console iterating patch from two commits ago
It was an infinite loop
2008-09-05 15:09:07 -04:00
Ray Strode
d12ae10a70 Strip out , when parsing console
Options can be passed to the console, we should
ignore them when opening the console.
2008-09-05 14:31:08 -04:00
Ray Strode
a07d23afd4 Use the last console instead of first console
If the kernel command line specifies more than
one console, then the last console is /dev/console
2008-09-05 14:30:19 -04:00
Ray Strode
335db187c6 Show password prompts for details plugin 2008-09-05 11:23:52 -04:00
Ray Strode
eaabb6a04b Reset details to raw mode when getting password
For some reason it's getting reset during boot up.
2008-09-05 11:20:54 -04:00
Ray Strode
223a6fca83 Don't send ack in addition to cached response
Just a missing return statement
2008-09-04 17:43:26 -04:00
Ray Strode
e962a0bbd9 respond w/ "" if user hits esc to password prompt
This is so when we load the next plugin it won't
get confused.
2008-08-27 16:01:28 -04:00
Ray Strode
5534d814aa Don't try to print prompt in text plugin, if there is not prompt
Fixes a crasher.
2008-08-27 14:08:12 -04:00
Ray Strode
6da3b8ffa6 Don't try to use cached passwords if none get returned
It causes a pretty instant crash.
2008-08-27 12:10:08 -04:00
Ray Strode
8fc9c8f513 Add ply-label-plugin.h to Makefile 2008-08-27 11:41:08 -04:00
Ray Strode
38e261ac9a Add start of font rendering support
We now have a plugin that we load after / is mounted.
It links against pango for text support.  In
libplybootsplash we have a new label control
that will call into the plugin if it's loaded or
render invisible otherwise.
2008-08-27 10:55:38 -04:00
Ray Strode
99ebae5db2 Add ply_frame_buffer_get_bytes
It's going to be used to get access to the frame buffer
bytes directly, so they can be used with cairo.
2008-08-27 10:55:38 -04:00
Ray Strode
2c40451ab2 add Pango check to configure
We're going to need it to render text
2008-08-27 10:55:37 -04:00
Ray Strode
2f915a471c Move splash-plugins to plugins/splash
We're going to have non-splash plugins shortly.
2008-08-27 10:55:37 -04:00
Ray Strode
45894b7dfb Add empty on_root_mounted function 2008-08-27 10:55:37 -04:00
Ray Strode
3822e3573d Add notification to splash plugins when / gets mounted
We'll need it to know when we can dlopen support libraries
for rendering text.
2008-08-27 10:55:37 -04:00
Ray Strode
7391072b93 Show the prompt with the text plugin
It's a little ugly atm, might be able to do better.
2008-08-27 10:55:37 -04:00
Ray Strode
5933f71f43 Make daemon pass client sent password prompt to splash plugins
They don't currently do anything with the message but they
at least now get it so they conceivably could.
2008-08-27 10:55:37 -04:00
Ray Strode
dbe8e595d3 Add --prompt option to ask-for-password client command
We want to be able to ask the user a question instead
of assuming they know what question to answer. This
will be important if /opt and /home get encrypted with
different passwords.
2008-08-27 10:55:36 -04:00
Ray Strode
774d86dbde Count and pair frame buffer pause and unpause calls
We don't want a nested unpause() to cause a premature
flush of the shadow buffer out to the front buffer.
2008-08-27 10:55:36 -04:00
Ray Strode
d3ec877aae Fix up compile error in boot server test 2008-08-27 10:55:36 -04:00
Ray Strode
6f60a782e5 fix typo (transposed letters in 'ask for passowrd') 2008-08-21 13:45:25 -04:00
Ray Strode
d6b2d64ed0 White space clean up 2008-08-21 13:32:24 -04:00
Ray Strode
ab7bffea8c fix up string array splitting code
p = q should have been q = p
2008-08-20 15:50:56 -04:00
Ray Strode
808b18f767 Before asking for passwords try old passwords first
Frequently, the user will choose the same password
for multiple encrypted block devices.  Rather than
asking them for the same information multiple times,
we try to use old passwords first.
2008-08-20 15:50:56 -04:00
Ray Strode
f4946d6269 Add client object support for mutiple answers
If the daemon sends a reply with multiple answers,
deserialize it into an array and dispatch to a
multireply handler.
2008-08-20 15:50:55 -04:00
Ray Strode
55e1ff1698 Return cached passwords if asked for them
We return them in the form

password1\0password2\0password3\0password4\0

so the client doesn't have to ask the user for
the same information more than once.
2008-08-20 15:50:55 -04:00
Ray Strode
ffa35e667f add new "multiple answer" reply type to protocol
When returning cached answers we'll need to return
an entire list.  This provides a way for the client
to know if it needs to read in more than one answer
or not.
2008-08-20 15:50:49 -04:00
Ray Strode
90a9e3f450 Make ply_buffer_clear actually clear the buffer
Before it was just setting size to 0 causing old
stale contents to get reused occassionally.
2008-08-20 15:50:48 -04:00
Ray Strode
777830f556 Fix wrong type being used in password response
Can't take the address of a size_t and only write
8 bits out, even if the value is less than 255.
2008-08-20 15:50:48 -04:00
Ray Strode
ca19eb48ca Add new api for getting string answer after handler is called
Since we're caching answers, we'll need to be able to look
at them again.
2008-08-20 15:50:48 -04:00
Ray Strode
1142082f80 Cache answers to previous questions instead of freeing them
We'll probably need to mark the answers in some way if we ever end
up getting asked a question other than "what's the password?"
2008-08-20 15:50:24 -04:00
Ray Strode
eaf21780d3 add new protocol type for cached passwords
It will be used for the client to communicate to the
daemon that it would prefer the daemon return any
previous password responses instead of asking the user.
2008-08-19 16:42:27 -04:00
Ray Strode
87acb9c279 bump configure.ac version to 0.6.0
Should do another release soon.
2008-08-19 16:03:44 -04:00
Ray Strode
3141ec7afc Force details plugin if serial console is present
It's the only plugin that supports a NULL window right
now, and it's also what the user probably wants if
they're using a serial console.
2008-08-19 14:44:14 -04:00
Ray Strode
ae67f008b6 Detect serial console and redirect messages if present
Previously, we were hard coding tty1.  Now we send messages
to whatever is specified as the console, if a console is
specified.
2008-08-19 14:44:13 -04:00
Ray Strode
cb111dab45 Allow details plugin to work without window
If it's NULL send a NOANSWER reply to any
questions asked by the client and make the
client handle NOANSWER by asking the user
itself.
2008-08-19 14:44:13 -04:00
Ray Strode
31f121080d Add new api to say "I don't know the answer to your question"
This will be important when the client asks the daemon a question
it can't ask the user.  In particular, "What's the password?" when
there isn't any splash that accepts input.
2008-08-19 14:44:12 -04:00
Peter Jones
7cac3b1b6f Don't go back into the event loop after we get a SIGABRT or SIGSEGV;
that causes a busy loop and is bad.
2008-08-13 13:48:28 -04:00
Ray Strode
2204e8f715 Ship a gdm autostart file with viewer
This way when there is an error the user can see it
at the login screen.
2008-08-12 23:56:00 -04:00
Ray Strode
a42c923c29 Make log viewer check spool directory for errors instead
of parsing boot log

Parsing the boot log is a bit messy since it's translated.
2008-08-12 17:49:04 -04:00
Ray Strode
7cd629da64 Fix up top blurb in viewer code
It still had remanents from being out of tree.
2008-08-12 17:18:29 -04:00
Ray Strode
134da00043 if an error happens during boot up spool it for the viewer
We store a link to the boot log in /var/spool/plymouth so that
the viewer can detect if boot up failed.  It will do this by
checking if /var/log/boot.log and /var/spool/plymouth/boot.log
are the same file
2008-08-12 17:16:43 -04:00
Ray Strode
9abbd88835 Recreate boot log at each boot instead of appending
It's confusing to see multiple boots in the file
2008-08-12 17:07:17 -04:00
Ray Strode
fc5cd88767 Make boot.log world readable by default
Before we were only making it readable by root, but
that doesn't make sense. It's not secret information
or anything.
2008-08-12 13:35:10 -04:00
Ray Strode
8ecb839694 Add initial boot log viewer from Matthias
Since plymouth conceals boot messages from the user during boot
up, it should provide a way for users to get at the boot
messages after login.  In particular, if there was a problem
during boot up, the user should get notified at the login
screen.

This commit adds the first cut at a log viewer without
any of the login screen integration bits.
2008-08-12 13:18:51 -04:00