summaryrefslogtreecommitdiff
path: root/cgi-bin
diff options
context:
space:
mode:
authormsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>2010-07-08 20:45:48 +0000
committermsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>2010-07-08 20:45:48 +0000
commitc7017eccd21da514f345a5c7a41156b1adf7cb35 (patch)
tree155dfe5c7696ab6789d31cc7bfc5eb0874eecb11 /cgi-bin
parentcc75483441ba4241a6b0079e028d7699d99a6b0f (diff)
downloadcups-c7017eccd21da514f345a5c7a41156b1adf7cb35.tar.gz
Merge changes from CUPS 1.5svn-r9198.
git-svn-id: svn+ssh://src.apple.com/svn/cups/easysw/current@2309 a1ca3aef-8c08-0410-bb20-df032aa958be
Diffstat (limited to 'cgi-bin')
-rw-r--r--cgi-bin/admin.c6
-rw-r--r--cgi-bin/ipp-var.c8
-rw-r--r--cgi-bin/var.c5
3 files changed, 12 insertions, 7 deletions
diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c
index d8527cdb8..b890c8b99 100644
--- a/cgi-bin/admin.c
+++ b/cgi-bin/admin.c
@@ -951,8 +951,6 @@ do_am_printer(http_t *http, /* I - HTTP connection */
if (!cgiGetVariable("CURRENT_MAKE"))
cgiSetVariable("CURRENT_MAKE", make);
- cgiSetVariable("PPD_MAKE", make);
-
if (!cgiGetVariable("CURRENT_MAKE_AND_MODEL"))
cgiSetVariable("CURRENT_MAKE_AND_MODEL", uriptr);
@@ -1218,8 +1216,8 @@ do_am_printer(http_t *http, /* I - HTTP connection */
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
NULL, "ipp://localhost/printers/");
- if ((var = cgiGetVariable("CURRENT_MAKE")) == NULL)
- var = cgiGetVariable("PPD_MAKE");
+ if ((var = cgiGetVariable("PPD_MAKE")) == NULL)
+ var = cgiGetVariable("CURRENT_MAKE");
if (var && !cgiGetVariable("SELECT_MAKE"))
{
const char *make_model; /* Make and model */
diff --git a/cgi-bin/ipp-var.c b/cgi-bin/ipp-var.c
index 4c1eb3b95..fe9bc52db 100644
--- a/cgi-bin/ipp-var.c
+++ b/cgi-bin/ipp-var.c
@@ -285,10 +285,14 @@ cgiMoveJobs(http_t *http, /* I - Connection to server */
/*
- * See who is logged in...
+ * Make sure we have a username...
*/
- user = getenv("REMOTE_USER");
+ if ((user = getenv("REMOTE_USER")) == NULL)
+ {
+ puts("Status: 401\n");
+ exit(0);
+ }
/*
* See if the user has already selected a new destination...
diff --git a/cgi-bin/var.c b/cgi-bin/var.c
index 0ec9800cb..9a37b35e7 100644
--- a/cgi-bin/var.c
+++ b/cgi-bin/var.c
@@ -1111,6 +1111,9 @@ cgi_initialize_string(const char *data) /* I - Form data string */
* Read the hex code...
*/
+ if (!isxdigit(data[1] & 255) || !isxdigit(data[2] & 255))
+ return (0);
+
if (s < (value + sizeof(value) - 1))
{
data ++;
@@ -1232,7 +1235,7 @@ cgi_set_sid(void)
_cupsMD5Append(&md5, (unsigned char *)buffer, (int)strlen(buffer));
_cupsMD5Finish(&md5, sum);
- cgiSetCookie(CUPS_SID, httpMD5String(sum, sid), "/", server_name, 0, 0);
+ cgiSetCookie(CUPS_SID, httpMD5String(sum, sid), "/", NULL, 0, 0);
return (cupsGetOption(CUPS_SID, num_cookies, cookies));
}