OpenPrinting / ipp-usb

ipp-usb -- HTTP reverse proxy, backed by IPP-over-USB connection to device
BSD 2-Clause "Simplified" License
129 stars 11 forks source link

Add quirk to deny certain device capabilities #41

Closed izissise closed 2 years ago

izissise commented 2 years ago

Most devices annouce a whole set of capabilities print,scan,fax and users wants to choose to disable some of them because their either broken or some other reason.

It fixes an issue where ipp-usb would reset a device usb connection every few seconds because one of the caps is broken on the device.

Example deny print and fax to keep only scan

[HP Photosmart 6520 series]
  blacklist-caps = 5
alexpevzner commented 2 years ago

Hi @izissise,

as for now, disabling certain capabilities will only allow to disable probing and DNS-SD (Avahi) announcing of the IPP fax service support. For other services (IPP printing and eSCL scanning), disabling capabilities bits literally will not change anything.

What if the final purpose of your patch, and how device with some capabilities disabled should behave? Should it affect only DNS-SD device announcing, or some other aspects of device functionality as well?

izissise commented 2 years ago

Hello @alexpevzner

I have a HP Photosmart 6520 series with everything stripped out except the scanner, my problem was that ipp-usb would reset the usb link mid-scan because ipp-usb was also probing for print and fax and the device was not responding.

Removing print and fax using this patch stopped ipp-usb resetting the usb link. But in light of this new information maybe disabling the fax is the reason for it to work.

If disabling fax works on it's own, a better patch would be to add an option to disable fax. I'll come back to you once the test is done

izissise commented 2 years ago

For future reference here tail -f of /var/log/ipp-usb compiled with current master (without this patch):

==> main.log <==
06-03-2022 16:57:48:   ===============================
06-03-2022 16:57:48:   ipp-usb started in "udev" mode, pid=45487
06-03-2022 16:57:48: + PNP Bus 005 Device 003: added

