]> code.citadel.org Git - citadel.git/blobdiff - webcit/webcit.c
* xbstr now will give the length of the value to its key, so working with it is more...
[citadel.git] / webcit / webcit.c
index f578fe98ba529a42ca1fad9b29659ae9bc7e6ceb..ced1d04edb5a95a1154383bf2b2a25cd32d68d29 100644 (file)
@@ -176,6 +176,21 @@ const char *BSTR(char *key)
                return ("");
 }
 
+const char *XBSTR(char *key, size_t *len)
+{
+       void *U;
+
+       if ((WC->urlstrings != NULL) &&
+           GetHash(WC->urlstrings, key, strlen (key), &U)){
+               *len = ((urlcontent *)U)->url_data_size;
+               return ((urlcontent *)U)->url_data;
+       }
+       else {
+               *len = 0;
+               return ("");
+       }
+}
+
 const char *Bstr(char *key, size_t keylen)
 {
        void *U;
@@ -187,6 +202,21 @@ const char *Bstr(char *key, size_t keylen)
                return ("");
 }
 
+const char *XBstr(char *key, size_t keylen, size_t *len)
+{
+       void *U;
+
+       if ((WC->urlstrings != NULL) && 
+           GetHash(WC->urlstrings, key, keylen, &U)) {
+               *len = ((urlcontent *)U)->url_data_size;
+               return ((urlcontent *)U)->url_data;
+       }
+       else {
+               *len = 0;
+               return ("");
+       }
+}
+
 /**
  * \brief web-printing funcion. uses our vsnprintf wrapper
  * \param format printf format string