ident support

timo at proescholdt.de timo at proescholdt.de
Wed Nov 2 05:49:06 PST 2005


Hi guys,


I want to add ident support to cups, in order to avoid
password authentication to have to take place.

Hence I would trigger an indentd request to the connecting
client to find out the username on the client machine.
(identd server running assumed).

I wanted to ask which place in the code you consider to
be the most suitable for that.

I have been reading the code for the last days and I came
up with the httpSeparate() function, since the username
value seems to originate from there.

Since I need the local socket descriptor for the request
I would have to pass it and would therefore have to change
the functions signature... ugly...

Second I thought about somewhere in scheduler/ipp.c line 315
(cups-1.1.23)

if ((username = ippFindAttribute(con->request, "requesting-user-name", IPP_TAG_NAME)) != NULL)

could be replaced by something like

if (( username = authConnection(con,"ident") != NULL )

what do you guys think? I'd personally prefer the second
variant, but wanted to ask first before starting to code..

As far as I understand the code, both places should cover
print requests as well as administrative tasks, queue management
(over ipp of course), or do I overlook something obvious?


many thanks
Timo




More information about the cups mailing list