==> 03f0-af11-XXXXXXXXXXXXXP-HP-Photosmart-6520-series.log <==
06-03-2022 16:57:48:
06-03-2022 16:57:48:   ===============================
06-03-2022 16:57:48: + Bus 005 Device 003: added Photosmart 6520 series
06-03-2022 16:57:48:   Device info:
06-03-2022 16:57:48:     Ident:         03f0-af11-XXXXXXXXXXXXXP-HP-Photosmart-6520-series
06-03-2022 16:57:48:     Manufacturer:  HP
06-03-2022 16:57:48:     Product:       Photosmart 6520 series
06-03-2022 16:57:48:     SerialNumber:  XXXXXXXXXXXXXP
06-03-2022 16:57:48:     MfgAndProduct: HP Photosmart 6520 series
06-03-2022 16:57:48:     BasicCaps:     print,scan,fax,http
06-03-2022 16:57:48:
06-03-2022 16:57:48:   Device quirks:
06-03-2022 16:57:48:     from [*] (/usr/share/ipp-usb/quirks/default.conf:3)
06-03-2022 16:57:48:       blacklist = false
06-03-2022 16:57:48:       usb-max-interfaces = 0
06-03-2022 16:57:48:       http-connection = ""
06-03-2022 16:57:48:
06-03-2022 16:57:48:   USB stack parameters
06-03-2022 16:57:48:     authorized_default:          -1
06-03-2022 16:57:48:     autosuspend:                 2
06-03-2022 16:57:48:     blinkenlights:               N
06-03-2022 16:57:48:     initial_descriptor_timeout:  5000
06-03-2022 16:57:48:     nousb:                       N
06-03-2022 16:57:48:     old_scheme_first:            N
06-03-2022 16:57:48:     quirks:
06-03-2022 16:57:48:     usbfs_memory_mb:             16
06-03-2022 16:57:48:     usbfs_snoop:                 N
06-03-2022 16:57:48:     usbfs_snoop_max:             65536
06-03-2022 16:57:48:     use_both_schemes:            Y
06-03-2022 16:57:48:
06-03-2022 16:57:48:   USB interfaces:
06-03-2022 16:57:48:     Config Interface Alt Class SubClass Proto
06-03-2022 16:57:48:        1       0      0   255    204     0
06-03-2022 16:57:48:        1       1      0   7      1       2
06-03-2022 16:57:48: *      1       1      1   7      1       4
06-03-2022 16:57:48:        1       2      0   8      6       80
06-03-2022 16:57:48:        1       3      0   255    4       1
06-03-2022 16:57:48: *      1       3      1   7      1       4
06-03-2022 16:57:48:
06-03-2022 16:57:48:   USB[0]: open: Bus 005 Device 003 Interface 1 Alt 1
06-03-2022 16:57:48:   USB[1]: open: Bus 005 Device 003 Interface 3 Alt 1
06-03-2022 16:57:48: > IPP request:
06-03-2022 16:57:48: > {
06-03-2022 16:57:48: >     VERSION 2.0
06-03-2022 16:57:48: >     OPERATION Get-Printer-Attributes
06-03-2022 16:57:48: >
06-03-2022 16:57:48: >     GROUP operation-attributes-tag
06-03-2022 16:57:48: >     ATTR "attributes-charset" charset: utf-8
06-03-2022 16:57:48: >     ATTR "attributes-natural-language" naturalLanguage: en-US
06-03-2022 16:57:48: >     ATTR "printer-uri" uri: http://localhost:60000/ipp/print
06-03-2022 16:57:48: >     ATTR "requested-attributes" keyword: color-supported document-format-supported media-size-supported mopria-certified printer-device-id printer-dns-sd-name printer-icons printer-info printer-kind printer-location printer-make-and-model printer-more-info printer-uuid sides-supported urf-supported
06-03-2022 16:57:48: > }
06-03-2022 16:57:48:
06-03-2022 16:57:48: > HTTP[000]: POST http://localhost:60000/ipp/print
06-03-2022 16:57:48: > HTTP[000]: request body: got 462 bytes; closed
06-03-2022 16:57:48: > HTTP[000]: body is small (462 bytes), prefetched before sending
06-03-2022 16:57:48: > HTTP[000]: HTTP request header:
06-03-2022 16:57:48: >   POST /ipp/print HTTP/1.1
06-03-2022 16:57:48: >   Host: localhost:60000
06-03-2022 16:57:48: >   User-Agent: ipp-usb
06-03-2022 16:57:48: >   Content-Length: 462
06-03-2022 16:57:48: >   Content-Type: application/ipp
06-03-2022 16:57:48: >
06-03-2022 16:57:48:   USB[0]: connection allocated, 1 in use: a-- ---
06-03-2022 16:57:48:   HTTP[000]: connection 0 allocated
06-03-2022 16:57:48: > USB[0]: write: wanted 586 sent 586 total 586
06-03-2022 16:57:48: < USB[0]: read: wanted 4096 got 0 total 0
06-03-2022 16:57:48: ! USB[0]: zero-size read
06-03-2022 16:57:48: < USB[0]: read: wanted 4096 got 512 total 512
06-03-2022 16:57:48: < HTTP[000]: POST http://localhost:60000/ipp/print - 200 OK
06-03-2022 16:57:48: < HTTP[000]: HTTP response header:
06-03-2022 16:57:48: <   HTTP/1.1 200 OK
06-03-2022 16:57:48: <   Cache-Control: must-revalidate, max-age=0
06-03-2022 16:57:48: <   Content-Length: 3580
06-03-2022 16:57:48: <   Pragma: no-cache
06-03-2022 16:57:48: <   Server: HP HTTP Server; HP Photosmart 6520 series - CX017B; Serial Number: XXXXXXXXXXXXXP; Poker_mp2 Built:Mon Oct 27, 2014 08:20:08AM {PKM2CN1444AR, ASIC id 0x003a0008}
06-03-2022 16:57:48: <
06-03-2022 16:57:48: < USB[0]: read: wanted 4096 got 512 total 1024
06-03-2022 16:57:48: < USB[0]: read: wanted 4096 got 512 total 1536
06-03-2022 16:57:48: < USB[0]: read: wanted 4096 got 512 total 2048
06-03-2022 16:57:48: < USB[0]: read: wanted 4096 got 512 total 2560
06-03-2022 16:57:48: < USB[0]: read: wanted 4096 got 512 total 3072
06-03-2022 16:57:48: < USB[0]: read: wanted 4096 got 512 total 3584
06-03-2022 16:57:48: < USB[0]: read: wanted 4096 got 269 total 3853
06-03-2022 16:57:48: < HTTP[000]: response body: got 3580 bytes; EOF
06-03-2022 16:57:48: < IPP response:
06-03-2022 16:57:48: < {
06-03-2022 16:57:48: <     VERSION 2.0
06-03-2022 16:57:48: <     STATUS successful-ok
06-03-2022 16:57:48: <
06-03-2022 16:57:48: <     GROUP operation-attributes-tag
06-03-2022 16:57:48: <     ATTR "attributes-charset" charset: utf-8
06-03-2022 16:57:48: <     ATTR "attributes-natural-language" naturalLanguage: en-us
06-03-2022 16:57:48: <
06-03-2022 16:57:48: <     GROUP printer-attributes-tag
06-03-2022 16:57:48: <     ATTR "printer-location" textWithoutLanguage:
06-03-2022 16:57:48: <     ATTR "printer-more-info" uri: http://localhost/#hId-pgAirPrint
06-03-2022 16:57:48: <     ATTR "printer-info" textWithoutLanguage: Photosmart 6520 series [FB5CBD]
06-03-2022 16:57:48: <     ATTR "printer-dns-sd-name" nameWithoutLanguage: Photosmart 6520 series [FB5CBD]
06-03-2022 16:57:48: <     ATTR "printer-make-and-model" textWithoutLanguage: HP Photosmart 6520 series
06-03-2022 16:57:48: <     ATTR "document-format-supported" mimeMediaType: application/vnd.hp-PCL image/jpeg application/xhtml+xml application/PCLm image/urf application/octet-stream
06-03-2022 16:57:48: <     ATTR "color-supported" boolean: true
06-03-2022 16:57:48: <     ATTR "printer-device-id" textWithoutLanguage: MFG:HP;MDL:Photosmart 6520 series;CMD:PCL3GUI,PCL3,PJL,JPEG,XHTMLPrint,PCLM,AirPrint,DW-PCL,802.11,DESKJET,DYN;CLS:PRINTER;DES:CX017B;CID:HPIJVIPAV2;LEDMDIS:USB#FF#CC#00,USB#07#01#02,USB#FF#04#01;IPP-HTTP:T;IPP-E:FF-CC-00,07-01-02,FF-04-01;eSCL:scan=FF-CC-00,07-01-02,FF-04-01,alt=07-01-02,FF-04-01,ver=1.9,rs="/eSCL";SN:XXXXXXXXXXXXXP;S:038088C4842010210158000000040000000400000004000000040000000;Z:0102,05000009000001000001000001000001,0600,0700000000000000000000,0b000000000000000000000000000000000000000000000000000000000000,0c0,0e00000000000000000000,0f00000000000000000000,10000000000002000002000002000002,110,12000,150,17000000000000000000000000000000,181;
06-03-2022 16:57:48: <     ATTR "printer-uuid" uri: urn:uuid:1c852a4d-b800-1f08-abcd-843497fb5cbd
06-03-2022 16:57:48: <     ATTR "media-size-supported" collection: {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 18415
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 26670
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 21590
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 27940
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 21590
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 35560
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 20320
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 25400
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 13970
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 21590
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 14800
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 21000
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 21000
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 29700
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 18200
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 25700
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 10000
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 14800
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 10500
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 14800
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 10160
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 15240
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 12700
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 20320
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 7620
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 12700
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 9842
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 19050
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 10477
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 24130
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 11000
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 22000
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 16200
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 22900
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 11400
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 16200
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 11112
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 14605
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 12000
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 23500
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 9000
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 20500
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 11176
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 15240
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 8890
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 12700
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 12700
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 17780
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 10160
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 15240
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 9207
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 16510
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 17600
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 25000
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 10000
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 15000
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" integer: 10500
06-03-2022 16:57:48: <         ATTR "y-dimension" integer: 14800
06-03-2022 16:57:48: <     } {
06-03-2022 16:57:48: <         ATTR "x-dimension" rangeOfInteger: 7620-21590
06-03-2022 16:57:48: <         ATTR "y-dimension" rangeOfInteger: 12700-35560
06-03-2022 16:57:48: <     }
06-03-2022 16:57:48: <     ATTR "urf-supported" keyword: CP1 MT1-2-8-9-10-11 OB9 OFU0 PQ3-4-5 RS300-600 SRGB24 W8-16 DEVW8-16 DEVRGB24-48 ADOBERGB24-48 DM3 IS1-7 V1.2
06-03-2022 16:57:48: <     ATTR "sides-supported" keyword: one-sided two-sided-short-edge two-sided-long-edge
06-03-2022 16:57:48: <     ATTR "printer-icons" uri: http://localhost/webApps/images/printer-small.png http://localhost/webApps/images/printer.png http://localhost/webApps/images/printer-large.png
06-03-2022 16:57:48: <     ATTR "print-content-optimize-supported" keyword: auto photo graphics text text-and-graphics
06-03-2022 16:57:48: < }
06-03-2022 16:57:48:
06-03-2022 16:57:48:   USB[0]: connection released, 0 in use: --- ---
06-03-2022 16:57:48: > IPP request:
06-03-2022 16:57:48: > {
06-03-2022 16:57:48: >     VERSION 2.0
06-03-2022 16:57:48: >     OPERATION Get-Printer-Attributes
06-03-2022 16:57:48: >
06-03-2022 16:57:48: >     GROUP operation-attributes-tag
06-03-2022 16:57:48: >     ATTR "attributes-charset" charset: utf-8
06-03-2022 16:57:48: >     ATTR "attributes-natural-language" naturalLanguage: en-US
06-03-2022 16:57:48: >     ATTR "printer-uri" uri: http://localhost:60000/ipp/faxout
06-03-2022 16:57:48: >     ATTR "requested-attributes" keyword: color-supported document-format-supported media-size-supported mopria-certified printer-device-id printer-dns-sd-name printer-icons printer-info printer-kind printer-location printer-make-and-model printer-more-info printer-uuid sides-supported urf-supported
06-03-2022 16:57:48: > }
06-03-2022 16:57:48:
06-03-2022 16:57:48: > HTTP[001]: POST http://localhost:60000/ipp/faxout
06-03-2022 16:57:48: > HTTP[001]: request body: got 463 bytes; closed
06-03-2022 16:57:48: > HTTP[001]: body is small (463 bytes), prefetched before sending
06-03-2022 16:57:48: > HTTP[001]: HTTP request header:
06-03-2022 16:57:48: >   POST /ipp/faxout HTTP/1.1
06-03-2022 16:57:48: >   Host: localhost:60000
06-03-2022 16:57:48: >   User-Agent: ipp-usb
06-03-2022 16:57:48: >   Content-Length: 463
06-03-2022 16:57:48: >   Content-Type: application/ipp
06-03-2022 16:57:48: >
06-03-2022 16:57:48:   USB[1]: connection allocated, 1 in use: --- a--
06-03-2022 16:57:48:   HTTP[001]: connection 1 allocated
06-03-2022 16:57:48: > USB[1]: write: wanted 588 sent 588 total 588
06-03-2022 16:57:48: < USB[1]: read: wanted 4096 got 0 total 0
06-03-2022 16:57:48: ! USB[1]: zero-size read
06-03-2022 16:57:48: < USB[1]: read: wanted 4096 got 0 total 0
06-03-2022 16:57:48: ! USB[1]: zero-size read
06-03-2022 16:57:48: < USB[1]: read: wanted 4096 got 0 total 0
06-03-2022 16:57:48: ! USB[1]: zero-size read
06-03-2022 16:57:49: < USB[1]: read: wanted 4096 got 0 total 0
06-03-2022 16:57:49: ! USB[1]: zero-size read
06-03-2022 16:57:50: < USB[1]: read: wanted 4096 got 0 total 0
06-03-2022 16:57:50: ! USB[1]: zero-size read
06-03-2022 16:57:51: < USB[1]: read: wanted 4096 got 0 total 0
06-03-2022 16:57:51: ! USB[1]: zero-size read
06-03-2022 16:57:52: < USB[1]: read: wanted 4096 got 0 total 0
06-03-2022 16:57:52: ! USB[1]: zero-size read
06-03-2022 16:57:53: < USB[1]: read: wanted 4096 got 0 total 0
06-03-2022 16:57:53: ! USB[1]: zero-size read
06-03-2022 16:57:54: ! HTTP[001]: Device initialization timed out
06-03-2022 16:57:54:   USB[1]: connection released, 0 in use: --- ---
06-03-2022 16:57:54: ! IPP FaxOut probe failed: HTTP: Post http://localhost:60000/ipp/faxout: Device initialization timed out
06-03-2022 16:57:54: - Bus 005 Device 003: resetting Photosmart 6520 series
06-03-2022 16:57:54:   USB[0]: closed
06-03-2022 16:57:54:   USB[1]: closed
06-03-2022 16:57:54: - Bus 005 Device 003: removed Photosmart 6520 series

