problems with airprint to cups server

litauer.uni-koblenz litauer at uni-koblenz.de
Wed Apr 17 07:49:39 PDT 2013


> Hi Christoph,
>
>
> > Now I try to print from my iPhone with airprint. The iPhone searches for =
> printers and finds them. I can select one of the printers and select print.=
>  The iPhone prepares and executes the print. But the data is not sent to th=
> e cups server ... no errors in error_log, no job log, no error message on t=
> he iPhone, nothing at all. I did a tcpdump on the cups server looking for t=
> he iPhones ip address: While searching and selecting the printer on the iPh=
> one, there is lots of IPP protocol communication between the phone and the =
> cups server. Pressing "print" there is no data at all.
> >=20
> > The following announcements are made via DNS:
> > $ORIGIN uni-koblenz.de.
> > _services._dns-sd._udp          PTR    _ipp._tcp
> > _ipp._tcp                       PTR    presse._ipp._tcp
> > _universal._sub._ipp._tcp       IN PTR presse._ipp._tcp
> > _cups._sub._ipp._tcp            IN PTR presse._ipp._tcp
> > presse._ipp._tcp                SRV    0 0 631 printhost
> > presse._ipp._tcp                TXT   "txtvers=3D1" "qtotl=3D1" "rp=3Dpri=
> nters/presse" "ty=3Dpresse" "product=3D(RICOH Aficio MP C5501 PS)" "transpa=
> rent=3Dt" "copies=3Dt" "duplex=3Dt" "color=3Dt" "pdl=3Dapplication/octet-st=
> ream,application/pdf,application/postscript,image/jpeg,image/png,image/urf"=
>  "URF=3DDM3" "air=3Dusername,password" "adminurl=3Dhttp://printhost.uni-kob=
> lenz.de:631/printers/presse" "note=3DA 019" "printer-type=3D0x480901c"
> >=20
> > Because of "air=3Dusername,password" I would expect that, pressing "print=
> ", the iPhone asks me for my username and password. But no dialog appears.
>
> printer-type=3D0x480901c is the bitwise OR of the following:
>    CUPS_PRINTER_BW
>    CUPS_PRINTER_COLOR
>    CUPS_PRINTER_DUPLEX
>    CUPS_PRINTER_SMALL
>    CUPS_PRINTER_VARIABLE
>    CUPS_PRINTER_COMMANDS
>    CUPS_PRINTER_MFP
>
> I think you need to OR with CUPS_PRINTER_AUTHENTICATED (0x400000), i.e. pri=
> nter-type=3D 0x4C0901C.
>
> I previously wrote a C program attached at the end of this email that break=
> s down the printer-type value when you provide a hex or decimal printer-typ=
> e value as a command-line argument.


Very helpful, thanks a lot. I figured out the correct settings for my printer (0xc0385c) ... but still no authentication takes place.
Meanwhile I was able to fix the first problem: Jobs are now sent to the cups server. I can see, that they are printed as user guest. (The problem was a missing pdftoraster filter)

My DNS-TXT service record for presse now is:

presse._ipp._tcp TXT   "txtvers=1" "qtotl=1" "rp=printers/presse" "ty=presse" "product=(RICOH Aficio MP C5501 PS)" "transparent=t" "copies=t" "duplex=t" "color=t" "pdl=application/octet-stream,application/pdf,application/postscript,image/jpeg,image/png,image/urf" "URF=DM3" "air=username,password" "adminurl=http://printhost.uni-koblenz.de:631/printers/presse" "note=A 019" "printer-type=0xc0385c"

Any more hints?

Regards
Christoph




More information about the cups mailing list