/*
- * "$Id$"
- *
* CGI form variable and array functions for CUPS.
*
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2015 by Apple Inc.
* Copyright 1997-2005 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
printf(" expires=%s;", httpGetDateString2(expires, date, sizeof(date)));
}
if (secure)
- puts(" secure;");
+ puts(" httponly; secure;");
else
- putchar('\n');
+ puts(" httponly;");
}
while (*cookie)
{
+ int skip = 0; /* Skip this cookie? */
+
/*
* Skip leading whitespace...
*/
for (ptr = name; *cookie && *cookie != '=';)
if (ptr < (name + sizeof(name) - 1))
+ {
*ptr++ = *cookie++;
+ }
else
- break;
+ {
+ skip = 1;
+ cookie ++;
+ }
if (*cookie != '=')
break;
{
for (cookie ++, ptr = value; *cookie && *cookie != '\"';)
if (ptr < (value + sizeof(value) - 1))
+ {
*ptr++ = *cookie++;
+ }
else
- break;
+ {
+ skip = 1;
+ cookie ++;
+ }
if (*cookie == '\"')
cookie ++;
+ else
+ skip = 1;
}
else
{
for (ptr = value; *cookie && *cookie != ';';)
if (ptr < (value + sizeof(value) - 1))
+ {
*ptr++ = *cookie++;
+ }
else
- break;
+ {
+ skip = 1;
+ cookie ++;
+ }
}
if (*cookie == ';')
cookie ++;
else if (*cookie)
- break;
+ skip = 1;
*ptr = '\0';
* "$"...
*/
- if (name[0] != '$')
+ if (name[0] != '$' && !skip)
num_cookies = cupsAddOption(name, value, num_cookies, &cookies);
}
}
form_file = NULL;
}
}
-
-
-/*
- * End of "$Id$".
- */