diff options
author | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2010-07-08 20:45:48 +0000 |
---|---|---|
committer | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2010-07-08 20:45:48 +0000 |
commit | c7017eccd21da514f345a5c7a41156b1adf7cb35 (patch) | |
tree | 155dfe5c7696ab6789d31cc7bfc5eb0874eecb11 /cgi-bin | |
parent | cc75483441ba4241a6b0079e028d7699d99a6b0f (diff) | |
download | cups-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.c | 6 | ||||
-rw-r--r-- | cgi-bin/ipp-var.c | 8 | ||||
-rw-r--r-- | cgi-bin/var.c | 5 |
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)); } |