==> main.log <==
06-03-2022 16:57:54: ! PNP Bus 005 Device 003: Device initialization timed out

06-03-2022 16:57:56: + PNP Bus 005 Device 003: retry

==> 03f0-af11-XXXXXXXXXXXXXP-HP-Photosmart-6520-series.log <==
06-03-2022 16:57:56:
06-03-2022 16:57:56:   ===============================
06-03-2022 16:57:56: + Bus 005 Device 003: added Photosmart 6520 series
06-03-2022 16:57:56:   Device info:
06-03-2022 16:57:56:     Ident:         03f0-af11-XXXXXXXXXXXXXP-HP-Photosmart-6520-series
....

It reset the usb connection and goes on forever

izissise commented 2 years ago

Here the log with the following quirks:

[HP Photosmart 6520 series]
  blacklist-caps = 4
06-03-2022 17:04:16:   ===============================
06-03-2022 17:04:16:   ipp-usb started in "udev" mode, pid=46876
06-03-2022 17:04:16: + PNP Bus 005 Device 004: added

==> 03f0-af11-XXXXXXXXXXXXXP-HP-Photosmart-6520-series.log <==
06-03-2022 17:04:16:
06-03-2022 17:04:16:   ===============================
06-03-2022 17:04:16: + Bus 005 Device 004: added Photosmart 6520 series
06-03-2022 17:04:16:   Device info:
06-03-2022 17:04:16:     Ident:         03f0-af11-XXXXXXXXXXXXXP-HP-Photosmart-6520-series
06-03-2022 17:04:16:     Manufacturer:  HP
06-03-2022 17:04:16:     Product:       Photosmart 6520 series
06-03-2022 17:04:16:     SerialNumber:  XXXXXXXXXXXXXP
06-03-2022 17:04:16:     MfgAndProduct: HP Photosmart 6520 series
06-03-2022 17:04:16:     BasicCaps:     print,scan,http
06-03-2022 17:04:16:
06-03-2022 17:04:16:   Device quirks:
06-03-2022 17:04:16:     from [HP Photosmart 6520 series] (/usr/share/ipp-usb/quirks/HP.conf:18)
06-03-2022 17:04:16:       blacklist = false
06-03-2022 17:04:16:       usb-max-interfaces = 0
06-03-2022 17:04:16:       blacklist-caps = fax
06-03-2022 17:04:16:     from [*] (/usr/share/ipp-usb/quirks/default.conf:3)
06-03-2022 17:04:16:       blacklist = false
06-03-2022 17:04:16:       usb-max-interfaces = 0
06-03-2022 17:04:16:       blacklist-caps =
06-03-2022 17:04:16:       http-connection = ""
06-03-2022 17:04:16:
06-03-2022 17:04:16:   USB stack parameters
06-03-2022 17:04:16:     authorized_default:          -1
06-03-2022 17:04:16:     autosuspend:                 2
06-03-2022 17:04:16:     blinkenlights:               N
06-03-2022 17:04:16:     initial_descriptor_timeout:  5000
06-03-2022 17:04:16:     nousb:                       N
06-03-2022 17:04:16:     old_scheme_first:            N
06-03-2022 17:04:16:     quirks:
06-03-2022 17:04:16:     usbfs_memory_mb:             16
06-03-2022 17:04:16:     usbfs_snoop:                 N
06-03-2022 17:04:16:     usbfs_snoop_max:             65536
06-03-2022 17:04:16:     use_both_schemes:            Y
06-03-2022 17:04:16:
06-03-2022 17:04:16:   USB interfaces:
06-03-2022 17:04:16:     Config Interface Alt Class SubClass Proto
06-03-2022 17:04:16:        1       0      0   255    204     0
06-03-2022 17:04:16:        1       1      0   7      1       2
06-03-2022 17:04:16: *      1       1      1   7      1       4
06-03-2022 17:04:16:        1       2      0   8      6       80
06-03-2022 17:04:16:        1       3      0   255    4       1
06-03-2022 17:04:16: *      1       3      1   7      1       4
06-03-2022 17:04:16:
06-03-2022 17:04:16:   USB[0]: open: Bus 005 Device 004 Interface 1 Alt 1
06-03-2022 17:04:16:   USB[1]: open: Bus 005 Device 004 Interface 3 Alt 1
06-03-2022 17:04:16: > IPP request:
06-03-2022 17:04:16: > {
06-03-2022 17:04:16: >     VERSION 2.0
06-03-2022 17:04:16: >     OPERATION Get-Printer-Attributes
06-03-2022 17:04:16: >
06-03-2022 17:04:16: >     GROUP operation-attributes-tag
06-03-2022 17:04:16: >     ATTR "attributes-charset" charset: utf-8
06-03-2022 17:04:16: >     ATTR "attributes-natural-language" naturalLanguage: en-US
06-03-2022 17:04:16: >     ATTR "printer-uri" uri: http://localhost:60000/ipp/print
06-03-2022 17:04:16: >     ATTR "requested-attributes" keyword: color-supported document-format-supported media-size-supported mopria-certified printer-device-id printer-dns-sd-name printer-icons printer-info printer-kind printer-location printer-make-and-model printer-more-info printer-uuid sides-supported urf-supported
06-03-2022 17:04:16: > }
06-03-2022 17:04:16:
06-03-2022 17:04:16: > HTTP[000]: POST http://localhost:60000/ipp/print
06-03-2022 17:04:16: > HTTP[000]: request body: got 462 bytes; closed
06-03-2022 17:04:16: > HTTP[000]: body is small (462 bytes), prefetched before sending
06-03-2022 17:04:16: > HTTP[000]: HTTP request header:
06-03-2022 17:04:16: >   POST /ipp/print HTTP/1.1
06-03-2022 17:04:16: >   Host: localhost:60000
06-03-2022 17:04:16: >   User-Agent: ipp-usb
06-03-2022 17:04:16: >   Content-Length: 462
06-03-2022 17:04:16: >   Content-Type: application/ipp
06-03-2022 17:04:16: >
06-03-2022 17:04:16:   USB[0]: connection allocated, 1 in use: a-- ---
06-03-2022 17:04:16:   HTTP[000]: connection 0 allocated
06-03-2022 17:04:16: > USB[0]: write: wanted 586 sent 586 total 586
06-03-2022 17:04:16: < USB[0]: read: wanted 4096 got 0 total 0
06-03-2022 17:04:16: ! USB[0]: zero-size read
06-03-2022 17:04:16: < USB[0]: read: wanted 4096 got 512 total 512
06-03-2022 17:04:16: < HTTP[000]: POST http://localhost:60000/ipp/print - 200 OK
06-03-2022 17:04:16: < HTTP[000]: HTTP response header:
06-03-2022 17:04:16: <   HTTP/1.1 200 OK
06-03-2022 17:04:16: <   Cache-Control: must-revalidate, max-age=0
06-03-2022 17:04:16: <   Content-Length: 3580
06-03-2022 17:04:16: <   Pragma: no-cache
06-03-2022 17:04:16: <   Server: HP HTTP Server; HP Photosmart 6520 series - CX017B; Serial Number: XXXXXXXXXXXXXP; Poker_mp2 Built:Mon Oct 27, 2014 08:20:08AM {PKM2CN1444AR, ASIC id 0x003a0008}
06-03-2022 17:04:16: <
06-03-2022 17:04:16: < USB[0]: read: wanted 4096 got 512 total 1024
06-03-2022 17:04:16: < USB[0]: read: wanted 4096 got 512 total 1536
06-03-2022 17:04:16: < USB[0]: read: wanted 4096 got 512 total 2048
06-03-2022 17:04:16: < USB[0]: read: wanted 4096 got 512 total 2560
06-03-2022 17:04:16: < USB[0]: read: wanted 4096 got 512 total 3072
06-03-2022 17:04:16: < USB[0]: read: wanted 4096 got 512 total 3584
06-03-2022 17:04:16: < USB[0]: read: wanted 4096 got 269 total 3853
06-03-2022 17:04:16: < HTTP[000]: response body: got 3580 bytes; EOF
06-03-2022 17:04:16: < IPP response:
06-03-2022 17:04:16: < {
06-03-2022 17:04:16: <     VERSION 2.0
06-03-2022 17:04:16: <     STATUS successful-ok
06-03-2022 17:04:16: <
06-03-2022 17:04:16: <     GROUP operation-attributes-tag
06-03-2022 17:04:16: <     ATTR "attributes-charset" charset: utf-8
06-03-2022 17:04:16: <     ATTR "attributes-natural-language" naturalLanguage: en-us
06-03-2022 17:04:16: <
06-03-2022 17:04:16: <     GROUP printer-attributes-tag
06-03-2022 17:04:16: <     ATTR "printer-location" textWithoutLanguage:
06-03-2022 17:04:16: <     ATTR "printer-more-info" uri: http://localhost/#hId-pgAirPrint
06-03-2022 17:04:16: <     ATTR "printer-info" textWithoutLanguage: Photosmart 6520 series [FB5CBD]
06-03-2022 17:04:16: <     ATTR "printer-dns-sd-name" nameWithoutLanguage: Photosmart 6520 series [FB5CBD]
06-03-2022 17:04:16: <     ATTR "printer-make-and-model" textWithoutLanguage: HP Photosmart 6520 series
06-03-2022 17:04:16: <     ATTR "document-format-supported" mimeMediaType: application/vnd.hp-PCL image/jpeg application/xhtml+xml application/PCLm image/urf application/octet-stream
06-03-2022 17:04:16: <     ATTR "color-supported" boolean: true
06-03-2022 17:04:16: <     ATTR "printer-device-id" textWithoutLanguage: MFG:HP;MDL:Photosmart 6520 series;CMD:PCL3GUI,PCL3,PJL,JPEG,XHTMLPrint,PCLM,AirPrint,DW-PCL,802.11,DESKJET,DYN;CLS:PRINTER;DES:CX017B;CID:HPIJVIPAV2;LEDMDIS:USB#FF#CC#00,USB#07#01#02,USB#FF#04#01;IPP-HTTP:T;IPP-E:FF-CC-00,07-01-02,FF-04-01;eSCL:scan=FF-CC-00,07-01-02,FF-04-01,alt=07-01-02,FF-04-01,ver=1.9,rs="/eSCL";SN:XXXXXXXXXXXXXP;S:038088C4842010210F58000000040000000400000004000000040000000;Z:0102,05000009000001000001000001000001,0600,0700000000000000000000,0b000000000000000000000000000000000000000000000000000000000000,0c0,0e00000000000000000000,0f00000000000000000000,10000000000002000002000002000002,110,12000,150,17000000000000000000000000000000,181;
06-03-2022 17:04:16: <     ATTR "printer-uuid" uri: urn:uuid:1c852a4d-b800-1f08-abcd-843497fb5cbd
06-03-2022 17:04:16: <     ATTR "media-size-supported" collection: {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 18415
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 26670
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 21590
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 27940
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 21590
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 35560
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 20320
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 25400
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 13970
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 21590
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 14800
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 21000
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 21000
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 29700
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 18200
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 25700
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 10000
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 14800
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 10500
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 14800
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 10160
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 15240
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 12700
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 20320
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 7620
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 12700
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 9842
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 19050
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 10477
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 24130
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 11000
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 22000
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 16200
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 22900
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 11400
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 16200
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 11112
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 14605
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 12000
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 23500
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 9000
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 20500
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 11176
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 15240
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 8890
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 12700
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 12700
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 17780
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 10160
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 15240
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 9207
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 16510
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 17600
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 25000
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 10000
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 15000
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" integer: 10500
06-03-2022 17:04:16: <         ATTR "y-dimension" integer: 14800
06-03-2022 17:04:16: <     } {
06-03-2022 17:04:16: <         ATTR "x-dimension" rangeOfInteger: 7620-21590
06-03-2022 17:04:16: <         ATTR "y-dimension" rangeOfInteger: 12700-35560
06-03-2022 17:04:16: <     }
06-03-2022 17:04:16: <     ATTR "urf-supported" keyword: CP1 MT1-2-8-9-10-11 OB9 OFU0 PQ3-4-5 RS300-600 SRGB24 W8-16 DEVW8-16 DEVRGB24-48 ADOBERGB24-48 DM3 IS1-7 V1.2
06-03-2022 17:04:16: <     ATTR "sides-supported" keyword: one-sided two-sided-short-edge two-sided-long-edge
06-03-2022 17:04:16: <     ATTR "printer-icons" uri: http://localhost/webApps/images/printer-small.png http://localhost/webApps/images/printer.png http://localhost/webApps/images/printer-large.png
06-03-2022 17:04:16: <     ATTR "print-content-optimize-supported" keyword: auto photo graphics text text-and-graphics
06-03-2022 17:04:16: < }
06-03-2022 17:04:16:
06-03-2022 17:04:16:   USB[0]: connection released, 0 in use: --- ---
06-03-2022 17:04:16:   IPP FaxOut service not in capabilities
06-03-2022 17:04:16: > HTTP[001]: GET http://localhost:60000/eSCL/ScannerCapabilities
06-03-2022 17:04:16: > HTTP[001]: HTTP request header:
06-03-2022 17:04:16: >   GET /eSCL/ScannerCapabilities HTTP/1.1
06-03-2022 17:04:16: >   Host: localhost:60000
06-03-2022 17:04:16: >   User-Agent: ipp-usb
06-03-2022 17:04:16: >
06-03-2022 17:04:16:   USB[1]: connection allocated, 1 in use: --- a--
06-03-2022 17:04:16:   HTTP[001]: connection 1 allocated
06-03-2022 17:04:16: > USB[1]: write: wanted 86 sent 86 total 86
06-03-2022 17:04:16: < USB[1]: read: wanted 4096 got 0 total 0
06-03-2022 17:04:16: ! USB[1]: zero-size read
06-03-2022 17:04:17: < USB[1]: read: wanted 4096 got 297 total 297
06-03-2022 17:04:17: < HTTP[001]: GET http://localhost:60000/eSCL/ScannerCapabilities - 200 OK
06-03-2022 17:04:17: < HTTP[001]: HTTP response header:
06-03-2022 17:04:17: <   HTTP/1.1 200 OK
06-03-2022 17:04:17: <   Cache-Control: must-revalidate, max-age=0
06-03-2022 17:04:17: <   Content-Length: 3646
06-03-2022 17:04:17: <   Content-Type: text/xml
06-03-2022 17:04:17: <   Pragma: no-cache
06-03-2022 17:04:17: <   Server: HP HTTP Server; HP Photosmart 6520 series - CX017B; Serial Number: XXXXXXXXXXXXXP; Poker_mp2 Built:Mon Oct 27, 2014 08:20:08AM {PKM2CN1444AR, ASIC id 0x003a0008}
06-03-2022 17:04:17: <
06-03-2022 17:04:17: < USB[1]: read: wanted 4096 got 2048 total 2345
06-03-2022 17:04:17: < USB[1]: read: wanted 4096 got 1598 total 3943
06-03-2022 17:04:17: < HTTP[001]: response body: got 3646 bytes; EOF
06-03-2022 17:04:17:   USB[1]: connection released, 0 in use: --- ---
06-03-2022 17:04:17: < ESCL Scanner Capabilities:
06-03-2022 17:04:17: < <?xml version="1.0" encoding="UTF-8"?>
06-03-2022 17:04:17: < <!---->
06-03-2022 17:04:17: < <scan:ScannerCapabilities xmlns:scan="http://schemas.hp.com/imaging/escl/2011/05/03" xmlns:pwg="http://www.pwg.org/schemas/2010/12/sm" xmlns:dest="http://schemas.hp.com/imaging/destination/2011/06/06" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.hp.com/imaging/escl/2011/05/03 ../../schemas/eSCL-1_90.xsd">
06-03-2022 17:04:17: <  <pwg:Version>2.0</pwg:Version>
06-03-2022 17:04:17: <  <pwg:MakeAndModel>pst_p04b</pwg:MakeAndModel>
06-03-2022 17:04:17: <  <pwg:SerialNumber>9</pwg:SerialNumber>
06-03-2022 17:04:17: <  <scan:Platen>
06-03-2022 17:04:17: <          <scan:PlatenInputCaps>
06-03-2022 17:04:17: <                  <scan:MinWidth>8</scan:MinWidth>
06-03-2022 17:04:17: <                  <scan:MaxWidth>2550</scan:MaxWidth>
06-03-2022 17:04:17: <                  <scan:MinHeight>8</scan:MinHeight>
06-03-2022 17:04:17: <                  <scan:MaxHeight>3508</scan:MaxHeight>
06-03-2022 17:04:17: <                  <scan:MaxScanRegions>1</scan:MaxScanRegions>
06-03-2022 17:04:17: <                  <scan:SettingProfiles>
06-03-2022 17:04:17: <                          <scan:SettingProfile>
06-03-2022 17:04:17: <                                  <scan:ColorModes>
06-03-2022 17:04:17: <                                          <scan:ColorMode>Grayscale8</scan:ColorMode>
06-03-2022 17:04:17: <                                          <scan:ColorMode>RGB24</scan:ColorMode>
06-03-2022 17:04:17: <                                  </scan:ColorModes>
06-03-2022 17:04:17: <                                  <scan:DocumentFormats>
06-03-2022 17:04:17: <                                          <pwg:DocumentFormat>application/octet-stream</pwg:DocumentFormat>
06-03-2022 17:04:17: <                                          <pwg:DocumentFormat>image/jpeg</pwg:DocumentFormat>
06-03-2022 17:04:17: <                                          <pwg:DocumentFormat>application/pdf</pwg:DocumentFormat>
06-03-2022 17:04:17: <                                  </scan:DocumentFormats>
06-03-2022 17:04:17: <                                  <scan:SupportedResolutions>
06-03-2022 17:04:17: <                                          <scan:DiscreteResolutions>
06-03-2022 17:04:17: <                                                  <scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                          <scan:XResolution>75</scan:XResolution>
06-03-2022 17:04:17: <                                                          <scan:YResolution>75</scan:YResolution>
06-03-2022 17:04:17: <                                                  </scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                  <scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                          <scan:XResolution>100</scan:XResolution>
06-03-2022 17:04:17: <                                                          <scan:YResolution>100</scan:YResolution>
06-03-2022 17:04:17: <                                                  </scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                  <scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                          <scan:XResolution>200</scan:XResolution>
06-03-2022 17:04:17: <                                                          <scan:YResolution>200</scan:YResolution>
06-03-2022 17:04:17: <                                                  </scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                  <scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                          <scan:XResolution>300</scan:XResolution>
06-03-2022 17:04:17: <                                                          <scan:YResolution>300</scan:YResolution>
06-03-2022 17:04:17: <                                                  </scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                  <scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                          <scan:XResolution>600</scan:XResolution>
06-03-2022 17:04:17: <                                                          <scan:YResolution>600</scan:YResolution>
06-03-2022 17:04:17: <                                                  </scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                  <scan:DiscreteResolution>
06-03-2022 17:04:17: <                                                          <scan:XResolution>1200</scan:XResolution>
06-03-2022 17:04:17: <                                                          <scan:YResolution>1200</scan:YResolution>
06-03-2022 17:04:17: <                                                  </scan:DiscreteResolution>
06-03-2022 17:04:17: <                                          </scan:DiscreteResolutions>
06-03-2022 17:04:17: <                                  </scan:SupportedResolutions>
06-03-2022 17:04:17: <                                  <scan:ColorSpaces>
06-03-2022 17:04:17: <                                          <scan:ColorSpace>YCC</scan:ColorSpace>
06-03-2022 17:04:17: <                                          <scan:ColorSpace>RGB</scan:ColorSpace>
06-03-2022 17:04:17: <                                          <scan:ColorSpace>sRGB</scan:ColorSpace>
06-03-2022 17:04:17: <                                  </scan:ColorSpaces>
06-03-2022 17:04:17: <                                  <scan:CcdChannels>
06-03-2022 17:04:17: <                                          <scan:CcdChannel>GrayCcdEmulated</scan:CcdChannel>
06-03-2022 17:04:17: <                                  </scan:CcdChannels>
06-03-2022 17:04:17: <                          </scan:SettingProfile>
06-03-2022 17:04:17: <                  </scan:SettingProfiles>
06-03-2022 17:04:17: <                  <scan:SupportedIntents>
06-03-2022 17:04:17: <                          <scan:Intent>Document</scan:Intent>
06-03-2022 17:04:17: <                          <scan:Intent>Photo</scan:Intent>
06-03-2022 17:04:17: <                          <scan:Intent>Preview</scan:Intent>
06-03-2022 17:04:17: <                          <scan:Intent>TextAndGraphic</scan:Intent>
06-03-2022 17:04:17: <                  </scan:SupportedIntents>
06-03-2022 17:04:17: <                  <scan:MaxOpticalXResolution>1200</scan:MaxOpticalXResolution>
06-03-2022 17:04:17: <                  <scan:MaxOpticalYResolution>1200</scan:MaxOpticalYResolution>
06-03-2022 17:04:17: <                  <scan:RiskyLeftMargin>34</scan:RiskyLeftMargin>
06-03-2022 17:04:17: <                  <scan:RiskyRightMargin>33</scan:RiskyRightMargin>
06-03-2022 17:04:17: <                  <scan:RiskyTopMargin>34</scan:RiskyTopMargin>
06-03-2022 17:04:17: <                  <scan:RiskyBottomMargin>46</scan:RiskyBottomMargin>
06-03-2022 17:04:17: <          </scan:PlatenInputCaps>
06-03-2022 17:04:17: <  </scan:Platen>
06-03-2022 17:04:17: <  <scan:BrightnessSupport>
06-03-2022 17:04:17: <          <scan:Min>0</scan:Min>
06-03-2022 17:04:17: <          <scan:Max>2000</scan:Max>
06-03-2022 17:04:17: <          <scan:Step>1</scan:Step>
06-03-2022 17:04:17: <  </scan:BrightnessSupport>
06-03-2022 17:04:17: <  <scan:ContrastSupport>
06-03-2022 17:04:17: <          <scan:Min>0</scan:Min>
06-03-2022 17:04:17: <          <scan:Max>2000</scan:Max>
06-03-2022 17:04:17: <          <scan:Step>1</scan:Step>
06-03-2022 17:04:17: <  </scan:ContrastSupport>
06-03-2022 17:04:17: < </scan:ScannerCapabilities>
06-03-2022 17:04:17:
06-03-2022 17:04:17: > Photosmart 6520 series [FB5CBD]: _printer._tcp TXT record:
06-03-2022 17:04:17: > Photosmart 6520 series [FB5CBD]: _ipp._tcp TXT record:
06-03-2022 17:04:17:     air=none
06-03-2022 17:04:17:     rp=ipp/print
06-03-2022 17:04:17:     priority=50
06-03-2022 17:04:17:     PaperMax=legal-A4
06-03-2022 17:04:17:     URF=CP1,MT1-2-8-9-10-11,OB9,OFU0,PQ3-4-5,RS300-600,SRGB24,W8-16,DEVW8-16,DEVRGB24-48,ADOBERGB24-48,DM3,IS1-7,V1.2
06-03-2022 17:04:17:     UUID=1c852a4d-b800-1f08-abcd-843497fb5cbd
06-03-2022 17:04:17:     Color=T
06-03-2022 17:04:17:     Duplex=T
06-03-2022 17:04:17:     note=
06-03-2022 17:04:17:     qtotal=1
06-03-2022 17:04:17:     usb_MDL=Photosmart 6520 series
06-03-2022 17:04:17:     usb_MFG=HP
06-03-2022 17:04:17:     usb_CMD=PCL3GUI,PCL3,PJL,JPEG,XHTMLPrint,PCLM,AirPrint,DW-PCL,802.11,DESKJET,DYN
06-03-2022 17:04:17:     ty=HP Photosmart 6520 series
06-03-2022 17:04:17:     product=(HP Photosmart 6520 series)
06-03-2022 17:04:17:     pdl=application/vnd.hp-PCL,image/jpeg,application/xhtml+xml,application/PCLm,image/urf,application/octet-stream
06-03-2022 17:04:17:     txtvers=1
06-03-2022 17:04:17:     adminurl=http://localhost/#hId-pgAirPrint
06-03-2022 17:04:17:     Fax=F
06-03-2022 17:04:17:     Scan=T
06-03-2022 17:04:17: > Photosmart 6520 series [FB5CBD]: _uscan._tcp TXT record:
06-03-2022 17:04:17:     duplex=F
06-03-2022 17:04:17:     is=platen
06-03-2022 17:04:17:     cs=color,grayscale
06-03-2022 17:04:17:     UUID=1c852a4d-b800-1f08-abcd-843497fb5cbd
06-03-2022 17:04:17:     adminurl=http://localhost/#hId-pgAirPrint
06-03-2022 17:04:17:     representation=http://localhost/webApps/images/printer-small.png
06-03-2022 17:04:17:     pdl=application/octet-stream,application/pdf,image/jpeg
06-03-2022 17:04:17:     ty=Photosmart 6520 series
06-03-2022 17:04:17:     rs=eSCL
06-03-2022 17:04:17:     vers=2.0
06-03-2022 17:04:17:     txtvers=1
06-03-2022 17:04:17: > Photosmart 6520 series [FB5CBD]: _http._tcp TXT record:
06-03-2022 17:04:17: > Photosmart 6520 series [FB5CBD]: _ipp-usb._tcp TXT record:
06-03-2022 17:04:17:   DNS-SD: Photosmart 6520 series [FB5CBD] (USB): trying
06-03-2022 17:04:17:   DNS-SD: FQDN: "redacted-2.local"
06-03-2022 17:04:17:   DNS-SD: FQDN: "redacted-2.local"->"localhost"
06-03-2022 17:04:17:   DNS-SD: +subtype: "_universal._sub._ipp._tcp"
06-03-2022 17:04:17: + DNS-SD: Photosmart 6520 series [FB5CBD] (USB): publishing requested
06-03-2022 17:04:17:   DNS-SD: Photosmart 6520 series [FB5CBD] (USB): AVAHI_ENTRY_GROUP_REGISTERING
06-03-2022 17:04:18:   DNS-SD: Photosmart 6520 series [FB5CBD] (USB): AVAHI_ENTRY_GROUP_ESTABLISHED
06-03-2022 17:04:18:   DNS-SD: Photosmart 6520 series [FB5CBD] (USB): published

