code:
diff -up hplip-3.15.2/base/avahi.py.parsing hplip-3.15.2/base/avahi.py
--- hplip-3.15.2/base/avahi.py.parsing	2015-02-04 15:43:37.662551377 +0100
+++ hplip-3.15.2/base/avahi.py	2015-02-04 15:45:56.576564858 +0100
@@ -52,9 +52,14 @@ def detectNetworkDevices(ttl=4, timeout=
                              'status_code': 0, 'device2': '0', 'device3': '0', 'note': ''}
                         y['ip'] = ip
                         y['hn'] = bits[6].replace('.local', '')
-                        details = bits[9].split('" "')
+                        details = bits[9].rstrip ().strip ('"').split('" "')
                         for item in details:
                             key, value = item.split('=', 1)
+                            keyvalue = item.split('=', 1)
+                            if len (keyvalue) < 2:
+                                # Skip parts that don't match key=value
+                                continue
+                            key, value = keyvalue
                             if key == 'ty':
                                 y['mdns'] = value
                                 y['device1'] = "MFG:Hewlett-Packard;MDL:%s;CLS:PRINTER;" % value


code:
diff -up hplip-3.12.6/prnt/hpcups/HPCupsFilter.cpp.clear-old-state-reasons hplip-3.12.6/prnt/hpcups/HPCupsFilter.cpp
--- hplip-3.12.6/prnt/hpcups/HPCupsFilter.cpp.clear-old-state-reasons	2012-06-19 11:00:06.000000000 +0200
+++ hplip-3.12.6/prnt/hpcups/HPCupsFilter.cpp	2012-06-19 11:00:57.822093043 +0200
@@ -510,6 +510,13 @@ int HPCupsFilter::StartPrintJob(int  arg

     signal(SIGTERM, HPCancelJob);

+/*
+ *  Prior to the re-write of hpcups, this filter managed the
+ *  marker-supply-low-warning printer state reason.  Make sure to
+ *  clear that state reason so that upgrades work correctly.
+ */
+    fputs ("STATE: -marker-supply-low-warning\n", stderr);
+
     cups_raster = cupsRasterOpen(fd, CUPS_RASTER_READ);

     if (cups_raster == NULL) {

repo_name: ayhanyalcinsoy/main


code:
diff -up hplip-3.9.10/prnt/backend/hp.c.device-reconnected hplip-3.9.10/prnt/backend/hp.c
--- hplip-3.9.10/prnt/backend/hp.c.device-reconnected	2009-11-03 21:45:10.000000000 +0000
+++ hplip-3.9.10/prnt/backend/hp.c	2009-11-04 16:25:30.719129509 +0000
@@ -645,6 +645,7 @@ int main(int argc, char *argv[])
    HPMUD_DEVICE hd=-1;
    HPMUD_CHANNEL cd=-1;
    int n, total=0, retry=0, size, pages;
+   int consecutive_failures=0;
    enum HPMUD_RESULT stat;
    char *printer = getenv("PRINTER");

@@ -809,11 +810,24 @@ int main(int argc, char *argv[])
                {
                   exit_stat = BACKEND_STOP;  /* stop queue */
                   goto bugout;
+	       }
+
+	       if (++consecutive_failures == 5)
+	       {
+		 /* hpmud_write_channel has failed several times in
+		  * succession but the Device ID-based status says
+		  * the printer is happy.  Time to face the fact that
+		  * the device has probably reconnected, and our USB
+		  * channel is invalidated. */
+
+		 BUG("ERROR: device reconnected?");
+		 goto bugout;
                }
             }
             else
             {
                /* Data was sent to device successfully. */
+               consecutive_failures = 0;
                if (pa.pjl_device)
                {
                   /* Laserjets have a large data buffer, so manually check for operator intervention condition. */


code:
diff -up hplip-3.15.2/prnt/drv/hpcups.drv.in.deviceIDs-drv hplip-3.15.2/prnt/drv/hpcups.drv.in
--- hplip-3.15.2/prnt/drv/hpcups.drv.in.deviceIDs-drv	2015-01-29 13:21:00.000000000 +0100
+++ hplip-3.15.2/prnt/drv/hpcups.drv.in	2015-02-04 14:20:39.756550038 +0100
@@ -465,7 +465,7 @@ Manufacturer "HP"
       ModelName "HP Photosmart p1000"
       Attribute "NickName" "" "HP Photosmart p1000, hpcups $Version"
       Attribute "ShortNickName" "" "HP Photosmart p1000"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:photosmart p1000;DES:photosmart p1000;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:PHOTOSMART P1000;DES:Hewlett-Packard PhotoSmart P1000;"
       PCFileName "hp-photosmart_p1000.ppd"
       Attribute "Product" "" "(HP Photosmart p1000/1000 Printer)"
       Attribute "Product" "" "(HP Photosmart p1000xi Printer)"
@@ -474,7 +474,7 @@ Manufacturer "HP"
       ModelName "HP Photosmart p1100"
       Attribute "NickName" "" "HP Photosmart p1100, hpcups $Version"
       Attribute "ShortNickName" "" "HP Photosmart p1100"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:photosmart p1100;DES:photosmart p1100;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:PHOTOSMART P1100;DES:Hewlett-Packard PhotoSmart P1100;"
       PCFileName "hp-photosmart_p1100.ppd"
       Attribute "Product" "" "(HP Photosmart p1100 Printer)"
       Attribute "Product" "" "(HP Photosmart p1100xi Printer)"
@@ -516,7 +516,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 3820"
       Attribute "NickName" "" "HP Deskjet 3820, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 3820"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 3820;DES:deskjet 3820;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 3820;DES:Hewlett-Packard DeskJet 3820;"
       PCFileName "hp-deskjet_3820.ppd"
       Attribute "Product" "" "(HP Deskjet 3820 Color Inkjet Printer)"
       Attribute "Product" "" "(HP Deskjet 3820v Color Inkjet Printer)"
@@ -542,7 +542,7 @@ Manufacturer "HP"
       ModelName "HP Officejet v40xi"
       Attribute "NickName" "" "HP Officejet v40xi, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet v40xi"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet v40xi;DES:officejet v40xi;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet V40xi;DES:Hewlett-Packard OfficeJet V Series;"
       PCFileName "hp-officejet_v40xi.ppd"
       Attribute "Product" "" "(HP Officejet v40xi All-in-one Printer)"
     }
@@ -550,7 +550,7 @@ Manufacturer "HP"
       ModelName "HP Officejet v40"
       Attribute "NickName" "" "HP Officejet v40, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet v40"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet v40;DES:officejet v40;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet V40;DES:Hewlett-Packard OfficeJet V Series;"
       PCFileName "hp-officejet_v40.ppd"
       Attribute "Product" "" "(HP Officejet v40 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet v40s All-in-one Printer)"
@@ -579,7 +579,7 @@ Manufacturer "HP"
       ModelName "HP Officejet 5105"
       Attribute "NickName" "" "HP Officejet 5105, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet 5105"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 5105;DES:officejet 5105;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet 5105;DES:Hewlett-Packard OfficeJet 5100 Series;"
       PCFileName "hp-officejet_5105.ppd"
       Attribute "Product" "" "(HP Officejet 5105 All-in-one Printer)"
     }
@@ -587,7 +587,7 @@ Manufacturer "HP"
       ModelName "HP Officejet 5110v"
       Attribute "NickName" "" "HP Officejet 5110v, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet 5110v"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 5110v;DES:officejet 5110v;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet 5110v;DES:Hewlett-Packard OfficeJet 5100 Series;"
       PCFileName "hp-officejet_5110v.ppd"
       Attribute "Product" "" "(HP Officejet 5110v All-in-one Printer)"
     }
@@ -604,7 +604,7 @@ Manufacturer "HP"
       ModelName "HP Officejet g55"
       Attribute "NickName" "" "HP Officejet g55, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet g55"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet g55;DES:officejet g55;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet G55;DES:Hewlett-Packard OfficeJet G Series;"
       PCFileName "hp-officejet_g55.ppd"
       Attribute "Product" "" "(HP Officejet g55 All-in-one Printer)"
     }
@@ -644,7 +644,7 @@ Manufacturer "HP"
       ModelName "HP PSC 750xi"
       Attribute "NickName" "" "HP PSC 750xi, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 750xi"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 750xi;DES:psc 750xi;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 750xi;DES:Hewlett-Packard PSC 700 Series;"
       PCFileName "hp-psc_750xi.ppd"
       Attribute "Product" "" "(HP PSC 750xi All-in-one Printer)"
     }
@@ -652,7 +652,7 @@ Manufacturer "HP"
       ModelName "HP PSC 750"
       Attribute "NickName" "" "HP PSC 750, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 750"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 750;DES:psc 750;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 750;DES:Hewlett-Packard PSC 700 Series;"
       PCFileName "hp-psc_750.ppd"
       Attribute "Product" "" "(HP PSC 750 All-in-one Printer)"
     }
@@ -700,7 +700,7 @@ Manufacturer "HP"
       ModelName "HP Officejet g85"
       Attribute "NickName" "" "HP Officejet g85, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet g85"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet g85;DES:officejet g85;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet G85;DES:Hewlett-Packard OfficeJet G Series;"
       PCFileName "hp-officejet_g85.ppd"
       Attribute "Product" "" "(HP Officejet g85 All-in-one Printer)"
     }
@@ -716,7 +716,7 @@ Manufacturer "HP"
       ModelName "HP PSC 900 Series"
       Attribute "NickName" "" "HP PSC 900 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 900 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 900 series;DES:psc 900 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 900 Series;DES:Hewlett-Packard PSC 900 Series;"
       PCFileName "hp-psc_900_series.ppd"
       Attribute "Product" "" "(HP PSC 900 All-in-one Printer)"
     }
@@ -732,7 +732,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 920c"
       Attribute "NickName" "" "HP Deskjet 920c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 920c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 920c;DES:deskjet 920c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 920C;DES:Hewlett-Packard DeskJet 920C;"
       PCFileName "hp-deskjet_920c.ppd"
       Attribute "Product" "" "(HP Deskjet 920c Printer)"
       Attribute "Product" "" "(HP Deskjet 920cvr Printer)"
@@ -751,7 +751,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 930c"
       Attribute "NickName" "" "HP Deskjet 930c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 930c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 930c;DES:deskjet 930c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 930C;DES:Hewlett-Packard DeskJet 930C;"
       PCFileName "hp-deskjet_930c.ppd"
       Attribute "Product" "" "(HP Deskjet 930c Printer)"
       Attribute "Product" "" "(HP Deskjet 930cm Printer)"
@@ -792,7 +792,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 940c"
       Attribute "NickName" "" "HP Deskjet 940c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 940c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 940c;DES:deskjet 940c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 940C;DES:Hewlett-Packard DeskJet 940C;"
       PCFileName "hp-deskjet_940c.ppd"
       Attribute "Product" "" "(HP Deskjet 940cvr Printer)"
       Attribute "Product" "" "(HP Deskjet 940c Printer)"
@@ -811,7 +811,7 @@ Manufacturer "HP"
       ModelName "HP Officejet g95"
       Attribute "NickName" "" "HP Officejet g95, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet g95"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet g95;DES:officejet g95;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet G95;DES:Hewlett-Packard OfficeJet G Series;"
       PCFileName "hp-officejet_g95.ppd"
       Attribute "Product" "" "(HP Officejet g95 All-in-one Printer)"
     }
@@ -843,7 +843,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 950c"
       Attribute "NickName" "" "HP Deskjet 950c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 950c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 950c;DES:deskjet 950c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 950C;DES:Hewlett-Packard DeskJet 950C;"
       PCFileName "hp-deskjet_950c.ppd"
       Attribute "Product" "" "(HP Deskjet 950c Printer)"
     }
@@ -876,7 +876,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 959c"
       Attribute "NickName" "" "HP Deskjet 959c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 959c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 959c;DES:deskjet 959c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 950C;DES:Hewlett-Packard DeskJet 950C;"
       PCFileName "hp-deskjet_959c.ppd"
       Attribute "Product" "" "(HP Deskjet 959c Printer)"
     }
@@ -884,7 +884,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 970c"
       Attribute "NickName" "" "HP Deskjet 970c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 970c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 970c;DES:deskjet 970c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 970C;DES:Hewlett-Packard DeskJet 970C;"
       PCFileName "hp-deskjet_970c.ppd"
       Attribute "Product" "" "(HP Deskjet 970cxi Printer)"
       Attribute "Product" "" "(HP Deskjet 970cse Printer)"
@@ -938,7 +938,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 1220c"
       Attribute "NickName" "" "HP Deskjet 1220c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 1220c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 1220c;DES:deskjet 1220c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 1220C;DES:Hewlett-Packard DeskJet 1220;"
       PCFileName "hp-deskjet_1220c.ppd"
       Attribute "Product" "" "(HP Deskjet 1220c Printer)"
       Attribute "Product" "" "(HP Deskjet 1220cse Printer)"
