Re: [gdm-list] a few smart card related patches



Hi,

> The reset-pam patch loosely requires another patch,
> process-all-ops.patch, which fixes a bug where the greeters get
> confused if they get sent too many commands too quickly from the
> slave.

Could you explain a bit what problem you were seeing here, and how
the code changes fix the problem?  I'd just like to understand the
changes a bit more.
Sure, so one very easy to way to see the problem is to just click the
cancel button really quickly over and over again.  Another is to send
a series of messages to the fifo in quick succession.  Eventually
you'll see control characters in the greeter.

I believe the problem is caused by the various calls to read in
operation arguments.  They all do :

g_io_channel_read_chars (source, buf, PIPE_SIZE-1, &len, NULL);

which may read in more than just the arguments, but also part of the
next message.
This patch attempts to fix the problem by turning on io channel's
internal buffering feature, searching for the start of the next
message in the read in bytes and seeking backward to the byte before
the start of the next message.   We then process only one message and
return, picking up the next message next iteration of the main loop.

--Ray



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]