[Bug 213927] New: gnome-cups-add shows no drivers
https://bugzilla.novell.com/show_bug.cgi?id=213927 Summary: gnome-cups-add shows no drivers Product: openSUSE 10.2 Version: Alpha 5 plus Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: GNOME AssignedTo: bnc-team-gnome@forge.provo.novell.com ReportedBy: danw@ximian.com QAContact: qa@suse.de gnome-cups-add is broken in 10.2; the pop-up list of drivers is empty -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 danw@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|Normal |Major ------- Comment #1 from danw@novell.com 2006-11-07 08:11 MST ------- seems to be due to changes in cups or something. init_ppds in gnome-cups-manager/libgnomecups/gnome-cups-ui-driver.c gets back a list from cupsd, but it only contains "ppd-name" attributes, with no "ppd-make" or "ppd-make-and-model" attrs, so none of the returned ppds actually get added to the list. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 jpr@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|bnc-team- |fejj@novell.com |gnome@forge.provo.novell.com| -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 fejj@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Component|GNOME |Printing ------- Comment #2 from fejj@novell.com 2006-11-09 10:34 MST ------- that's not enough info from cups, so reassigning to cups -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 fejj@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|fejj@novell.com |jsmeix@novell.com QAContact|qa@suse.de |jsmeix@novell.com -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 jsmeix@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO Info Provider| |danw@novell.com ------- Comment #3 from jsmeix@novell.com 2006-11-10 01:39 MST ------- 1. To test what about the PPDs is known to the cupsd use root@host# lpinfo -l -m Attach the output of this command as mime type text/plain to this bug. 2. Verify that Gnome does not use non-public CUPS API calls. There have been API changes from CUPS 1.1.x to 1.2 regarding non-public CUPS library functions. See http://www.cups.org for details Here from a mail from the CUPS main author: ------------------------------------------------------------------------------ From: Michael Sweet <mike@easysw.com> To: <cups-dev@easysw.com> Subject: Re: [cups.development] needs to provide backward compatibility API thenbump up soname?
After my investigation, I think r4683 and r4741 changes of CUPS 1.2 make libcups API incompatible with older libcups.
For example the change from cups_strlcpy to _cups_strlcpy breaks the combination of cupsd 1.1 and libcupsys 1.2.
We work very hard to not break binary compatibility with *public* APIs. Since those emulation functions are a) not public APIs and b) not available on all systems (i.e. they only show up if your platform doesn't provide the named functions), they aren't considered for the library version number. Non-CUPS programs using these functions should expect to fail at random times depending on the version of CUPS that is installed...
Although such mixture is rare case, I think it's better to bump up the soname version if you remove an exported function or change its argument against the libraries.
Doing so will cause unnecessary breakage of all existing applications. The CUPS CMP (now called the CUPS Developer Guide) has always documented the rules for naming of public APIs, and we have NEVER documented private APIs to avoid their use. ------------------------------------------------------------------------------ -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 jsmeix@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |thansen@novell.com ------- Comment #4 from jsmeix@novell.com 2006-11-10 01:42 MST ------- *** Bug 215474 has been marked as a duplicate of this bug. *** -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 kssingvo@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|kssingvo@novell.com |bnc-team-gnome@forge.provo.novell.com Status|NEEDINFO |NEW Info Provider|danw@novell.com | ------- Comment #5 from kssingvo@novell.com 2006-11-10 06:16 MST ------- Don't know what I should do with this bug? cupsd is working fine: no such problems if looking into the internal webinterface, nor in cups own command line tools seen. If gnome-*-printer-* has problems after the switch from cups-1.1.x to cups-1.2.x then the tools need to be adapted by the gnome maintainers, not by me. I don't think, it's my job to work on those tools either. If you have _specific_ questions, e.g. if/how arguments in a cups-lib function is changed, feel free to ask. But don't expect that I work now on the gnome-printer tools. I'm overwhelmed with other work. --> reassign back to gnome-bnc-team BTW: we switched to cups-1.2.1 in June (in alpha2 phase), with several announcements on the mailing lists, e.g. to check your code. I wonder why gnome stumbles now in late beta phase over this? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 jpr@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|bnc-team- |fejj@novell.com |gnome@forge.provo.novell.com| ------- Comment #6 from jpr@novell.com 2006-11-10 07:14 MST ------- Jeff, see comment #3. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 jsmeix@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fred.blaise@gmail.com ------- Comment #7 from jsmeix@novell.com 2006-11-10 07:20 MST ------- *** Bug 219796 has been marked as a duplicate of this bug. *** -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #8 from fejj@novell.com 2006-11-10 08:57 MST ------- we're not using any internal APIs -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #9 from kssingvo@novell.com 2006-11-13 01:11 MST ------- Jeff, we switched to cups-1.2.x a long time ago. It's time to adapt your package now, please... -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #10 from fejj@novell.com 2006-11-15 12:54 MST ------- looks like none of the menu's get filled in: Manufacturer, Model, nor Driver (well, to be fair the last 2 might not have any items because the first one is null) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #11 from fejj@novell.com 2006-11-15 14:41 MST ------- afaict, this has to be a cups bug... we are simply doing a CUPS_GET_PPDS request with requested-attributes of: "ppd-name", "ppd-make", and "ppd-make-and-model" and cups is returning: attr->name = attributes-charset; value = utf-8 attr->name = attributes-natural-language; value = en-US and nothing else. here's how we are creating our query: static const char **attrs = { "ppd-name", "ppd-make", "ppd-make-and-model" }; cups_lang_t *language; ipp_t *request; language = cupsLangDefault (); request = ippNew (); request->request.op.operation_id = CUPS_GET_PPDS; request->request.op.request_id = 1; ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_CHARSET, "attributes-charset", NULL, "utf-8"); ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_LANGUAGE, "attributes-natural-language", NULL, language->language); cupsLangFree (language); ippAddStrings(request, IPP_TAG_PRINTER, IPP_TAG_KEYWORD | IPP_TAG_COPY, "requested-attributes", 3, NULL, attrs); there's no usage anywhere of internal cups functions -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #12 from fejj@novell.com 2006-11-15 14:49 MST ------- yast2 also gives me an error about it not seeing any drivers but I have the drivers installed. Trying to configure a printer in yast2 yields the following error: Printer drivers are not installed. Install packages cups-drivers-stp, filters, manufacturer-PPDs? rpm shows: rpm -qa | grep cups cups-client-1.2.6-2 cups-backends-1.0-32 cups-drivers-1.2.4-11 cups-devel-1.2.6-2 cups-1.2.6-2 cups-libs-1.2.6-2 so I have them installed. If I click "Continue" in yast2 in the error dialog, it fails installing any packages. so it would appear to me that this is not isolated to gnome-* -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 andreas.hanke@gmx-topmail.de changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |andreas.hanke@gmx-topmail.de ------- Comment #13 from andreas.hanke@gmx-topmail.de 2006-11-15 16:07 MST ------- Comment 12 is a duplicate of bug 220278 and probably unrelated to the gnome-* problem. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #14 from jsmeix@novell.com 2006-11-16 00:46 MST ------- Please see my comment #3: --------------------------------------------------------------------- To test what about the PPDs is known to the cupsd use root@host# lpinfo -l -m --------------------------------------------------------------------- Exactly the models which are shown by "lpinfo -l -m" are known to the cupsd and exactly those models must be shown by any other config tool. If nothing is shown by "lpinfo -l -m" it is no Gnome problem. If something is shown by "lpinfo -l -m" but nothing is shown in Gnome, it is very very likely a Gnome problem. Have a look at the lpinfo sources (systemv/lpinfo.c in the CUPS sources) how CUPS does it and check if Gnome does it the same way. (Note that the "_cups*" functions are non-public CUPS API calls so that Gnome should replace them.) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #15 from kssingvo@novell.com 2006-11-16 03:01 MST ------- I think the problem is, that we don't include any PPDs encoded in "utf-8" in our system so far. You might either look through the PPDs themself (/usr/share/cups/model/) or use, as Johannes already suggest, "lpinfo -l -m" to see that this is true. If you don't send this charset restriction to the server, you might get more avail PPDs returning. I doubt that this is an error in the cups library. I think its working as intended. If you disagree or notice that my hint doesn't help (I didn't check it), please tell me, and I will dig deeper into the library. Thanks. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 jpr@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jharmon@novell.com ------- Comment #16 from jpr@novell.com 2006-11-16 06:45 MST ------- *** Bug 221286 has been marked as a duplicate of this bug. *** -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 jpr@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|Major |Critical -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #17 from fejj@novell.com 2006-11-16 09:58 MST ------- thanks Klaus, that was useful info... `lpinfo -l -m` does indeed return a list of drivers, so I'll dig back into the gnome stuff and try your suggestion about not requesting utf-8 to see if that solves this. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #18 from fejj@novell.com 2006-11-16 11:44 MST ------- ok, my original debug printf's were missing some attributes (doh!) - I get the following ipp_attribute_t's: attr->name = attributes-charset; value = utf-8 attr->name = attributes-natural-language; value = en-US attr->name = ppd-name; value = Alps/MD-1000-md2k.ppd.gz attr->name = NULL .. attr->name = ppd-name; value = Xerox/DocuPrint_XJ8C-lxm5700m.ppd.gz attr->name = NULL attr->name = ppd-name; value = Xerox/WorkCentre_450cp-cdj550.ppd.gz attr->name = NULL attr->name = ppd-name; value = Xerox/WorkCentre_470cx-lxm5700m.ppd.gz attr->name = NULL attr->name = ppd-name; value = Xerox/WorkCentre_XK35c-lex5700.ppd.gz attr->name = NULL attr->name = ppd-name; value = zebraep1.ppd.gz attr->name = NULL attr->name = ppd-name; value = zebraep2.ppd.gz attr->name = NULL attr->name = ppd-name; value = zebra.ppd.gz so it *was* returning ppd-name attributes, but not the other requested attributes I tried commenting out: ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_CHARSET, "attributes-charset", NULL, "utf-8"); but then I got back: attr->name = attributes-charset; value = utf-8 attr->name = attributes-natural-language; value = en attr->name = status-message; value = Missing required attributes! so that didn't work. I then uncommented it back again and tried using "us-ascii" instead of "utf-8", but got the same results as with "utf-8" then I tried changing the charset param of: ippAddStrings(request, IPP_TAG_PRINTER, IPP_TAG_KEYWORD | IPP_TAG_COPY, "requested-attributes", 3, NULL, attrs); to "utf-8" and "us-ascii" and still no changes I have no idea how to proceed. I've run out of ideas... maybe the drivers just don't have the attributes I'm requesting? If that's the case, then I think they need to be fixed to have that info because without it, we can't provide the user anything useful in the UI. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #19 from fejj@novell.com 2006-11-17 16:04 MST ------- I tried changing IPP_TAG_PRINTER to IPP_TAG_OPERATION, that didn't seem to change anything. then I acted on a hunch noticing the other parameters were all "attributes-*" ("attributes-charset", "attributes-natural-language") and so changed it to "attributes-requested" and TADA! Suddenly gnome-cups-add was able to populate the driver page! except the reason it works is NOT because "attributes-requested" is the correct string, but rather because if there's no "requested-attributes" part of the query, then cups assumes requested-attributes=all (which is how lpinfo -l -m works at all, I'm presuming) Also discovered that if I change the order of the requested-attributes string array, then it changes the response from cups - e.g. cups only replies with the first requested attribute. So... CUPS bug? :) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 ------- Comment #20 from fejj@novell.com 2006-11-17 16:47 MST ------- Created an attachment (id=106137) --> (https://bugzilla.novell.com/attachment.cgi?id=106137&action=view) ppdinfo.c simple test program indicating the problem... for some reason, CUPS only replies with the first requested-attribute (feel free to change the requested-attributes to see the effect) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=213927 fejj@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED ------- Comment #21 from fejj@novell.com 2006-11-20 09:54 MST ------- jpr noticed that if we changed IPP_TAG_KEYWORD to IPP_TAG_NAME that it works fixed in abuild and gnome cvs -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
participants (1)
-
bugzilla_noreply@novell.com