@@ -1134,7 +1134,7 @@ Manufacturer "HP"
       ModelName "HP 2000c"
       Attribute "NickName" "" "HP 2000c, hpcups $Version"
       Attribute "ShortNickName" "" "HP 2000c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:hp 2000c;DES:hp 2000c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:HP 2000C;DES:hp 2000c;"
       PCFileName "hp-2000c.ppd"
       Attribute "Product" "" "(HP 2000cse Printer)"
       Attribute "Product" "" "(HP 2000c Printer)"
@@ -1609,7 +1609,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 960c"
       Attribute "NickName" "" "HP Deskjet 960c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 960c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 960c;DES:deskjet 960c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 960C;DES:Hewlett-Packard DeskJet 960C;"
       PCFileName "hp-deskjet_960c.ppd"
       Attribute "Product" "" "(HP Deskjet 960cse Printer)"
       Attribute "Product" "" "(HP Deskjet 960cxi Printer)"
@@ -1619,7 +1619,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 980c"
       Attribute "NickName" "" "HP Deskjet 980c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 980c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 980c;DES:deskjet 980c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 980C;DES:Hewlett-Packard DeskJet 980C;"
       PCFileName "hp-deskjet_980c.ppd"
       Attribute "Product" "" "(HP Deskjet 980cxi Printer)"
       Attribute "Product" "" "(HP Deskjet 980c Printer)"
@@ -1628,7 +1628,7 @@ Manufacturer "HP"
       ModelName "HP Deskjet 990c"
       Attribute "NickName" "" "HP Deskjet 990c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 990c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 990c;DES:deskjet 990c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 990C;DES:Hewlett-Packard DeskJet 990C;"
       PCFileName "hp-deskjet_990c.ppd"
       Attribute "Product" "" "(HP Deskjet 990cxi Printer)"
       Attribute "Product" "" "(HP Deskjet 990cse Printer)"
@@ -1658,7 +1658,7 @@ Manufacturer "HP"
       ModelName "HP Color Inkjet cp1700"
       Attribute "NickName" "" "HP Color Inkjet cp1700, hpcups $Version"
       Attribute "ShortNickName" "" "HP Color Inkjet cp1700"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:hp color inkjet cp1700;DES:hp color inkjet cp1700;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:HP Color Inkjet CP1700;DES:HP Color Inkjet CP1700;"
       PCFileName "hp-color_inkjet_cp1700.ppd"
       Attribute "Product" "" "(HP Color Inkjet cp1700 Printer)"
     }
@@ -1666,7 +1666,7 @@ Manufacturer "HP"
       ModelName "HP Officejet 7100 Series"
       Attribute "NickName" "" "HP Officejet 7100 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet 7100 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 7100 series;DES:officejet 7100 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:officejet 7100 series;DES:officejet 7100 series;"
       PCFileName "hp-officejet_7100_series.ppd"
       Attribute "Product" "" "(HP Officejet 7100 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet 7110 All-in-one Printer)"
@@ -1681,7 +1681,7 @@ Manufacturer "HP"
       ModelName "HP Officejet D Series"
       Attribute "NickName" "" "HP Officejet D Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet D Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet d series;DES:officejet d series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:officejet d series;DES:officejet d series;"
       PCFileName "hp-officejet_d_series.ppd"
       Attribute "Product" "" "(HP Officejet d125xi All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet d135 All-in-one Printer)"
@@ -1728,7 +1728,7 @@ Manufacturer "HP"
       ModelName "HP PSC 2100 Series"
       Attribute "NickName" "" "HP PSC 2100 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 2100 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 2100 series;DES:psc 2100 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 2100 Series;DES:psc 2100 series;"
       PCFileName "hp-psc_2100_series.ppd"
       Attribute "Product" "" "(HP PSC 2105 All-in-one Printer)"
       Attribute "Product" "" "(HP PSC 2108 All-in-one Printer)"
@@ -1741,7 +1741,7 @@ Manufacturer "HP"
       ModelName "HP PSC 2150 Series"
       Attribute "NickName" "" "HP PSC 2150 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 2150 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 2150 series;DES:psc 2150 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 2150 Series;DES:psc 2150 series;"
       PCFileName "hp-psc_2150_series.ppd"
       Attribute "Product" "" "(HP PSC 2150 All-in-one Printer)"
     }
@@ -1749,7 +1749,7 @@ Manufacturer "HP"
       ModelName "HP PSC 2170 Series"
       Attribute "NickName" "" "HP PSC 2170 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 2170 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 2170 series;DES:psc 2170 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 2170 Series;DES:psc 2170 series;"
       PCFileName "hp-psc_2170_series.ppd"
       Attribute "Product" "" "(HP PSC 2170 All-in-one Printer)"
       Attribute "Product" "" "(HP PSC 2171 All-in-one Printer)"
@@ -1977,7 +1977,7 @@ Manufacturer "HP"
       ModelName "HP Business Inkjet 2200"
       Attribute "NickName" "" "HP Business Inkjet 2200, hpcups $Version"
       Attribute "ShortNickName" "" "HP Business Inkjet 2200"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:hp business inkjet 2200;DES:hp business inkjet 2200;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2200;DES:Hewlett-Packard Business Inkjet 2200;"
       PCFileName "hp-business_inkjet_2200.ppd"
       Attribute "Product" "" "(HP Business Inkjet 2200 Printer)"
       Attribute "Product" "" "(HP Business Inkjet 2200se Printer)"
@@ -1987,7 +1987,7 @@ Manufacturer "HP"
       ModelName "HP Business Inkjet 2230"
       Attribute "NickName" "" "HP Business Inkjet 2230, hpcups $Version"
       Attribute "ShortNickName" "" "HP Business Inkjet 2230"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:hp business inkjet 2230;DES:hp business inkjet 2230;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2230;DES:Hewlett-Packard Business Inkjet 2230;"
       PCFileName "hp-business_inkjet_2230.ppd"
       Attribute "Product" "" "(HP Business Inkjet 2230 Printer)"
     }
@@ -1995,7 +1995,7 @@ Manufacturer "HP"
       ModelName "HP Business Inkjet 2250"
       Attribute "NickName" "" "HP Business Inkjet 2250 pcl3, hpcups $Version"
       Attribute "ShortNickName" "" "HP Business Inkjet 2250"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:hp business inkjet 2250;DES:hp business inkjet 2250;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2250;DES:Hewlett-Packard Business Inkjet 2250;"
       PCFileName "hp-business_inkjet_2250-pcl3.ppd"
       Attribute "Product" "" "(HP Business Inkjet 2250 Printer)"
       Attribute "Product" "" "(HP Business Inkjet 2250tn Printer)"
@@ -2004,7 +2004,7 @@ Manufacturer "HP"
       ModelName "HP Business Inkjet 2280"
       Attribute "NickName" "" "HP Business Inkjet 2280 pcl3, hpcups $Version"
       Attribute "ShortNickName" "" "HP Business Inkjet 2280"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:hp business inkjet 2280;DES:hp business inkjet 2280;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2280;DES:Hewlett-Packard Business Inkjet 2280;"
       PCFileName "hp-business_inkjet_2280-pcl3.ppd"
       Attribute "Product" "" "(HP Business Inkjet 2280 Printer)"
       Attribute "Product" "" "(HP Business Inkjet 2280tn Printer)"
@@ -2522,7 +2522,7 @@ Manufacturer "HP"
       ModelName "HP PSC 2200 Series"
       Attribute "NickName" "" "HP PSC 2200 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 2200 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 2200 series;DES:psc 2200 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 2200 Series;DES:psc 2200 series;"
       PCFileName "hp-psc_2200_series.ppd"
       Attribute "Product" "" "(HP PSC 2200 All-in-one Printer)"
     }
@@ -2540,7 +2540,7 @@ Manufacturer "HP"
       ModelName "HP PSC 2300 Series"
       Attribute "NickName" "" "HP PSC 2300 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 2300 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 2300 series;DES:psc 2300 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 2300 Series;DES:psc 2300 series;"
       PCFileName "hp-psc_2300_series.ppd"
       Attribute "Product" "" "(HP PSC 2300 Series All-in-one Printer)"
       Attribute "Product" "" "(HP PSC 2310 All-in-one Printer)"
@@ -2549,7 +2549,7 @@ Manufacturer "HP"
       ModelName "HP PSC 2350 Series"
       Attribute "NickName" "" "HP PSC 2350 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 2350 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 2350 series;DES:psc 2350 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 2350 Series;DES:psc 2350 series;"
       PCFileName "hp-psc_2350_series.ppd"
       Attribute "Product" "" "(HP PSC 2350 All-in-one Printer)"
       Attribute "Product" "" "(HP PSC 2352 All-in-one Printer)"
@@ -2592,7 +2592,7 @@ Manufacturer "HP"
       ModelName "HP PSC 2500 Series"
       Attribute "NickName" "" "HP PSC 2500 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 2500 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 2500 series;DES:psc 2500 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:PSC 2500 Series;DES:psc 2500 series;"
       PCFileName "hp-psc_2500_series.ppd"
       Attribute "Product" "" "(HP PSC 2500 Photosmart All-in-one Printer)"
       Attribute "Product" "" "(HP PSC 2510 Photosmart All-in-one Printer)"
@@ -3040,7 +3040,7 @@ Manufacturer "HP"
       ModelName "HP Officejet j5700 Series"
       Attribute "NickName" "" "HP Officejet j5700 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet j5700 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet j5700 series;DES:officejet j5700 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:Officejet J5700 series;DES:officejet j5700 series;"
       PCFileName "hp-officejet_j5700_series.ppd"
       Attribute "Product" "" "(HP Officejet j5725 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet j5725 All-in-one Printer)"
@@ -3126,7 +3126,7 @@ Manufacturer "HP"
       ModelName "HP Officejet 6100 Series"
       Attribute "NickName" "" "HP Officejet 6100 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet 6100 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 6100 series;DES:officejet 6100 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet 6100 Series;DES:officejet 6100 series;"
       PCFileName "hp-officejet_6100_series.ppd"
       Attribute "Product" "" "(HP Officejet 6105 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet 6110xi All-in-one Printer)"
@@ -3350,7 +3350,7 @@ Manufacturer "HP"
       ModelName "HP Officejet 7200 Series"
       Attribute "NickName" "" "HP Officejet 7200 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet 7200 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 7200 series;DES:officejet 7200 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:officejet 7200 series;DES:officejet 7200 series;"
       PCFileName "hp-officejet_7200_series.ppd"
       Attribute "Product" "" "(HP Officejet 7205 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet 7208 All-in-one Printer)"
@@ -3452,7 +3452,7 @@ Manufacturer "HP"
       ModelName "HP Officejet 7400 Series"
       Attribute "NickName" "" "HP Officejet 7400 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet 7400 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 7400 series;DES:officejet 7400 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:officejet 7400 series;DES:officejet 7400 series;"
       PCFileName "hp-officejet_7400_series.ppd"
       Attribute "Product" "" "(HP Officejet 7408 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet 7410 All-in-one Printer)"
@@ -11486,7 +11486,7 @@ Manufacturer "HP"
       ModelName "HP PSC 1100 Series"
       Attribute "NickName" "" "HP PSC 1100 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 1100 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 1100 series;DES:psc 1100 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:psc 1100 series;DES:psc 1100 series;"
       PCFileName "hp-psc_1100_series.ppd"
       Attribute "Product" "" "(HP PSC 1110 All-in-one Printer)"
       Attribute "Product" "" "(HP PSC 1110v All-in-one Printer)"
@@ -11496,7 +11496,7 @@ Manufacturer "HP"
       ModelName "HP PSC 1200 Series"
       Attribute "NickName" "" "HP PSC 1200 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 1200 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 1200 series;DES:psc 1200 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:psc 1200 series;DES:psc 1200 series;"
       PCFileName "hp-psc_1200_series.ppd"
       Attribute "Product" "" "(HP PSC 1200 All-in-one Printer)"
       Attribute "Product" "" "(HP PSC 1205 All-in-one Printer)"
@@ -11688,7 +11688,7 @@ Manufacturer "HP"
       ModelName "HP Officejet 4100 Series"
       Attribute "NickName" "" "HP Officejet 4100 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet 4100 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 4100 series;DES:officejet 4100 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-packard;MDL:officejet 4100 series;DES:officejet 4100 series;"
       PCFileName "hp-officejet_4100_series.ppd"
       Attribute "Product" "" "(HP Officejet 4100 Series All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet 4110xi All-in-one Printer)"
@@ -11715,7 +11715,7 @@ Manufacturer "HP"
       ModelName "HP Officejet 4300 Series"
       Attribute "NickName" "" "HP Officejet 4300 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet 4300 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 4300 series;DES:officejet 4300 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:Officejet 4300 series;DES:officejet 4300 series;"
       PCFileName "hp-officejet_4300_series.ppd"
       Attribute "Product" "" "(HP Officejet 4308 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet 4311 All-in-one Printer)"
@@ -12026,7 +12026,7 @@ Manufacturer "HP"
       ModelName "HP Officejet j3600 Series"
       Attribute "NickName" "" "HP Officejet j3600 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet j3600 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet j3600 series;DES:officejet j3600 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:Officejet J3600 series;DES:officejet j3600 series;"
       PCFileName "hp-officejet_j3600_series.ppd"
       Attribute "Product" "" "(HP Officejet j3608 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet j3625 All-in-one Printer)"
@@ -12086,7 +12086,7 @@ Manufacturer "HP"
       ModelName "HP Officejet 4200 Series"
       Attribute "NickName" "" "HP Officejet 4200 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet 4200 Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 4200 series;DES:officejet 4200 series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:officejet 4200 series;DES:officejet 4200 series;"
       PCFileName "hp-officejet_4200_series.ppd"
       Attribute "Product" "" "(HP Officejet 4200 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet 4211 All-in-one Printer)"
@@ -12609,6 +12609,7 @@ Manufacturer "HP"
       Attribute "NickName" "" "HP Photosmart 380 Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Photosmart 380 Series"
       Attribute "1284DeviceID" "" "MFG:HP;MDL:photosmart 380 series;DES:photosmart 380 series;"
+      Attribute "1284DeviceID" "" "MFG:HP;MDL:Photosmart 380 series_BT;DES:385;"
       PCFileName "hp-photosmart_380_series.ppd"
       Attribute "Product" "" "(HP Photosmart 385 Compact Photo Printer)"
       Attribute "Product" "" "(HP Photosmart 385xi Compact Photo Printer)"
@@ -14554,7 +14557,7 @@ Group "RLT/HP Real Life Technologies"
           ModelName "HP Business Inkjet 2300"
           Attribute "NickName" "" "HP Business Inkjet 2300 pcl3, hpcups $Version"
           Attribute "ShortNickName" "" "HP Business Inkjet 2300"
-          Attribute "1284DeviceID" "" "MFG:HP;MDL:hp business inkjet 2300;DES:hp business inkjet 2300;"
+          Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2300;DES:Hewlett-Packard Business Inkjet 2300;"
           PCFileName "hp-business_inkjet_2300-pcl3.ppd"
           Attribute "Product" "" "(HP Business Inkjet 2300 Printer)"
           Attribute "Product" "" "(HP Business Inkjet 2300n Printer)"
@@ -14818,7 +14821,7 @@ Group "RLT/HP Real Life Technologies"
           ModelName "HP Officejet 9100 Series"
           Attribute "NickName" "" "HP Officejet 9100 Series pcl3, hpcups $Version"
           Attribute "ShortNickName" "" "HP Officejet 9100 Series"
-          Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 9100 series;DES:officejet 9100 series;"
+          Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:officejet 9100 series;DES:officejet 9100 series;"
           PCFileName "hp-officejet_9100_series-pcl3.ppd"
           Attribute "Product" "" "(HP Officejet 9110 All-in-one Printer)"
           Attribute "Product" "" "(HP Officejet 9120 All-in-one Printer)"
@@ -14902,7 +14905,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Business Inkjet 2800"
       Attribute "NickName" "" "HP Business Inkjet 2800 pcl3, hpcups $Version"
       Attribute "ShortNickName" "" "HP Business Inkjet 2800"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:hp business inkjet 2800;DES:hp business inkjet 2800;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2800;DES:Hewlett-Packard Business Inkjet 2800;"
       PCFileName "hp-business_inkjet_2800-pcl3.ppd"
       Attribute "Product" "" "(HP Business Inkjet 2800 Printer)"
       Attribute "Product" "" "(HP Business Inkjet 2800dt Printer)"
@@ -15445,7 +15448,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet Lx"
       Attribute "NickName" "" "HP Officejet Lx, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet Lx"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet lx;DES:officejet lx;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet;DES:officejet lx;"
       PCFileName "hp-officejet_lx.ppd"
       Attribute "Product" "" "(HP Officejet Lx All-in-one Printer)"
     }
@@ -15574,7 +15577,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet Series 300"
       Attribute "NickName" "" "HP Officejet Series 300, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet Series 300"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet series 300;DES:officejet series 300;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet Series 300;DES:Hewlett-Packard OfficeJet Series 300;"
       PCFileName "hp-officejet_series_300.ppd"
       Attribute "Product" "" "(HP Officejet 300 All-in-one Printer)"
     }
@@ -15598,7 +15601,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 400"
       Attribute "NickName" "" "HP Deskjet 400, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 400"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:hp deskjet 400;DES:hp deskjet 400;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:HP DeskJet 400;DES:HP DeskJet 400 Printer;"
       PCFileName "hp-deskjet_400.ppd"
       Attribute "Product" "" "(HP Deskjet 400 Printer)"
       Attribute "Product" "" "(HP Deskjet 400 Color Capable Printer)"
@@ -15615,7 +15618,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 540"
       Attribute "NickName" "" "HP Deskjet 540, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 540"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 540;DES:deskjet 540;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 540;DES:Hewlett-Packard DeskJet 540;"
       PCFileName "hp-deskjet_540.ppd"
       Attribute "Product" "" "(HP Deskjet 540 Printer)"
     }
@@ -15740,7 +15743,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 630c"
       Attribute "NickName" "" "HP Deskjet 630c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 630c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 630c;DES:deskjet 630c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 630C;DES:Hewlett-Packard DeskJet 630C;"
       PCFileName "hp-deskjet_630c.ppd"
       Attribute "Product" "" "(HP Deskjet 630c Printer)"
     }
@@ -15756,7 +15759,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 656c"
       Attribute "NickName" "" "HP Deskjet 656c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 656c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 656c;DES:deskjet 656c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 656C;DES:DESKJET 656C;"
       PCFileName "hp-deskjet_656c.ppd"
       Attribute "Product" "" "(HP Deskjet 656c Printer)"
       Attribute "Product" "" "(HP Deskjet 656cvr Printer)"
@@ -15869,7 +15872,7 @@ Group "RLT/HP Real Life Technologies"
         ModelName "HP Deskjet 600"
         Attribute "NickName" "" "HP Deskjet 600, hpcups $Version"
         Attribute "ShortNickName" "" "HP Deskjet 600"
-        Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 600;DES:deskjet 600;"
+        Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 600;DES:Hewlett-Packard DeskJet 600;"
         PCFileName "hp-deskjet_600.ppd"
         Attribute "Product" "" "(HP Deskjet 600c Printer)"
         Attribute "Product" "" "(HP Deskjet 600 Printer)"
@@ -15931,7 +15934,7 @@ Group "RLT/HP Real Life Technologies"
         ModelName "HP Officejet Series 600"
         Attribute "NickName" "" "HP Officejet Series 600, hpcups $Version"
         Attribute "ShortNickName" "" "HP Officejet Series 600"
-        Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet series 600;DES:officejet series 600;"
+        Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet Series 600;DES:officejet series 600;"
         PCFileName "hp-officejet_series_600.ppd"
         Attribute "Product" "" "(HP Officejet 600 All-in-one Printer)"
       }
@@ -15983,7 +15986,7 @@ Group "RLT/HP Real Life Technologies"
         ModelName "HP Deskjet 670c"
         Attribute "NickName" "" "HP Deskjet 670c, hpcups $Version"
         Attribute "ShortNickName" "" "HP Deskjet 670c"
-        Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 670c;DES:deskjet 670c;"
+        Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 670C;DES:Hewlett-Packard DeskJet 670C;"
         PCFileName "hp-deskjet_670c.ppd"
         Attribute "Product" "" "(HP Deskjet 670c)"
       }
@@ -16127,7 +16130,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 610c"
       Attribute "NickName" "" "HP Deskjet 610c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 610c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 610c;DES:deskjet 610c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 610C;DES:Hewlett-Packard DeskJet 610C;"
       PCFileName "hp-deskjet_610c.ppd"
       Attribute "Product" "" "(HP Deskjet 610c Printer)"
     }
@@ -16151,7 +16154,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 640c"
       Attribute "NickName" "" "HP Deskjet 640c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 640c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 640c;DES:deskjet 640c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 640C;DES:Hewlett-Packard DeskJet 640C;"
       PCFileName "hp-deskjet_640c.ppd"
       Attribute "Product" "" "(HP Deskjet 640c Lite Printer)"
       Attribute "Product" "" "(HP Deskjet 640c Printer)"
@@ -16171,7 +16174,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 690c"
       Attribute "NickName" "" "HP Deskjet 690c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 690c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 690c;DES:deskjet 690c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 690C;DES:Hewlett-Packard DeskJet 690C;"
       PCFileName "hp-deskjet_690c.ppd"
       Attribute "Product" "" "(HP Deskjet 690c Plus Printer)"
       Attribute "Product" "" "(HP Deskjet 690c Printer)"
@@ -16231,7 +16234,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet Series 700"
       Attribute "NickName" "" "HP Officejet Series 700, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet Series 700"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet series 700;DES:officejet series 700;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet Series 700;DES:officejet series 700;"
       PCFileName "hp-officejet_series_700.ppd"
       Attribute "Product" "" "(HP Officejet 700 All-in-one Printer)"
     }
@@ -16382,7 +16385,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 812c"
       Attribute "NickName" "" "HP Deskjet 812c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 812c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 812c;DES:deskjet 812c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 810C;DES:Hewlett-Packard DeskJet 810C;"
       PCFileName "hp-deskjet_812c.ppd"
       Attribute "Product" "" "(HP Deskjet 812c Printer)"
     }
@@ -16390,7 +16393,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 815c"
       Attribute "NickName" "" "HP Deskjet 815c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 815c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 815c;DES:deskjet 815c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 815C;DES:Hewlett-Packard DeskJet 815C;"
       PCFileName "hp-deskjet_815c.ppd"
       Attribute "Product" "" "(HP Deskjet 815c Printer)"
     }
@@ -16422,7 +16425,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 840c"
       Attribute "NickName" "" "HP Deskjet 840c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 840c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 840c;DES:deskjet 840c;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:DeskJet 840C;DES:deskjet 840c;"
       PCFileName "hp-deskjet_840c.ppd"
       Attribute "Product" "" "(HP Deskjet 840c Printer)"
     }
@@ -16430,7 +16433,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 841c"
       Attribute "NickName" "" "HP Deskjet 841c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 841c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 841c;DES:deskjet 841c;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:DeskJet 841C;DES:deskjet 841c;"
       PCFileName "hp-deskjet_841c.ppd"
       Attribute "Product" "" "(HP Deskjet 841c Printer)"
     }
@@ -16446,7 +16449,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 843c"
       Attribute "NickName" "" "HP Deskjet 843c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 843c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 843c;DES:deskjet 843c;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:DeskJet 843C;DES:deskjet 843c;"
       PCFileName "hp-deskjet_843c.ppd"
       Attribute "Product" "" "(HP Deskjet 843c Printer)"
       Attribute "Product" "" "(HP Deskjet 843cxe Printer)"
@@ -16455,7 +16458,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 880c"
       Attribute "NickName" "" "HP Deskjet 880c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 880c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 880c;DES:deskjet 880c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 880C;DES:Hewlett-Packard DeskJet 880C;"
       PCFileName "hp-deskjet_880c.ppd"
       Attribute "Product" "" "(HP Deskjet 880c Printer)"
     }
@@ -16471,7 +16474,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 895c"
       Attribute "NickName" "" "HP Deskjet 895c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 895c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 895c;DES:deskjet 895c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 895C;DES:Hewlett-Packard DeskJet 895C;"
       PCFileName "hp-deskjet_895c.ppd"
       Attribute "Product" "" "(HP Deskjet 895cse Printer)"
       Attribute "Product" "" "(HP Deskjet 895c Printer)"
@@ -16481,7 +16484,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet r40"
       Attribute "NickName" "" "HP Officejet r40, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet r40"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet r40;DES:officejet r40;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:OFFICEJET R40;DES:Hewlett-Packard OfficeJet R40;"
       PCFileName "hp-officejet_r40.ppd"
       Attribute "Product" "" "(HP Officejet r40 All-in-one Printer)"
     }
@@ -16505,7 +16508,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet r60"
       Attribute "NickName" "" "HP Officejet r60, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet r60"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet r60;DES:officejet r60;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:OFFICEJET R60;DES:Hewlett-Packard OfficeJet R60;"
       PCFileName "hp-officejet_r60.ppd"
       Attribute "Product" "" "(HP Officejet r60 All-in-one Printer)"
     }
@@ -16513,7 +16516,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet r65"
       Attribute "NickName" "" "HP Officejet r65, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet r65"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet r65;DES:officejet r65;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:OFFICEJET R65;DES:Hewlett-Packard OfficeJet R65;"
       PCFileName "hp-officejet_r65.ppd"
       Attribute "Product" "" "(HP Officejet r65 All-in-one Printer)"
     }