It no longer reset the usb connection, So providing a way to disable fax seems sufficient for this device

alexpevzner commented 2 years ago

Hi!

I would accept this patch with the following changes:

  1. Disabled capabilities will be listed by name (say, print, scan, fax, web), not by their numerical values
  2. All prohibitions must be actually honored. I.e., if you disable printing, printing capability should actually be removed from the DNS-SD announce
  3. New syntax must be documented in the ipp-usb.8 (please, update ipp-usb.8.md and recompile; don't update generated ipp-usb.8 directly. It should be noted, that disabling some particular capability only affects DNS-SD advertising and probing for the device parameters associated with the disabled capabilities, as ipp-usb doesn't somehow filter traffic that goes through it
  4. Rules for your device will be added to the ipp-usb-quirks/HP.conf

Note, full implementing of 1 and 2 items may be quite noticeable amount of work, so may be it makes sense for now only to add a parameter to disable fax (say disable-fax = true | false)

Note also that HP Photosmart 6520 series doesn't implement true faxing, but instead implements internet-based eFax, which makes no sense when connected via USB so can be safely disabled for this kind of devices.

izissise commented 2 years ago

Hello, thanks for the response, indeed a disable-fax option is more than enough for my needs.

I created a new PR which I hope follow your given guidelines: https://github.com/OpenPrinting/ipp-usb/pull/46