diff -Nru cups-1.5.3/debian/changelog cups-1.5.3/debian/changelog --- cups-1.5.3/debian/changelog 2012-08-20 12:18:50.000000000 +0200 +++ cups-1.5.3/debian/changelog 2012-11-21 14:46:26.000000000 +0100 @@ -1,3 +1,10 @@ +cups (1.5.3-0ubuntu5) precise-proposed; urgency=low + + * debian/patches/airprint-support.patch: Made AirPrint support also working + for iOS 6 (LP: #1054495). + + -- Till Kamppeter Wed, 21 Nov 2012 14:46:01 +0100 + cups (1.5.3-0ubuntu4) precise-proposed; urgency=low * debian/patches/usb-backend-reset-after-job-only-for-specific-devices.patch: diff -Nru cups-1.5.3/debian/patches/airprint-support.patch cups-1.5.3/debian/patches/airprint-support.patch --- cups-1.5.3/debian/patches/airprint-support.patch 2012-05-23 15:26:27.000000000 +0200 +++ cups-1.5.3/debian/patches/airprint-support.patch 2012-11-21 14:29:01.000000000 +0100 @@ -15,13 +15,53 @@ cupsdSetString(&LPDConfigFile, CUPS_DEFAULT_LPD_CONFIG_FILE); --- a/scheduler/dirsvc.c +++ b/scheduler/dirsvc.c -@@ -2522,6 +2522,9 @@ +@@ -2522,6 +2522,12 @@ keyvalue[i ][0] = "pdl"; keyvalue[i++][1] = p->pdl ? p->pdl : "application/postscript"; ++ /* iOS 6 does not accept this printer as AirPrint printer if there is ++ no URF txt record or "URF=none", "DM3" is the minimum needed found ++ by try and error */ + keyvalue[i ][0] = "URF"; -+ keyvalue[i++][1] = "none"; ++ keyvalue[i++][1] = "DM3"; + if (get_auth_info_required(p, air_str, sizeof(air_str))) { keyvalue[i ][0] = "air"; +--- a/conf/mime.convs.in ++++ b/conf/mime.convs.in +@@ -86,6 +86,9 @@ + # PWG Raster filter for IPP Everywhere... + application/vnd.cups-raster image/pwg-raster 100 rastertopwg + ++# Needed for printing from iOS (AirPrint) clients ++image/urf application/pdf 100 - ++ + ######################################################################## + # + # Raw filter... +--- a/conf/mime.types ++++ b/conf/mime.types +@@ -110,6 +110,9 @@ + image/x-bitmap bmp string(0,BM) + !printable(2,14) + image/x-icon ico + ++# Needed for printing from iOS (AirPrint) clients ++image/urf urf string(0,UNIRAST<00>) ++ + ######################################################################## + # + # Text files... +--- a/scheduler/printers.c ++++ b/scheduler/printers.c +@@ -3908,7 +3908,9 @@ + } + else if (!_cups_strcasecmp(type->super, "image")) + { +- if (!_cups_strcasecmp(type->type, "jpeg")) ++ if (!_cups_strcasecmp(type->type, "urf")) ++ strlcat(pdl, "image/urf,", sizeof(pdl)); ++ else if (!_cups_strcasecmp(type->type, "jpeg")) + strlcat(pdl, "image/jpeg,", sizeof(pdl)); + else if (!_cups_strcasecmp(type->type, "png")) + strlcat(pdl, "image/png,", sizeof(pdl));