@@ -16521,7 +16524,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet r80"
       Attribute "NickName" "" "HP Officejet r80, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet r80"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet r80;DES:officejet r80;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:OFFICEJET R80;DES:Hewlett-Packard OfficeJet R80;"
       PCFileName "hp-officejet_r80.ppd"
       Attribute "Product" "" "(HP Officejet r80 All-in-one Printer)"
     }
@@ -16537,7 +16540,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet T Series"
       Attribute "NickName" "" "HP Officejet T Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet T Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet t series;DES:officejet t series;"
+      Attribute "1284DeviceID" "" "MFG:Hewlett-Packard;MDL:OfficeJet T Series;DES:Hewlett-Packard OfficeJet T Series;"
       PCFileName "hp-officejet_t_series.ppd"
       Attribute "Product" "" "(HP Officejet t45 All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet t45xi All-in-one Printer)"
@@ -16548,7 +16551,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP PSC 500"
       Attribute "NickName" "" "HP PSC 500, hpcups $Version"
       Attribute "ShortNickName" "" "HP PSC 500"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:psc 500;DES:psc 500;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:PSC 500;DES:Hewlett-Packard PSC 500;"
       PCFileName "hp-psc_500.ppd"
       Attribute "Product" "" "(HP PSC 500 All-in-one Printer)"
       Attribute "Product" "" "(HP PSC 500xi All-in-one Printer)"
@@ -16664,7 +16667,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 825c"
       Attribute "NickName" "" "HP Deskjet 825c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 825c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 825c;DES:deskjet 825c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 825C;DES:Hewlett-Packard DeskJet 825C;"
       PCFileName "hp-deskjet_825c.ppd"
       Attribute "Product" "" "(HP Deskjet 825cvr Printer)"
       Attribute "Product" "" "(HP Deskjet 825c Printer)"
@@ -16673,7 +16676,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 845c"
       Attribute "NickName" "" "HP Deskjet 845c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 845c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 845c;DES:deskjet 845c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 845C;DES:Hewlett-Packard DeskJet 845C;"
       PCFileName "hp-deskjet_845c.ppd"
       Attribute "Product" "" "(HP Deskjet 845c Printer)"
       Attribute "Product" "" "(HP Deskjet 845cvr Printer)"
@@ -16784,7 +16787,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet Pro 1150c"
       Attribute "NickName" "" "HP Officejet Pro 1150c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet Pro 1150c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet pro 1150c;DES:officejet pro 1150c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:OFFICEJET PRO 1150C;DES:Hewlett-Packard OfficeJet Pro 1150C;"
       PCFileName "hp-officejet_pro_1150c.ppd"
       Attribute "Product" "" "(HP Officejet Pro 1150c All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet Pro 1150cse All-in-one Printer)"
@@ -16793,7 +16796,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 850c"
       Attribute "NickName" "" "HP Deskjet 850c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 850c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 850c;DES:deskjet 850c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 850C;DES:Hewlett-Packard Deskjet 850C;"
       PCFileName "hp-deskjet_850c.ppd"
       Attribute "Product" "" "(HP Deskjet 850k Printer)"
       Attribute "Product" "" "(HP Deskjet 850c Printer)"
@@ -16812,7 +16815,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 870c"
       Attribute "NickName" "" "HP Deskjet 870c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 870c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 870c;DES:deskjet 870c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 870C;DES:Hewlett-Packard Deskjet 870C;"
       PCFileName "hp-deskjet_870c.ppd"
       Attribute "Product" "" "(HP Deskjet 870k Printer)"
       Attribute "Product" "" "(HP Deskjet 870c Printer)"
@@ -16928,7 +16931,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Officejet Pro 1170c Series"
       Attribute "NickName" "" "HP Officejet Pro 1170c Series, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet Pro 1170c Series"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet pro 1170c series;DES:officejet pro 1170c series;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:OFFICEJET PRO 1170C SERIES;DES:Hewlett-Packard OfficeJet Pro 1170C Series;"
       PCFileName "hp-officejet_pro_1170c_series.ppd"
       Attribute "Product" "" "(HP Officejet Pro 1170c All-in-one Printer)"
       Attribute "Product" "" "(HP Officejet Pro 1170cse All-in-one Printer)"
@@ -16941,7 +16944,7 @@ Group "RLT/HP Real Life Technologies"
       ModelName "HP Deskjet 890c"
       Attribute "NickName" "" "HP Deskjet 890c, hpcups $Version"
       Attribute "ShortNickName" "" "HP Deskjet 890c"
-      Attribute "1284DeviceID" "" "MFG:HP;MDL:deskjet 890c;DES:deskjet 890c;"
+      Attribute "1284DeviceID" "" "MFG:HEWLETT-PACKARD;MDL:DESKJET 890C;DES:Hewlett-Packard Deskjet 890C;"
       PCFileName "hp-deskjet_890c.ppd"
       Attribute "Product" "" "(HP Deskjet 890cse Printer)"
       Attribute "Product" "" "(HP Deskjet 890c Printer)"


code:
diff -up hplip-3.14.10/prnt/ps/hp-lj_300_400_color_m351_m451-ps.ppd.gz-deviceid hplip-3.14.10/prnt/ps/hp-lj_300_400_color_m351_m451-ps.ppd
--- hplip-3.14.10/prnt/ps/hp-lj_300_400_color_m351_m451-ps.ppd.gz-deviceid	2014-11-04 09:41:13.200005393 +0000
+++ hplip-3.14.10/prnt/ps/hp-lj_300_400_color_m351_m451-ps.ppd	2014-11-04 09:42:13.168312042 +0000
@@ -82,6 +82,7 @@
 *cupsManualCopies: False
 *cupsLanguages: "en da de es fi fr it ja ko nb nl pt ru sv zh_CN zh_TW"
 *cupsFilter: "application/vnd.cups-postscript 0 hpps"
+*1284DeviceID: "MFG:Hewlett-Packard;MDL:HP LaserJet 400 color M451dn;DES:HP LaserJet 400 color M451dn;"
 *UIConstraints: *HPOption_Duplexer False *Duplex
 *UIConstraints: *Duplex *HPOption_Duplexer False
 *UIConstraints: *HPOption_Tray3 False *InputSlot Tray3


code:
diff -up hplip-3.14.10/prnt/drv/hpcups.drv.in.dj990c-margin hplip-3.14.10/prnt/drv/hpcups.drv.in
--- hplip-3.14.10/prnt/drv/hpcups.drv.in.dj990c-margin	2014-12-23 15:55:09.779368939 +0000
+++ hplip-3.14.10/prnt/drv/hpcups.drv.in	2014-12-23 15:55:24.488454126 +0000
@@ -1531,9 +1531,9 @@ Manufacturer "HP"
          "<</cupsInteger0 2/PageSize[612 792]/ImagingBBox null>>setpagedevice"
   CustomMedia "Letter.Duplex/Letter AutoDuplex 8.5x11in" 612 783 18 27 18 36 "<</cupsInteger0 2/PageSize[612 783]/ImagingBBox null>>setpagedevice"
          "<</cupsInteger0 2/PageSize[612 783]/ImagingBBox null>>setpagedevice"
-  CustomMedia "A4/A4 210x297mm" 595.44 841.68 18 36.00 18 9.00 "<</cupsInteger0 26/PageSize[595.44 841.68]/ImagingBBox null>>setpagedevice"
+  CustomMedia "A4/A4 210x297mm" 595.44 841.68 9 36.00 9 9.00 "<</cupsInteger0 26/PageSize[595.44 841.68]/ImagingBBox null>>setpagedevice"
          "<</cupsInteger0 26/PageSize[595.44 841.68]/ImagingBBox null>>setpagedevice"
-  CustomMedia "A4.Duplex/A4 AutoDuplex 210x297mm" 595 833 18 27 18 36 "<</cupsInteger0 26/PageSize[595 833]/ImagingBBox null>>setpagedevice"
+  CustomMedia "A4.Duplex/A4 AutoDuplex 210x297mm" 595 833 9 27 9 36 "<</cupsInteger0 26/PageSize[595 833]/ImagingBBox null>>setpagedevice"
          "<</cupsInteger0 26/PageSize[595 833]/ImagingBBox null>>setpagedevice"
   CustomMedia "ExecutiveJIS/Executive (JIS) 8.5x12.986in" 612 936 18 36 18 9 "<</cupsInteger0 10/PageSize[612 936]/ImagingBBox null>>setpagedevice"
          "<</cupsInteger0 10/PageSize[612 936]/ImagingBBox null>>setpagedevice"


code:
diff -up hplip-3.9.8/prnt/hpijs/services.cpp.hpcups-sigpipe hplip-3.9.8/prnt/hpijs/services.cpp
--- hplip-3.9.8/prnt/hpijs/services.cpp.hpcups-sigpipe	2009-08-04 22:35:41.000000000 +0100
+++ hplip-3.9.8/prnt/hpijs/services.cpp	2009-10-29 11:56:23.015022337 +0000
@@ -29,6 +29,7 @@
     POSSIBILITY OF SUCH DAMAGE.
 \*****************************************************************************/

+#include <errno.h>
 #include <sys/stat.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -382,8 +383,16 @@ DRIVER_ERROR UXServices::ToDevice(const
    if (write(OutputPath, pBuffer, *Count) != (ssize_t)*Count)
    {
       static int cnt=0;
-      if (cnt++ < 5)
+      if (cnt < 5)
+      {
+	 cnt++;
          BUG("unable to write to output, fd=%d, count=%d: %m\n", OutputPath, *Count);
+      }
+
+      if (errno == EPIPE)
+	 /* The backend has exited.  There's no recovering from that. */
+	 exit (1);
+
       return IO_ERROR;
    }


code:
diff -up hplip-3.10.9/prnt/hpijs/hpijs.cpp.hpijs-marker-supply hplip-3.10.9/prnt/hpijs/hpijs.cpp
--- hplip-3.10.9/prnt/hpijs/hpijs.cpp.hpijs-marker-supply	2010-10-18 16:58:23.882993673 +0100
+++ hplip-3.10.9/prnt/hpijs/hpijs.cpp	2010-10-18 17:00:00.510869032 +0100
@@ -585,6 +585,7 @@ int main (int argc, char *argv[], char *
    char *raster = NULL, *k_raster = NULL;
    int status = EXIT_FAILURE;
    int ret, n, i, kn=0, width, k_width;
+   int low_marker = 0;
    char user_name[32]={0,};

    openlog("hpijs", LOG_PID,  LOG_DAEMON);
@@ -666,14 +667,17 @@ int main (int argc, char *argv[], char *
 			case WARN_LOW_INK_YELLOW:
 			case WARN_LOW_INK_MULTIPLE_PENS:
                         {
-                           fputs("STATE: +marker-supply-low-warning\n", stderr);
+			   low_marker = 1;
                            break;
                         }
 			default:
-                           fputs("STATE: +marker-supply-low-warning\n", stderr);
+			   low_marker = 1;
 		}
     }

+    fprintf(stderr, "STATE: %cmarker-supply-low-warning\n",
+	    low_marker ? '+' : '-');
+
 #if 0
    BUG("device model=%s\n", pSS->pPC->PrinterModel());
    BUG("device class=%s\n",  pSS->pPC->PrintertypeToString(pSS->pPC->SelectedDevice()));


code:
diff -up hplip-3.14.6/scan.py.lineart hplip-3.14.6/scan.py
--- hplip-3.14.6/scan.py.lineart	2014-07-23 12:30:52.361517852 +0100
+++ hplip-3.14.6/scan.py	2014-07-23 12:32:17.052940000 +0100
@@ -977,8 +977,8 @@ try:
                         try:
                             pixels_per_line = bytes_per_line * 8          # Calculation of pixels_per_line for Lineart must be 8 time of bytes_per_line
                                                                           # Otherwise, scanned image will be corrupted (slanted)
-                            im = Image.frombuffer('RGBA', (pixels_per_line, lines), buffer.read(),
-                                'raw', 'RGBA', 0, 1).convert('L')
+                            im = Image.frombuffer('1', (pixels_per_line, lines), buffer.read(),
+                                'raw', '1', 0, 1).convert('L')
                         except ValueError:
                             log.error("Did not read enough data from scanner (I/O Error?)")
                             sys.exit(1)


code:
diff -up hplip-3.15.2/fax/backend/hpfax.py.log-stderr hplip-3.15.2/fax/backend/hpfax.py
--- hplip-3.15.2/fax/backend/hpfax.py.log-stderr	2015-01-29 13:20:35.000000000 +0100
+++ hplip-3.15.2/fax/backend/hpfax.py	2015-02-04 15:40:48.360972449 +0100
@@ -55,7 +55,10 @@ home_dir = ''

 def bug(msg):
     syslog.syslog("hpfax[%d]: error: %s\n" % (pid, msg))
-    log.stderr("ERROR: %s\n" % msg)
+    try:
+        log.stderr("ERROR: %s" % msg)
+    except NameError:
+        sys.stderr.write("ERROR: %s\n" % msg)

 if os.path.exists(config_file):
