[prev in list] [next in list] [prev in thread] [next in thread] 

List:       cups-commit
Subject:    [cups.commit] [CUPS] r9713 - trunk/scheduler
From:       cups-dev () easysw ! com
Date:       2011-04-22 18:36:05
Message-ID: 10484-cups.commit () news ! easysw ! com
[Download RAW message or body]

Author: mike
Date: 2011-04-22 11:36:05 -0700 (Fri, 22 Apr 2011)
New Revision: 9713
Log:
Add AUTH_INFO_REQUIRED environment variable to let backends know what type of
authentication is expected.


Modified:
   trunk/scheduler/job.c

Modified: trunk/scheduler/job.c
===================================================================
--- trunk/scheduler/job.c	2011-04-22 17:53:36 UTC (rev 9712)
+++ trunk/scheduler/job.c	2011-04-22 18:36:05 UTC (rev 9713)
@@ -479,7 +479,7 @@
 					/* Job title string */
 			copies[255],	/* # copies string */
 			*options,	/* Options string */
-			*envp[MAX_ENV + 19],
+			*envp[MAX_ENV + 20],
 					/* Environment variables */
 			charset[255],	/* CHARSET env variable */
 			class_name[255],/* CLASS env variable */
@@ -496,6 +496,8 @@
 			apple_language[255],
 					/* APPLE_LANGUAGE env variable */
 #endif /* __APPLE__ */
+			auth_info_required[255],
+					/* AUTH_INFO_REQUIRED env variable */
 			ppd[1024],	/* PPD env variable */
 			printer_info[255],
 					/* PRINTER_INFO env variable */
@@ -878,6 +880,32 @@
   snprintf(printer_name, sizeof(printer_name), "PRINTER=%s", job->printer->name);
   snprintf(rip_max_cache, sizeof(rip_max_cache), "RIP_MAX_CACHE=%s", RIPCache);
 
+  if (job->printer->num_auth_info_required == 1)
+    snprintf(auth_info_required, sizeof(auth_info_required),
+             "AUTH_INFO_REQUIRED=%s",
+	     job->printer->auth_info_required[0]);
+  else if (job->printer->num_auth_info_required == 2)
+    snprintf(auth_info_required, sizeof(auth_info_required),
+             "AUTH_INFO_REQUIRED=%s,%s",
+	     job->printer->auth_info_required[0],
+	     job->printer->auth_info_required[1]);
+  else if (job->printer->num_auth_info_required == 3)
+    snprintf(auth_info_required, sizeof(auth_info_required),
+             "AUTH_INFO_REQUIRED=%s,%s,%s",
+	     job->printer->auth_info_required[0],
+	     job->printer->auth_info_required[1],
+	     job->printer->auth_info_required[2]);
+  else if (job->printer->num_auth_info_required == 4)
+    snprintf(auth_info_required, sizeof(auth_info_required),
+             "AUTH_INFO_REQUIRED=%s,%s,%s,%s",
+	     job->printer->auth_info_required[0],
+	     job->printer->auth_info_required[1],
+	     job->printer->auth_info_required[2],
+	     job->printer->auth_info_required[3]);
+  else
+    strlcpy(auth_info_required, "AUTH_INFO_REQUIRED=none",
+	    sizeof(auth_info_required));
+
   envc = cupsdLoadEnv(envp, (int)(sizeof(envp) / sizeof(envp[0])));
 
   envp[envc ++] = charset;
@@ -938,6 +966,7 @@
     envp[envc ++] = class_name;
   }
 
+  envp[envc ++] = auth_info_required;
   if (job->auth_username)
     envp[envc ++] = job->auth_username;
   if (job->auth_domain)

_______________________________________________
cups-commit mailing list
cups-commit@easysw.com
http://lists.easysw.com/mailman/listinfo/cups-commit
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic