Re-implemented the element name encoding as Adams suggestion: <e tag="value"> when...
[yaz-moved-to-github.git] / src / http.c
index 60cef68..4362c75 100644 (file)
@@ -1,8 +1,6 @@
-/*
- * Copyright (C) 1995-2007, Index Data ApS
+/* This file is part of the YAZ toolkit.
+ * Copyright (C) 1995-2010 Index Data
  * See the file LICENSE for details.
- *
- * $Id: http.c,v 1.3 2007-09-06 17:11:59 mike Exp $
  */
 
 /**
@@ -14,6 +12,7 @@
 #include <yaz/odr.h>
 #include <yaz/yaz-version.h>
 #include <yaz/yaz-iconv.h>
+#include <yaz/matchstr.h>
 #include <yaz/zgdu.h>
 
 #ifdef WIN32
@@ -234,9 +233,9 @@ void z_HTTP_header_add_basic_auth(ODR o, Z_HTTP_Header **hp,
         return;
 
     len = strlen(username) + strlen(password);
-    tmp = odr_malloc(o, len+2);
+    tmp = (char *) odr_malloc(o, len+2);
     sprintf(tmp, "%s:%s", username, password);
-    buf = odr_malloc(o, (len+1) * 8/6 + 12);
+    buf = (char *) odr_malloc(o, (len+1) * 8/6 + 12);
     strcpy(buf, "Basic ");
     yaz_base64encode(tmp, &buf[strlen(buf)]);
     z_HTTP_header_add(o, hp, "Authorization", buf);
@@ -334,20 +333,21 @@ Z_GDU *z_get_HTTP_Response(ODR o, int code)
     if (code != 200)
     {
         hres->content_buf = (char*) odr_malloc(o, 400);
-        sprintf (hres->content_buf, 
-                 "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n"
-                 "<HTML>\n"
-                 " <HEAD>\n"
-                 "  <TITLE>YAZ " YAZ_VERSION "</TITLE>\n"
-                 " </HEAD>\n"
-                 " <BODY>\n"
-                 "  <P><A HREF=\"http://www.indexdata.dk/yaz/\">YAZ</A> " 
-                 YAZ_VERSION "</P>\n"
-                 "  <P>Error: %d</P>\n"
-                 "  <P>Description: %.50s</P>\n"
-                 " </BODY>\n"
-                 "</HTML>\n",
-                 code, z_HTTP_errmsg(code));
+        sprintf(hres->content_buf, 
+                "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\""
+                " \"http://www.w3.org/TR/html4/strict.dtd\">\n"
+                "<HTML>\n"
+                " <HEAD>\n"
+                "  <TITLE>YAZ " YAZ_VERSION "</TITLE>\n"
+                " </HEAD>\n"
+                " <BODY>\n"
+                "  <P><A HREF=\"http://www.indexdata.com/yaz/\">YAZ</A> " 
+                YAZ_VERSION "</P>\n"
+                "  <P>Error: %d</P>\n"
+                "  <P>Description: %.50s</P>\n"
+                " </BODY>\n"
+                "</HTML>\n",
+                code, z_HTTP_errmsg(code));
         hres->content_len = strlen(hres->content_buf);
         z_HTTP_header_add(o, &hres->headers, "Content-Type", "text/html");
     }
@@ -545,6 +545,7 @@ int yaz_encode_http_request(ODR o, Z_HTTP_Request *hr)
 /*
  * Local variables:
  * c-basic-offset: 4
+ * c-file-style: "Stroustrup"
  * indent-tabs-mode: nil
  * End:
  * vim: shiftwidth=4 tabstop=8 expandtab