diff -up hplip-3.15.2/prnt/filters/hpps.log-stderr hplip-3.15.2/prnt/filters/hpps
--- hplip-3.15.2/prnt/filters/hpps.log-stderr	2015-02-04 15:40:48.360972449 +0100
+++ hplip-3.15.2/prnt/filters/hpps	2015-02-04 15:43:14.796878364 +0100
@@ -53,10 +53,16 @@ home_dir = ''

 def bug(m):
-    log.stderr("ERROR: %s" % m)
+    try:
+        log.stderr("ERROR: %s" % m)
+    except NameError:
+        sys.stderr.write("ERROR: %s\n" % m)

 def msg(m):
-    log.stderr("INFO: %s" % m)
+    try:
+        log.stderr("INFO: %s" % msg)
+    except NameError:
+        sys.stderr.write("INFO: %s\n" % msg)

 if os.path.exists(config_file):
     config = configparser.ConfigParser()


code:
diff -up hplip-3.15.2/prnt/hpcups/HPCupsFilter.cpp.logdir hplip-3.15.2/prnt/hpcups/HPCupsFilter.cpp
--- hplip-3.15.2/prnt/hpcups/HPCupsFilter.cpp.logdir	2015-02-04 14:22:43.838774401 +0100
+++ hplip-3.15.2/prnt/hpcups/HPCupsFilter.cpp	2015-02-04 14:22:43.844774315 +0100
@@ -619,7 +619,7 @@ int HPCupsFilter::processRasterData(cups
     char hpPreProcessedRasterFile[MAX_FILE_PATH_LEN]; //temp file needed to store raster data with swaped pages.

-    sprintf(hpPreProcessedRasterFile, "%s/hp_%s_cups_SwapedPagesXXXXXX",CUPS_TMP_DIR, m_JA.user_name);
+    snprintf(hpPreProcessedRasterFile, sizeof (hpPreProcessedRasterFile), "%s/hp_%s_cups_SwapedPagesXXXXXX",CUPS_TMP_DIR, m_JA.user_name);

     while (cupsRasterReadHeader2(cups_raster, &cups_header))
diff -up hplip-3.15.2/prnt/hpcups/SystemServices.cpp.logdir hplip-3.15.2/prnt/hpcups/SystemServices.cpp
--- hplip-3.15.2/prnt/hpcups/SystemServices.cpp.logdir	2015-02-04 14:22:43.844774315 +0100
+++ hplip-3.15.2/prnt/hpcups/SystemServices.cpp	2015-02-04 14:24:04.080626127 +0100
@@ -38,7 +38,7 @@ SystemServices::SystemServices(int iLogL
     if (iLogLevel & SAVE_OUT_FILE)
     {
         char    fname[MAX_FILE_PATH_LEN];
-        sprintf(fname, "%s/hpcups_%s_out_job%d_XXXXXX",CUPS_TMP_DIR, user_name, job_id);
+        snprintf(fname, sizeof(fname), "%s/hpcups_%s_out_job%d_XXXXXX",CUPS_TMP_DIR, user_name, job_id);
         createTempFile(fname, &m_fp);
         if (m_fp)
         {


code:
diff -up hplip-3.9.8/ip/xfax.c.no-asm hplip-3.9.8/ip/xfax.c
--- hplip-3.9.8/ip/xfax.c.no-asm	2009-08-04 22:37:28.000000000 +0100
+++ hplip-3.9.8/ip/xfax.c	2009-08-25 14:44:04.502202418 +0100
@@ -1680,19 +1680,6 @@ static BOOL bits_flush_to_eol (
                  & ((1u<<n_bits) - 1u);                                      \
 }

-#if 0
-
-#define BITS_LOAD(g, num_bits, par_result) {                                 \
-    int n_bits = (int)(num_bits);                                            \
-                                                                             \
-    par_result = g->gb_cache;                                                \
-                                                                             \
-    asm ("extract %1,%2,%0"                                                  \
-        : "=d" (par_result)                                                  \
-        : "dI" (g->gb_cache_cnt - n_bits), "dI" (n_bits), "0" (par_result)); \
-}
-
-#endif

diff -up hplip-3.9.8/scan/sane/common.h.no-asm hplip-3.9.8/scan/sane/common.h
--- hplip-3.9.8/scan/sane/common.h.no-asm	2009-08-25 16:35:14.577203106 +0100
+++ hplip-3.9.8/scan/sane/common.h	2009-08-25 16:35:29.948216281 +0100
@@ -53,8 +53,6 @@

 #define BACKEND_NAME hpaio

-#define BREAKPOINT __asm( "int3" )
-
 #define OK 1
 #define ERROR 0
 #define MAX_LIST_SIZE 32
diff -up hplip-3.9.8/scan/sane/hpaio.c.no-asm hplip-3.9.8/scan/sane/hpaio.c


code:
diff -up hplip-3.15.11/config_usb_printer.py.no-write-bytecode hplip-3.15.11/config_usb_printer.py
--- hplip-3.15.11/config_usb_printer.py.no-write-bytecode	2015-11-16 10:50:03.127459222 +0100
+++ hplip-3.15.11/config_usb_printer.py	2015-11-16 10:53:52.266931490 +0100
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python -B
 # -*- coding: utf-8 -*-
 #
 # (c) Copyright 2011-2015 HP Development Company, L.P.
diff -up hplip-3.15.11/fax/backend/hpfax.py.no-write-bytecode hplip-3.15.11/fax/backend/hpfax.py
--- hplip-3.15.11/fax/backend/hpfax.py.no-write-bytecode	2015-11-16 10:50:03.128459220 +0100
+++ hplip-3.15.11/fax/backend/hpfax.py	2015-11-16 10:53:49.587937659 +0100
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python -B
 # -*- coding: utf-8 -*-
 #
 # (c) Copyright 2003-2015 HP Development Company, L.P.
diff -up hplip-3.15.11/prnt/filters/hpps.no-write-bytecode hplip-3.15.9/prnt/filters/hpps
--- hplip-3.15.11/prnt/filters/hpps.no-write-bytecode	2016-01-04 16:44:08.000000000 +0100
+++ hplip-3.15.11/prnt/filters/hpps	2016-01-04 16:50:11.272921194 +0100
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python -B
 # -*- coding: utf-8 -*-
 #
 # (c) Copyright 2003-2015 HP Development Company, L.P.


code:
diff -up hplip-3.14.3/prnt/ps/hp-laserjet_8150_mfp-ps.ppd.ImageableArea hplip-3.14.3/prnt/ps/hp-laserjet_8150_mfp-ps.ppd
--- hplip-3.14.3/prnt/ps/hp-laserjet_8150_mfp-ps.ppd.ImageableArea	2014-03-06 06:11:09.000000000 +0100
+++ hplip-3.14.3/prnt/ps/hp-laserjet_8150_mfp-ps.ppd	2014-03-07 10:26:54.404913622 +0100
@@ -3430,7 +3430,7 @@ restore
 *CloseUI: *PageRegion

 *DefaultImageableArea: Letter
-*ImageableArea Letter/Letter:							"4.00 3.00 606.00 786.00"
+*ImageableArea Letter/Letter: "12.00 12.00 599.76 779.76"
 *da.ImageableArea Letter/Letter: ""
 *de.ImageableArea Letter/Letter: ""
 *es.ImageableArea Letter/Letter: ""
@@ -3462,7 +3462,7 @@ restore
 *zh_CN.ImageableArea LetterSmall/信纸 (小): ""
 *zh_TW.ImageableArea LetterSmall/Letter (小): ""

-*ImageableArea Executive/Executive:						"3.00 3.00 516.00 750.00"
+*ImageableArea Executive/Executive: "12.00 12.00 509.76 743.76"
 *da.ImageableArea Executive/Executive: ""
 *de.ImageableArea Executive/Executive: ""
 *es.ImageableArea Executive/Exec: ""
@@ -3478,7 +3478,7 @@ restore
 *zh_CN.ImageableArea Executive/Executive: ""
 *zh_TW.ImageableArea Executive/Executive: ""

-*ImageableArea Legal/Legal:								"64.00 54.00 606.00 1002.00"
+*ImageableArea Legal/Legal: "12.00 12.00 599.76 995.76"
 *da.ImageableArea Legal/Legal: ""
 *de.ImageableArea Legal/Legal: ""
 *es.ImageableArea Legal/Legal: ""
@@ -3494,7 +3494,7 @@ restore
 *zh_CN.ImageableArea Legal/Legal: ""
 *zh_TW.ImageableArea Legal/Legal: ""

-*ImageableArea LegalSmall/Legal (Small):				"3.00 3.00 548.00 954.00"
+*ImageableArea LegalSmall/Legal (Small): "64.00 54.00 548.00 954.00"
 *da.ImageableArea LegalSmall/Legal (lille): ""
 *de.ImageableArea LegalSmall/Legal (Klein): ""
 *es.ImageableArea LegalSmall/Legal (pequeño): ""
@@ -3510,7 +3510,7 @@ restore
 *zh_CN.ImageableArea LegalSmall/Legal (小): ""
 *zh_TW.ImageableArea LegalSmall/Legal (小): ""

-*ImageableArea Tabloid/11x17:							"3.00 3.00 786.00 1218.00"
+*ImageableArea Tabloid/11x17: "12.00 12.00 779.76 1211.76"
 *da.ImageableArea Tabloid/11x17: ""
 *de.ImageableArea Tabloid/11x17 Zoll: ""
 *es.ImageableArea Tabloid/11x17: ""
@@ -3526,7 +3526,7 @@ restore
 *zh_CN.ImageableArea Tabloid/11x17: ""
 *zh_TW.ImageableArea Tabloid/11x17 : ""

-*ImageableArea w842h1274/11x17 (Oversize 11.7x17.7):	"3.00 3.00 836.00 1268.00"
+*ImageableArea w842h1274/11x17 (Oversize 11.7x17.7): "12.00 12.00 829.68 1261.68"
 *da.ImageableArea w842h1274/11x17 (overstr.  297 x 450 mm): ""
 *de.ImageableArea w842h1274/11x17 Zoll (Übergröße 11,7x17,7 Zoll): ""
 *es.ImageableArea w842h1274/11x17 (Extra 11,7x17,7) : ""
@@ -3542,7 +3542,7 @@ restore
 *zh_CN.ImageableArea w842h1274/11x17 (超大尺寸 11.7x17.7): ""
 *zh_TW.ImageableArea w842h1274/11x17  (Oversize 11.7x17.7): ""

-*ImageableArea A3/A3:									"3.00 3.00 836.00 1185.00"
+*ImageableArea A3/A3: "12.00 12.00 829.44 1178.16"
 *da.ImageableArea A3/A3: ""
 *de.ImageableArea A3/A3: ""
 *es.ImageableArea A3/A3: ""
@@ -3558,7 +3558,7 @@ restore
 *zh_CN.ImageableArea A3/A3: ""
 *zh_TW.ImageableArea A3/A3: ""

-*ImageableArea A4/A4:									"4.00 3.00 586.00 836.00"
+*ImageableArea A4/A4: "12.00 12.00 582.96 829.44"
 *da.ImageableArea A4/A4: ""
 *de.ImageableArea A4/A4: ""
 *es.ImageableArea A4/A4: ""
@@ -3590,7 +3590,7 @@ restore
 *zh_CN.ImageableArea A4Small/A4 (小): ""
 *zh_TW.ImageableArea A4Small/A4 (小): ""

-*ImageableArea A5/A5:									"3.00 3.00 414.00 589.00"
+*ImageableArea A5/A5: "12.00 12.00 407.28 582.96"
 *da.ImageableArea A5/A5: ""
 *de.ImageableArea A5/A5: ""
 *es.ImageableArea A5/A5: ""
@@ -3606,7 +3606,7 @@ restore
 *zh_CN.ImageableArea A5/A5: ""
 *zh_TW.ImageableArea A5/A5: ""

-*ImageableArea B4/JIS B4:								"3.00 3.00 723.00 1026.00"
+*ImageableArea B4/JIS B4: "12.00 12.00 716.16 1019.52"
 *da.ImageableArea B4/JIS B4: ""
 *de.ImageableArea B4/B4 (JIS): ""
 *es.ImageableArea B4/JIS B4: ""
@@ -3622,7 +3622,7 @@ restore
 *zh_CN.ImageableArea B4/JIS B4: ""
 *zh_TW.ImageableArea B4/JIS B4: ""

-*ImageableArea B5/JIS B5:								"3.00 3.00 510.00 723.00"
+*ImageableArea B5/JIS B5: "12.00 12.00 503.52 716.16"
 *da.ImageableArea B5/JIS B5: ""
 *de.ImageableArea B5/JIS B5: ""
 *es.ImageableArea B5/JIS B5: ""
@@ -3638,7 +3638,7 @@ restore
 *zh_CN.ImageableArea B5/JIS B5: ""
 *zh_TW.ImageableArea B5/JIS B5: ""

-*ImageableArea DoublePostcard/Double Postcard (JIS):	"3.00 3.00 413.50 561.00"
+*ImageableArea DoublePostcard/Double Postcard (JIS): "12.00 12.00 407.28 554.64"
 *da.ImageableArea DoublePostcard/Dobbelt postkort (JIS): ""
 *de.ImageableArea DoublePostcard/Doppelte Postkarte (JIS): ""
 *es.ImageableArea DoublePostcard/Tarjeta postal doble (JIS): ""
@@ -3654,7 +3654,7 @@ restore
 *zh_CN.ImageableArea DoublePostcard/大号明信片 (JIS): ""
 *zh_TW.ImageableArea DoublePostcard/雙聯明信片(JIS): ""

-*ImageableArea w612h935/Executive (JIS):				"3.00 3.00 606.00 929.00"
+*ImageableArea w612h935/Executive (JIS): "12.00 12.00 599.76 922.76"
 *da.ImageableArea w612h935/Executive (JIS): ""
 *de.ImageableArea w612h935/Executive (JIS): ""
 *es.ImageableArea w612h935/Exec (JIS): ""
@@ -3670,7 +3670,7 @@ restore
 *zh_CN.ImageableArea w612h935/Executive (JIS): ""
 *zh_TW.ImageableArea w612h935/Executive (JIS): ""

-*ImageableArea w558h774/16K:							"3.00 3.00 552.00 768.00"
+*ImageableArea w558h774/16K: "12.00 12.00 545.76 761.76"
 *da.ImageableArea w558h774/16K: ""
 *de.ImageableArea w558h774/16K: ""
 *es.ImageableArea w558h774/16K: ""
@@ -3686,7 +3686,7 @@ restore
 *zh_CN.ImageableArea w558h774/16K: ""
 *zh_TW.ImageableArea w558h774/16K: ""

-*ImageableArea w774h1116/8K:							"3.00 3.00 768.00 1110.00"
+*ImageableArea w774h1116/8K: "12.00 12.00 761.76 1103.76"
 *da.ImageableArea w774h1116/8K: ""
 *de.ImageableArea w774h1116/8K: ""
 *es.ImageableArea w774h1116/8K: ""
@@ -3702,7 +3702,7 @@ restore
 *zh_CN.ImageableArea w774h1116/8K: ""
 *zh_TW.ImageableArea w774h1116/8K: ""

-*ImageableArea Env10/Env Comm10:						"3.00 3.00 291.00 678.00"
+*ImageableArea Env10/Env Comm10: "12.00 12.00 284.64 671.76"
 *da.ImageableArea Env10/Konvolut Comm10: ""
 *de.ImageableArea Env10/Umschlag Comm10: ""
 *es.ImageableArea Env10/Sobre Comm10: ""
@@ -3718,7 +3718,7 @@ restore
 *zh_CN.ImageableArea Env10/Comm10号信封: ""
 *zh_TW.ImageableArea Env10/Comm10 信封: ""

-*ImageableArea EnvMonarch/Env Monarch:					"3.00 3.00 273.00 534.00"
+*ImageableArea EnvMonarch/Env Monarch: "12.00 12.00 266.64 527.76"
 *da.ImageableArea EnvMonarch/Konvolut Monarch: ""
 *de.ImageableArea EnvMonarch/Umschlag Monarch: ""
 *es.ImageableArea EnvMonarch/Sobre Monarch: ""
@@ -3734,7 +3734,7 @@ restore
 *zh_CN.ImageableArea EnvMonarch/Monarch号信封: ""
 *zh_TW.ImageableArea EnvMonarch/Monarch 信封: ""

-*ImageableArea EnvDL/Env DL:							"3.00 3.00 306.00 618.00"
+*ImageableArea EnvDL/Env DL: "12.00 12.00 299.52 611.28"
 *da.ImageableArea EnvDL/Konvolut DL: ""
 *de.ImageableArea EnvDL/Umschlag DL: ""
 *es.ImageableArea EnvDL/Sobre DL: ""
@@ -3750,7 +3750,7 @@ restore
 *zh_CN.ImageableArea EnvDL/DL号信封: ""
 *zh_TW.ImageableArea EnvDL/DL 信封: ""

-*ImageableArea EnvC5/Env C5:							"3.00 3.00 453.00 643.00"
+*ImageableArea EnvC5/Env C5: "12.00 12.00 446.88 636.72"
 *da.ImageableArea EnvC5/Konvolut C5: ""
 *de.ImageableArea EnvC5/Umschlag C5: ""
 *es.ImageableArea EnvC5/Sobre C5: ""
@@ -3766,7 +3766,7 @@ restore
 *zh_CN.ImageableArea EnvC5/C5号信封: ""
 *zh_TW.ImageableArea EnvC5/C5 信封: ""

-*ImageableArea EnvISOB5/Env ISO B5:						"3.00 3.00 493.00 703.00"
+*ImageableArea EnvISOB5/Env ISO B5: "12.00 12.00 486.48 696.24"
 *da.ImageableArea EnvISOB5/Konvolut ISO B5: ""
 *de.ImageableArea EnvISOB5/Umschlag ISO B5: ""
 *es.ImageableArea EnvISOB5/Sobre ISO B5: ""
diff -up hplip-3.14.3/prnt/ps/hp-laserjet_9000_mfp-ps.ppd.ImageableArea hplip-3.14.3/prnt/ps/hp-laserjet_9000_mfp-ps.ppd
--- hplip-3.14.3/prnt/ps/hp-laserjet_9000_mfp-ps.ppd.ImageableArea	2014-03-06 06:11:09.000000000 +0100
+++ hplip-3.14.3/prnt/ps/hp-laserjet_9000_mfp-ps.ppd	2014-03-07 10:26:54.407913581 +0100
@@ -2593,7 +2593,7 @@ currentpagedevice /MediaProcessing known
 *CloseUI: *PageRegion

 *DefaultImageableArea: Letter
-*ImageableArea Letter/Letter:							"6.00 6.00 606.00 786.00"
+*ImageableArea Letter/Letter: "12.00 12.00 599.76 779.76"
 *da.ImageableArea Letter/Letter: ""
 *de.ImageableArea Letter/Letter: ""
 *es.ImageableArea Letter/Letter: ""
@@ -2625,7 +2625,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea LetterSmall/信纸 (小): ""
 *zh_TW.ImageableArea LetterSmall/Letter (小): ""

-*ImageableArea Executive/Executive:						"6.00 6.00 516.00 750.00"
+*ImageableArea Executive/Executive: "12.00 12.00 509.76 743.76"
 *da.ImageableArea Executive/Executive: ""
 *de.ImageableArea Executive/Executive: ""
 *es.ImageableArea Executive/Exec: ""
@@ -2641,7 +2641,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea Executive/Executive: ""
 *zh_TW.ImageableArea Executive/Executive: ""

-*ImageableArea Legal/Legal:								"6.00 6.00 606.00 1002.00"
+*ImageableArea Legal/Legal: "12.00 12.00 599.76 995.76"
 *da.ImageableArea Legal/Legal: ""
 *de.ImageableArea Legal/Legal: ""
 *es.ImageableArea Legal/Legal: ""
@@ -2673,7 +2673,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea LegalSmall/Legal (小): ""
 *zh_TW.ImageableArea LegalSmall/Legal (小): ""

-*ImageableArea Tabloid/11x17:							"6.00 6.00 786.00 1218.00"
+*ImageableArea Tabloid/11x17: "12.00 12.00 779.76 1211.76"
 *da.ImageableArea Tabloid/11x17: ""
 *de.ImageableArea Tabloid/11x17 Zoll: ""
 *es.ImageableArea Tabloid/11x17: ""
@@ -2689,7 +2689,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea Tabloid/11x17: ""
 *zh_TW.ImageableArea Tabloid/11x17 : ""

-*ImageableArea w842h1274/11x17 (Oversize 11.7x17.7):	"6.00 6.00 836.00 1268.00"
+*ImageableArea w842h1274/11x17 (Oversize 11.7x17.7): "12.00 12.00 829.68 1261.68"
 *da.ImageableArea w842h1274/11x17 (overstr.  297 x 450 mm): ""
 *de.ImageableArea w842h1274/11x17 Zoll (Übergröße 11,7x17,7 Zoll): ""
 *es.ImageableArea w842h1274/11x17 (Extra 11,7x17,7) : ""
@@ -2705,7 +2705,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea w842h1274/11x17 (超大尺寸 11.7x17.7): ""
 *zh_TW.ImageableArea w842h1274/11x17  (Oversize 11.7x17.7): ""

-*ImageableArea A3/A3:									"6.00 6.00 836.00 1185.00"
+*ImageableArea A3/A3: "12.00 12.00 829.44 1178.16"
 *da.ImageableArea A3/A3: ""
 *de.ImageableArea A3/A3: ""
 *es.ImageableArea A3/A3: ""
@@ -2721,7 +2721,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea A3/A3: ""
 *zh_TW.ImageableArea A3/A3: ""

-*ImageableArea A4/A4:									"6.00 6.00 589.00 836.00"
+*ImageableArea A4/A4: "12.00 12.00 582.96 829.44"
 *da.ImageableArea A4/A4: ""
 *de.ImageableArea A4/A4: ""
 *es.ImageableArea A4/A4: ""
@@ -2753,7 +2753,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea A4Small/A4 (小): ""
 *zh_TW.ImageableArea A4Small/A4 (小): ""

-*ImageableArea A5/A5:									"6.00 6.00 414.00 589.00"
+*ImageableArea A5/A5: "12.00 12.00 407.28 582.96"
 *da.ImageableArea A5/A5: ""
 *de.ImageableArea A5/A5: ""
 *es.ImageableArea A5/A5: ""
@@ -2769,7 +2769,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea A5/A5: ""
 *zh_TW.ImageableArea A5/A5: ""

-*ImageableArea B4/JIS B4:								"6.00 6.00 723.00 1026.00"
+*ImageableArea B4/JIS B4: "12.00 12.00 716.16 1019.52"
 *da.ImageableArea B4/JIS B4: ""
 *de.ImageableArea B4/B4 (JIS): ""
 *es.ImageableArea B4/JIS B4: ""
@@ -2785,7 +2785,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea B4/JIS B4: ""
 *zh_TW.ImageableArea B4/JIS B4: ""

-*ImageableArea B5/JIS B5:								"6.00 6.00 510.00 723.00"
+*ImageableArea B5/JIS B5: "12.00 12.00 503.52 716.16"
 *da.ImageableArea B5/JIS B5: ""
 *de.ImageableArea B5/JIS B5: ""
 *es.ImageableArea B5/JIS B5: ""
@@ -2801,7 +2801,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea B5/JIS B5: ""
 *zh_TW.ImageableArea B5/JIS B5: ""

-*ImageableArea DoublePostcard/Double Postcard (JIS):	"6.00 6.00 413.50 561.00"
+*ImageableArea DoublePostcard/Double Postcard (JIS): "12.00 12.00 407.28 554.64"
 *da.ImageableArea DoublePostcard/Dobbelt postkort (JIS): ""
 *de.ImageableArea DoublePostcard/Doppelte Postkarte (JIS): ""
 *es.ImageableArea DoublePostcard/Tarjeta postal doble (JIS): ""
@@ -2817,7 +2817,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea DoublePostcard/大号明信片 (JIS): ""
 *zh_TW.ImageableArea DoublePostcard/雙聯明信片(JIS): ""

-*ImageableArea w612h935/Executive (JIS):				"6.00 6.00 606.00 929.00"
+*ImageableArea w612h935/Executive (JIS): "12.00 12.00 599.76 922.76"
 *da.ImageableArea w612h935/Executive (JIS): ""
 *de.ImageableArea w612h935/Executive (JIS): ""
 *es.ImageableArea w612h935/Exec (JIS): ""
@@ -2833,7 +2833,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea w612h935/Executive (JIS): ""
 *zh_TW.ImageableArea w612h935/Executive (JIS): ""

-*ImageableArea w558h774/16K:							"6.00 6.00 552.00 768.00"
+*ImageableArea w558h774/16K: "12.00 12.00 545.76 761.76"
 *da.ImageableArea w558h774/16K: ""
 *de.ImageableArea w558h774/16K: ""
 *es.ImageableArea w558h774/16K: ""
@@ -2849,7 +2849,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea w558h774/16K: ""
 *zh_TW.ImageableArea w558h774/16K: ""

-*ImageableArea w774h1116/8K:							"6.00 6.00 768.00 1110.00"
+*ImageableArea w774h1116/8K: "12.00 12.00 761.76 1103.76"
 *da.ImageableArea w774h1116/8K: ""
 *de.ImageableArea w774h1116/8K: ""
 *es.ImageableArea w774h1116/8K: ""
@@ -2865,7 +2865,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea w774h1116/8K: ""
 *zh_TW.ImageableArea w774h1116/8K: ""

-*ImageableArea Env10/Env Comm10:						"11.00 11.00 286.00 673.00"
+*ImageableArea Env10/Env Comm10: "12.00 12.00 284.64 671.76"
 *da.ImageableArea Env10/Konvolut Comm10: ""
 *de.ImageableArea Env10/Umschlag Comm10: ""
 *es.ImageableArea Env10/Sobre Comm10: ""
diff -up hplip-3.14.3/prnt/ps/hp-laserjet_9000_series-ps.ppd.ImageableArea hplip-3.14.3/prnt/ps/hp-laserjet_9000_series-ps.ppd
--- hplip-3.14.3/prnt/ps/hp-laserjet_9000_series-ps.ppd.ImageableArea	2014-03-06 06:11:09.000000000 +0100
+++ hplip-3.14.3/prnt/ps/hp-laserjet_9000_series-ps.ppd	2014-03-07 10:26:54.408913567 +0100
@@ -2660,7 +2660,7 @@ currentpagedevice /MediaProcessing known
 *CloseUI: *PageRegion

 *DefaultImageableArea: Letter
-*ImageableArea Letter/Letter:							"6.00 6.00 606.00 786.00"
+*ImageableArea Letter/Letter: "12.00 12.00 599.76 779.76"
 *da.ImageableArea Letter/Letter: ""
 *de.ImageableArea Letter/Letter: ""
 *es.ImageableArea Letter/Letter: ""
@@ -2692,7 +2692,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea LetterSmall/信纸 (小): ""
 *zh_TW.ImageableArea LetterSmall/Letter (小): ""

-*ImageableArea Executive/Executive:						"6.00 6.00 516.00 750.00"
+*ImageableArea Executive/Executive: "12.00 12.00 509.76 743.76"
 *da.ImageableArea Executive/Executive: ""
 *de.ImageableArea Executive/Executive: ""
 *es.ImageableArea Executive/Exec: ""
@@ -2708,7 +2708,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea Executive/Executive: ""
 *zh_TW.ImageableArea Executive/Executive: ""

-*ImageableArea Legal/Legal:								"6.00 6.00 606.00 1002.00"
+*ImageableArea Legal/Legal: "12.00 12.00 599.76 995.76"
 *da.ImageableArea Legal/Legal: ""
 *de.ImageableArea Legal/Legal: ""
 *es.ImageableArea Legal/Legal: ""
@@ -2740,7 +2740,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea LegalSmall/Legal (小): ""
 *zh_TW.ImageableArea LegalSmall/Legal (小): ""

-*ImageableArea Tabloid/11x17:							"6.00 6.00 786.00 1218.00"
+*ImageableArea Tabloid/11x17: "12.00 12.00 779.76 1211.76"
 *da.ImageableArea Tabloid/11x17: ""
 *de.ImageableArea Tabloid/11x17 Zoll: ""
 *es.ImageableArea Tabloid/11x17: ""
@@ -2756,7 +2756,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea Tabloid/11x17: ""
 *zh_TW.ImageableArea Tabloid/11x17 : ""

-*ImageableArea w842h1274/11x17 (Oversize 11.7x17.7):	"6.00 6.00 836.00 1268.00"
+*ImageableArea w842h1274/11x17 (Oversize 11.7x17.7): "12.00 12.00 829.68 1261.68"
 *da.ImageableArea w842h1274/11x17 (overstr.  297 x 450 mm): ""
 *de.ImageableArea w842h1274/11x17 Zoll (Übergröße 11,7x17,7 Zoll): ""
 *es.ImageableArea w842h1274/11x17 (Extra 11,7x17,7) : ""
@@ -2772,7 +2772,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea w842h1274/11x17 (超大尺寸 11.7x17.7): ""
 *zh_TW.ImageableArea w842h1274/11x17  (Oversize 11.7x17.7): ""

-*ImageableArea A3/A3:									"6.00 6.00 836.00 1185.00"
+*ImageableArea A3/A3: "12.00 12.00 829.44 1178.16"
 *da.ImageableArea A3/A3: ""
 *de.ImageableArea A3/A3: ""
 *es.ImageableArea A3/A3: ""
@@ -2788,7 +2788,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea A3/A3: ""
 *zh_TW.ImageableArea A3/A3: ""

-*ImageableArea A4/A4:									"6.00 6.00 589.00 836.00"
+*ImageableArea A4/A4: "12.00 12.00 582.96 829.44"
 *da.ImageableArea A4/A4: ""
 *de.ImageableArea A4/A4: ""
 *es.ImageableArea A4/A4: ""
@@ -2820,7 +2820,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea A4Small/A4 (小): ""
 *zh_TW.ImageableArea A4Small/A4 (小): ""

-*ImageableArea A5/A5:									"6.00 6.00 414.00 589.00"
+*ImageableArea A5/A5: "12.00 12.00 407.28 582.96"
 *da.ImageableArea A5/A5: ""
 *de.ImageableArea A5/A5: ""
 *es.ImageableArea A5/A5: ""
@@ -2836,7 +2836,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea A5/A5: ""
 *zh_TW.ImageableArea A5/A5: ""

-*ImageableArea B4/JIS B4:								"6.00 6.00 723.00 1026.00"
+*ImageableArea B4/JIS B4: "12.00 12.00 716.16 1019.52"
 *da.ImageableArea B4/JIS B4: ""
 *de.ImageableArea B4/B4 (JIS): ""
 *es.ImageableArea B4/JIS B4: ""
@@ -2852,7 +2852,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea B4/JIS B4: ""
 *zh_TW.ImageableArea B4/JIS B4: ""

-*ImageableArea B5/JIS B5:								"6.00 6.00 510.00 723.00"
+*ImageableArea B5/JIS B5: "12.00 12.00 503.52 716.16"
 *da.ImageableArea B5/JIS B5: ""
 *de.ImageableArea B5/JIS B5: ""
 *es.ImageableArea B5/JIS B5: ""
@@ -2868,7 +2868,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea B5/JIS B5: ""
 *zh_TW.ImageableArea B5/JIS B5: ""

-*ImageableArea DoublePostcard/Double Postcard (JIS):	"6.00 6.00 413.50 561.00"
+*ImageableArea DoublePostcard/Double Postcard (JIS): "12.00 12.00 407.28 554.64"
 *da.ImageableArea DoublePostcard/Dobbelt postkort (JIS): ""
 *de.ImageableArea DoublePostcard/Doppelte Postkarte (JIS): ""
 *es.ImageableArea DoublePostcard/Tarjeta postal doble (JIS): ""
@@ -2884,7 +2884,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea DoublePostcard/大号明信片 (JIS): ""
 *zh_TW.ImageableArea DoublePostcard/雙聯明信片(JIS): ""

-*ImageableArea w612h935/Executive (JIS):				"6.00 6.00 606.00 929.00"
+*ImageableArea w612h935/Executive (JIS): "12.00 12.00 599.76 922.76"
 *da.ImageableArea w612h935/Executive (JIS): ""
 *de.ImageableArea w612h935/Executive (JIS): ""
 *es.ImageableArea w612h935/Exec (JIS): ""
@@ -2900,7 +2900,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea w612h935/Executive (JIS): ""
 *zh_TW.ImageableArea w612h935/Executive (JIS): ""

-*ImageableArea w558h774/16K:							"6.00 6.00 552.00 768.00"
+*ImageableArea w558h774/16K: "12.00 12.00 545.76 761.76"
 *da.ImageableArea w558h774/16K: ""
 *de.ImageableArea w558h774/16K: ""
 *es.ImageableArea w558h774/16K: ""
@@ -2916,7 +2916,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea w558h774/16K: ""
 *zh_TW.ImageableArea w558h774/16K: ""

-*ImageableArea w774h1116/8K:							"6.00 6.00 768.00 1110.00"
+*ImageableArea w774h1116/8K: "12.00 12.00 761.76 1103.76"
 *da.ImageableArea w774h1116/8K: ""
 *de.ImageableArea w774h1116/8K: ""
 *es.ImageableArea w774h1116/8K: ""
@@ -2932,7 +2932,7 @@ currentpagedevice /MediaProcessing known
 *zh_CN.ImageableArea w774h1116/8K: ""
 *zh_TW.ImageableArea w774h1116/8K: ""

-*ImageableArea Env10/Env Comm10:						"11.00 11.00 286.00 673.00"
+*ImageableArea Env10/Env Comm10: "12.00 12.00 284.64 671.76"
 *da.ImageableArea Env10/Konvolut Comm10: ""
 *de.ImageableArea Env10/Umschlag Comm10: ""
 *es.ImageableArea Env10/Sobre Comm10: ""


code:
diff -up hplip-3.15.2/fax/filters/pstotiff.pstotiff-is-rubbish hplip-3.15.2/fax/filters/pstotiff
--- hplip-3.15.2/fax/filters/pstotiff.pstotiff-is-rubbish	2015-02-04 09:40:43.169147058 +0100
+++ hplip-3.15.2/fax/filters/pstotiff	2015-02-04 09:47:20.786983832 +0100
@@ -1,45 +1,16 @@
-#!/usr/bin/env python
-
-import os
-import os.path
-import time
-import sys
-import tempfile
-
-PY3 = sys.version_info[0] == 3
-
-READ_SIZE = 8192
-
-total_bytes_read = 0
-temp_in_file = "-"
-
-if (len(sys.argv) > 6):
-   temp_in_file = sys.argv[6]
-
-temp_out_handle, temp_out_fname = tempfile.mkstemp()
-
-font = "-I/usr/share/cups/fonts"
-device = "-sDEVICE=tiffg4 -dMaxStripSize=0 -r204x196 -dNOPAUSE -dBATCH -dSAFER -dPARANOIDSAFER -dSHORTERRORS -dWRITESYSTEMDICT -dGHOSTSCRIPT -sstdout=%stderr -sOutputFile=" + temp_out_fname + " " + temp_in_file
-
-gs_command = "/usr/bin/gs" + " " + font + " " + device
-
-exit_code = os.system(gs_command)
-
-file_len = os.stat(temp_out_fname).st_size
-if (file_len < READ_SIZE):
-    READ_SIZE = file_len
-
-os.close(temp_out_handle)
-
-out_handle = open(temp_out_fname, mode='rb')
-while (total_bytes_read < file_len):
-      data = out_handle.read(READ_SIZE)
-      if PY3:
-          sys.stdout.buffer.write(data)
-      else:
-          sys.stdout.write(data)
-      total_bytes_read += READ_SIZE
-out_handle.close()
-
-os.remove(temp_out_fname)
-sys.exit(0)
+#!/bin/sh
+if [ $# -lt 6 ]; then
+  IN=-_
+else
+  IN="$6"
+fi
+
+TMPFILE=`mktemp /tmp/pstotiff.XXXXXX` || exit 1
+gs -I/usr/share/cups/fonts -sDEVICE=tiffg4 -dMaxStripSize=0 -r204x196 \
+    -dNOPAUSE -dBATCH -dSAFER -dPARANOIDSAFER \
+   -dSHORTERRORS -dWRITESYSTEMDICT -dGHOSTSCRIPT \
+   -sstdout=%stderr -sOutputFile="$TMPFILE" "$IN"
+RET=$?
+cat "$TMPFILE"
+rm -f "$TMPFILE"
+exit $RET


code:
diff -up hplip-3.9.12/prnt/backend/hp.c.retry-open hplip-3.9.12/prnt/backend/hp.c
--- hplip-3.9.12/prnt/backend/hp.c.retry-open	2010-01-05 15:14:30.000000000 +0000
+++ hplip-3.9.12/prnt/backend/hp.c	2010-01-05 15:16:03.521911780 +0000
@@ -741,12 +741,6 @@ int main(int argc, char *argv[])
                      goto bugout;
                   }

-                  if (stat != HPMUD_R_DEVICE_BUSY)
-                  {
-                     BUG("ERROR: open device failed stat=%d: %s\n", stat, argv[0]);
-                     goto bugout;
-                  }
-
                   /* Display user error. */
                   device_event(argv[0], printer, 5000+stat, argv[2], argv[1], argv[3]);


code:
diff -up hplip-3.15.2/scan.py.scan-tmp hplip-3.15.2/scan.py
--- hplip-3.15.2/scan.py.scan-tmp	2015-02-04 15:27:20.423562999 +0100
+++ hplip-3.15.2/scan.py	2015-02-04 15:34:59.170978476 +0100
@@ -1080,7 +1080,7 @@ try:
         if ('editor' in dest or 'viewer' in dest or 'email' in dest or 'print' in dest) \
             and not file_saved:

-            output_fd, output = utils.make_temp_file(suffix='.png')
+            output_fd, output = utils.make_temp_file(dir='/var/tmp', suffix='.png')
             try:
                 im.save(output)
             except IOError as e:
diff -up hplip-3.15.2/scan/sane.py.scan-tmp hplip-3.15.2/scan/sane.py
--- hplip-3.15.2/scan/sane.py.scan-tmp	2015-01-29 13:20:21.000000000 +0100
+++ hplip-3.15.2/scan/sane.py	2015-02-04 15:27:20.424562984 +0100
@@ -425,7 +425,8 @@ class ScanThread(threading.Thread):
         self.dev = device
         self.update_queue = update_queue
         self.event_queue = event_queue
-        self.buffer_fd, self.buffer_path = utils.make_temp_file(prefix='hpscan')
+        self.buffer_fd, self.buffer_path = utils.make_temp_file(dir='/var/tmp',
+                                                                prefix='hpscan')
         self.buffer = os.fdopen(self.buffer_fd, "w+b")
         self.format = -1
         self.format_name = ''


code:
diff -up hplip-3.15.2/base/logger.py.silence-ioerror hplip-3.15.2/base/logger.py
--- hplip-3.15.2/base/logger.py.silence-ioerror	2015-03-16 16:48:12.750337907 +0000
+++ hplip-3.15.2/base/logger.py	2015-03-16 16:48:34.850253564 +0000
@@ -199,6 +199,8 @@ class Logger(object):
                         out.write('\n')

                     out.flush()
+                except IOError:
+                    pass
                 finally:
                     self._lock.release()


code:
diff -up hplip-3.13.4/prnt/drv/hpcups.drv.in.snmp-quirks hplip-3.13.4/prnt/drv/hpcups.drv.in
--- hplip-3.13.4/prnt/drv/hpcups.drv.in.snmp-quirks	2013-04-09 12:11:58.447587815 +0200
+++ hplip-3.13.4/prnt/drv/hpcups.drv.in	2013-04-09 12:11:58.594585761 +0200
@@ -6757,6 +6757,8 @@ Manufacturer "HP"
       Attribute "NickName" "" "HP Officejet Pro 8500 a909a, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet Pro 8500 a909a"
       Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet pro 8500 a909a;DES:officejet pro 8500 a909a;"
+      // This device lies about its supplies capacity.
+      Attribute "cupsSNMPQuirks" "" "capacity"
       PCFileName "hp-officejet_pro_8500_a909a.ppd"
       Attribute "Product" "" "(HP Officejet Pro 8500 All-in-one Printer - a909a)"
     }
@@ -6773,6 +6775,8 @@ Manufacturer "HP"
       Attribute "NickName" "" "HP Officejet Pro 8500 a909g, hpcups $Version"
       Attribute "ShortNickName" "" "HP Officejet Pro 8500 a909g"
       Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet pro 8500 a909g;DES:officejet pro 8500 a909g;"
+      // This device lies about its supplies capacity.
+      Attribute "cupsSNMPQuirks" "" "capacity"
       PCFileName "hp-officejet_pro_8500_a909g.ppd"
       Attribute "Product" "" "(HP Officejet Pro 8500 Wireless All-in-one Printer - a909g)"
     }


code:
diff -up hplip-3.14.10/prnt/hpcups/HPCupsFilter.cpp.strncpy hplip-3.14.10/prnt/hpcups/HPCupsFilter.cpp
--- hplip-3.14.10/prnt/hpcups/HPCupsFilter.cpp.strncpy	2015-01-21 16:52:44.066497631 +0000
+++ hplip-3.14.10/prnt/hpcups/HPCupsFilter.cpp	2015-01-21 16:59:46.216434376 +0000
@@ -203,6 +203,7 @@ HPCupsFilter::HPCupsFilter() : m_pPrinte
     adj_k_width = 0;
     black_raster = NULL;
     color_raster = NULL;
+    memset (&m_JA, 0, sizeof (m_JA));
 }

 HPCupsFilter::~HPCupsFilter()
