James Carlson wrote: > Artem Kachitchkine writes: > >> In order to better support these devices, this case seeks to extend the >> current HAL offering by adding a network attached device discovery >> service addon module and a probe module to probe network attached >> printers for identifying data. These modules will be connected to HAL >> via .fdi files. >> > > Just to clarify: we're only discovering printers on the network. If > we have a printer (attached via some other method, such as USB), we > won't be advertising that device to others, right? > That is correct. > >> Since virtually all network attached printers (or attachment devices) >> seem to support SNMP v1, the initial implementation will support an >> SNMP_GET broadcast mechanism for device discovery. The SNMP discovery >> method will use the following SMF service instance/properties, and >> D-BUS methods/arguments >> > > I didn't see a reference here to RFC 1759 or 3805. Will this project > use any of the standardized Printer MIB interfaces, or does it only > support the enumerated vendor MIB entries and Host Resources? > The Printer-MIB prtInputVendorName, prtInputModel, prtInputSerialNumber, and prtInputDescription didn't appear to be in use in the printers that I tried so I took them out. I can add them back in as a fallback. That will add
SNMPv2-SMI::mib-2.43.8.2.1.14 Committed Printer MIB Manufacturer SNMPv2-SMI::mib-2.43.8.2.1.15 Committed Printer MIB Model SNMPv2-SMI::mib-2.43.8.2.1.17 Committed Printer MIB Serial Number SNMPv2-SMI::mib-2.43.8.2.1.18 Committed Printer MIB Description To the Imported interfaces. > What about Avahi? > Most of the printers that I have come across don't support mDNS. A couple of the newer ones that I have tested with do. I am looking at incorporating it as a discovery method. mDNS support should introduce a relatively small incremental change to this case to import the necessary interfaces and introduce an interface to control the discovery method. >> svc:/network/device-discovery:snmp org.freedesktop.Hal.Device. >> > > Enabled or disabled by default? And under what system profile? > Disabled by default. > >> interval specifies the number of seconds to wait between active SNMP >> scans. community specifies the SNMP community string to use in >> SNMP_GET requests. network specifies the network broadcast address to >> use in the SNMP_GET request. >> > > What's the default for config/network? > > Why does that need to be specified anyway? You should be able to use > SIOCGIF* ioctls to get every bit of information needed to perform > broadcast-based queries. > The default is currently all 1s, but could be auto-detected. The reason I put in config/network was to allow for the possibility of limiting the scope. > >> libnetsnmp Stable Core SNMP library >> > > Nit: should be Committed. > > >> PSARC/2006/467 Printers Devfs Events >> > > How is this related to devfs? (Is it just because of the reference to > USB printers, or is there something deeper here?) > It's not related to devfs. This is only because of the reference to USB printer support.
