bptr++;
}
keylen = aptr - up - 1; /* -1 -> '=' */
- if(keylen > sizeof(u->url_key)) {
+ if(keylen >= sizeof(u->url_key)) {
syslog(1, "invalid url_key from %s", ChrPtr(WCC->Hdr->HR.browser_host));
return;
}
long keylen;
#ifdef DEBUG_URLSTRINGS
- syslog(9, "upload_handler() name=%s, type=%s, len=%d", name, cbtype, length);
+ syslog(9, "upload_handler() name=%s, type=%s, len="SIZE_T_FMT, name, cbtype, length);
#endif
if (WCC->Hdr->urlstrings == NULL)
WCC->Hdr->urlstrings = NewHash(1, NULL);
}
-
-
void PutBstr(const char *key, long keylen, StrBuf *Value)
{
urlcontent *u;
wcsession *WCC = WC;
- if(keylen > sizeof(u->url_key)) {
+ if(keylen >= sizeof(u->url_key)) {
syslog(1, "invalid url_key from %s", ChrPtr(WCC->Hdr->HR.browser_host));
FreeStrBuf(&Value);
return;
u->url_data = Value;
Put(WC->Hdr->urlstrings, u->url_key, keylen, u, free_url);
}
+void PutlBstr(const char *key, long keylen, long Value)
+{
+ StrBuf *Buf;
+
+ Buf = NewStrBufPlain(NULL, sizeof(long) * 16);
+ StrBufPrintf(Buf, "%ld", Value);
+ PutBstr(key, keylen, Buf);
+}
RegisterNamespace("BSTR:PAIR:X", 1, 2, tmplput_bstr_pair_x, NULL, CTX_BSTRPAIRS);
RegisterNamespace("BSTR:PAIR:Y", 1, 2, tmplput_bstr_pair_y, NULL, CTX_BSTRPAIRS);
- RegisterConditional(HKEY("COND:BSTR"), 1, ConditionalBstr, CTX_NONE);
+ RegisterConditional("COND:BSTR", 1, ConditionalBstr, CTX_NONE);
RegisterNamespace("BSTR", 1, 2, tmplput_bstr, NULL, CTX_NONE);
RegisterNamespace("BSTR:FORWARD", 1, 2, tmplput_bstrforward, NULL, CTX_NONE);
RegisterNamespace("URLPART", 1, 2, tmplput_url_part, NULL, CTX_NONE);