@@ -384,9 +385,9 @@ DRIVER_ERROR HPCupsFilter::startPage (cu
         m_JA.media_attributes.physical_height = cups_header->PageSize[1];
         m_JA.media_attributes.printable_width = ((cups_header->ImagingBoundingBox[2]-cups_header->ImagingBoundingBox[0]) * horz_res) / 72;
         m_JA.media_attributes.printable_height = ((cups_header->ImagingBoundingBox[3]-cups_header->ImagingBoundingBox[1]) * vert_res) / 72;
-        strncpy(m_JA.media_attributes.PageSizeName, &cups_header->cupsString[0][0], sizeof(m_JA.media_attributes.PageSizeName));
-        strncpy(m_JA.media_attributes.MediaTypeName, cups_header->MediaType, sizeof(m_JA.media_attributes.MediaTypeName));
-        strncpy(m_JA.quality_attributes.hbpl1_print_quality, cups_header->OutputType, sizeof(m_JA.quality_attributes.hbpl1_print_quality));
+        strncpy(m_JA.media_attributes.PageSizeName, &cups_header->cupsString[0][0], sizeof(m_JA.media_attributes.PageSizeName)-1);
+        strncpy(m_JA.media_attributes.MediaTypeName, cups_header->MediaType, sizeof(m_JA.media_attributes.MediaTypeName)-1);
+        strncpy(m_JA.quality_attributes.hbpl1_print_quality, cups_header->OutputType, sizeof(m_JA.quality_attributes.hbpl1_print_quality)-1);
         m_JA.color_mode = cups_header->cupsRowStep;
     }
     else {
diff -up hplip-3.14.10/prnt/hpijs/hpijs.cpp.strncpy hplip-3.14.10/prnt/hpijs/hpijs.cpp
--- hplip-3.14.10/prnt/hpijs/hpijs.cpp.strncpy	2015-01-21 17:00:03.225512410 +0000
+++ hplip-3.14.10/prnt/hpijs/hpijs.cpp	2015-01-21 17:04:59.308870785 +0000
@@ -605,7 +605,7 @@ int main (int argc, char *argv[], char *
    }

    if (argc > 2)
-        strncpy(user_name, argv[2], sizeof(user_name));
+        strncpy(user_name, argv[2], sizeof(user_name) - 1);

 #ifdef HAVE_LIBHPIP
    char *pDev;
diff -up hplip-3.14.10/prnt/hpijs/hpijsfax.cpp.strncpy hplip-3.14.10/prnt/hpijs/hpijsfax.cpp
--- hplip-3.14.10/prnt/hpijs/hpijsfax.cpp.strncpy	2015-01-21 17:05:06.585904171 +0000
+++ hplip-3.14.10/prnt/hpijs/hpijsfax.cpp	2015-01-21 17:05:15.787946389 +0000
@@ -282,7 +282,7 @@ int hpijsFaxServer (int argc, char **arg
 	char user_name[32]={0,};

    if (argc > 2)
-        strncpy(user_name, argv[2], sizeof(user_name));
+        strncpy(user_name, argv[2], sizeof(user_name) - 1);

     snprintf(hpFileName,sizeof(hpFileName),"%s/hp_%s_ijsfax_Log_XXXXXX",CUPS_TMP_DIR, user_name);


code:
diff -up hplip-3.9.6b/prnt/hpijs/dj3320.cpp.strstr-const hplip-3.9.6b/prnt/hpijs/dj3320.cpp
--- hplip-3.9.6b/prnt/hpijs/dj3320.cpp.strstr-const	2009-06-25 21:02:29.000000000 +0100
+++ hplip-3.9.6b/prnt/hpijs/dj3320.cpp	2009-07-27 16:14:52.868542337 +0100
@@ -405,7 +405,7 @@ DISPLAY_STATUS DJ3320::ParseError (BYTE
 {
     DRIVER_ERROR err = NO_ERROR;
     BYTE byDevIDBuffer[DevIDBuffSize];
-    char *pcStr = NULL;
+    const char *pcStr = NULL;
     BYTE byStatus1, byStatus2;

     memset(byDevIDBuffer, 0, sizeof(byDevIDBuffer));
diff -up hplip-3.9.6b/prnt/hpijs/registry.cpp.strstr-const hplip-3.9.6b/prnt/hpijs/registry.cpp
--- hplip-3.9.6b/prnt/hpijs/registry.cpp.strstr-const	2009-06-25 21:02:29.000000000 +0100
+++ hplip-3.9.6b/prnt/hpijs/registry.cpp	2009-07-27 16:18:41.583417187 +0100
@@ -290,14 +290,14 @@ DRIVER_ERROR DeviceRegistry::SelectDevic
         err = pSS->GetDeviceID(DevIDBuffer, DevIDBuffSize, FALSE);
         ERRCHECK;   // should be either NO_ERROR or BAD_DEVICE_ID

-		char	*cmdStr = (char *) strstr ((const char *) DevIDBuffer+2, "CMD:");
+	char	*cmdStr = strstr ((char *) DevIDBuffer+2, "CMD:");
         char    *cmdStrEnd;
         if ((strstr((const char *) DevIDBuffer+2,"CMD:LDL")))
         {
             device = eDJ3320;
             match = TRUE;
         }
-        if (!match && cmdStr && (cmdStrEnd = (char *) strstr (cmdStr, ";")))
+        if (!match && cmdStr && (cmdStrEnd = strstr (cmdStr, ";")))
         {
             *cmdStrEnd = '\0';
             if (strstr (cmdStr, "LDL"))
@@ -309,12 +309,12 @@ DRIVER_ERROR DeviceRegistry::SelectDevic
         }
 		if (!match && !cmdStr)
 		{
-			cmdStr = (char *) strstr ((const char *) DevIDBuffer+2, "COMMAND SET:");
+			cmdStr = strstr ((char *) DevIDBuffer+2, "COMMAND SET:");
 		}
-		if (!match && cmdStr && (strstr ((const char *) cmdStr+4, "POSTSCRIPT") ||
-			                     strstr ((const char *) cmdStr+4, "PostScript") ||
-					             strstr ((const char *) cmdStr+4, "Postscript") ||
-					             strstr ((const char *) cmdStr+4, "postscript") ))
+		if (!match && cmdStr && (strstr (cmdStr+4, "POSTSCRIPT") ||
+			                     strstr (cmdStr+4, "PostScript") ||
+					             strstr (cmdStr+4, "Postscript") ||
+					             strstr (cmdStr+4, "postscript") ))
 		{
 			device = ePScript;
 			match = TRUE;


code:
diff -up hplip-3.15.11/Makefile.am.udev-rules hplip-3.15.11/Makefile.am
--- hplip-3.15.11/Makefile.am.udev-rules	2015-11-12 11:29:04.000000000 +0100
+++ hplip-3.15.11/Makefile.am	2015-12-10 12:43:11.518518146 +0100
@@ -118,7 +118,7 @@ rulessystemdir=/usr/lib/systemd/system
 dist_rulessystem_DATA =data/rules/hplip-printer@.service

 # hpmud.rules
-rulesdir = /etc/udev/rules.d
+rulesdir = /lib/udev/rules.d
 if UDEV_SYSFS_RULES
 dist_rules_DATA = data/rules/56-hpmud_sysfs.rules
 else


code:
diff -up hplip-3.12.11/base/utils.py.ui-optional hplip-3.12.11/base/utils.py
--- hplip-3.12.11/base/utils.py.ui-optional	2012-11-20 10:55:15.000000000 +0100
+++ hplip-3.12.11/base/utils.py	2012-11-27 10:03:21.909512264 +0100
@@ -667,6 +667,13 @@ def checkPyQtImport(): # qt3
         if os.getenv('DISPLAY') and os.getenv('STARTED_FROM_MENU'):
             no_qt_message_gtk()

+        # hplip-gui sub-package (Fedora)
+        try:
+            import ui
+        except ImportError:
+            log.error("hplip-gui not installed.  GUI not available. Exiting.")
+            return False
+
         log.error("PyQt not installed. GUI not available. Exiting.")
         return False

@@ -712,7 +719,8 @@ def checkPyQtImport4():
         import PyQt4
         import ui4
     except ImportError:
-        log.error("HPLIP is not installed properly or is installed without graphical support. Please reinstall HPLIP")
+        # hplip-gui sub-package (Fedora) requires PyQt4
+        log.error("Install the hplip-gui package for graphical support.")
         return False
     else:
         return True


code:
--- prnt/filters/hpps	2016-08-26 12:04:29.000000000 +0200
+++ prnt/filters/hpps.new	2016-08-31 21:19:57.868640372 +0200
@@ -191,11 +191,11 @@
             msg("Setting Pin to default")
     else:
         szKeyInitials = ['HPFIDigit', 'HPSEDigit', 'HPTHDigit', 'HPFTDigit']
-	for x in szKeyInitials:
+    for x in szKeyInitials:
            try:
-	        secpin += opts[x]
+            secpin += opts[x]
            except KeyError:
-	        secpin += '0'
+            secpin += '0'

     os.write(output_fd, to_bytes_utf8('@PJL SET HOLDKEY="%s"\x0a' % secpin))


code: hpaio

path: hardware/printer/hplip/files/hpaio