Re: Face recognition in GDM ...



Anybody can very easily write a GUI to accomplish the goal here with
PAM.  You could put up a GUI displaying the current face, with a
prompt under it for "Press enter to start recognition".  When enter is
pressed, the PAM module could use any number of IPC mechanisms
(like a two-way pipe) to signal the GUI to acquire the frame and pass
back status.  Maybe you can write prompt strings to the GUI on a pipe
and it can write back status.

As mentioned before, this solution would apply to screen locks as
well as GDM.  Wouldn't you like to unlock your screen this way also?

But the bigest benefit from a masters thesis POV is the simplicity
resulting from the isolation.  It's simple to write a PAM client to
test the GUI out (I'll send you mine if you like, it's about 30 lines
of code IIRC), letting you focus on the GUI and recognition instead of
learning the internals of gdm.  When you want gdm to use it it's
trivial to edit /etc/pam.conf to put the service module on the stack,
as well as the stack of your favorite screen-lock utility.

I'm sorry George, but there's just no contest here.  PAM is simpler
and more flexible for this particular application.  Authentication is
what it's designed for.  I'll agree that for a more complex GUI PAM
has shortcomings (I'm in the middle of that right now for a more
complex GUI I'm having to PAM-ify), but this seems simple
enough to provide a good fit.

-Bob

George wrote:

On Tue, Sep 07, 2004 at 01:02:16PM +0200, José Miguel Buenaposada Biencinto wrote:
snipped

As was pointed out, the somewhat correct blue sky way of doing things would
be PAM, with the caveat that PAM would kind of suck for this (PAM sucks in
many ways, but it's better then the alternative since there are really no
alternatives).  PAM is a question and answer kind of system which is
synchroneous in nature.  So really the best you could do is that the pam
module would say something like: "Press enter to start recognition" and then
gdm would wait for enter, then the PAM code could figure out the username and
such ...

I think way too much whackiness for a masters thesis ... I think for a
prototype it would be best to just modify gui/gdmlogin.c which is the
standard greeter.  I suspect most code will be the face recognition and this
would be the absolutely simplest way of getting it working quickly.  Later
when someone is in a masochistic mood, that person should attempt to write a
PAM module and use that code.  Really that's just an implementation detail.

So in summary, PAM is the correct place to do this except that PAM was
invented by people that hated GUIs and GUI programmers in general and wanted
to make their life as miserable as possible.  That is my current theory.

George




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