# This patch removes Apache's ability to perform anything else than a
# simple GET and POST request.  Also obfuscates the Server: header.

--- ./apache_1.3.27/src/include/httpd.h Mon Sep 30 11:35:21 2002
+++ ./apache_secure_1.3.27/src/include/httpd.h  Fri Oct  4 11:07:07 2002
@@ -428,6 +428,10 @@
 #define SERVER_BASEVENDOR   "Apache Group"
 #define SERVER_BASEPRODUCT  "Apache"
 #define SERVER_BASEREVISION "1.3.27"
+
+#define SERVER_BASEVENDOR   ""
+#define SERVER_BASEPRODUCT  "webserver"
+#define SERVER_BASEREVISION ""
 #define SERVER_BASEVERSION  SERVER_BASEPRODUCT "/" SERVER_BASEREVISION

 #define SERVER_PRODUCT  SERVER_BASEPRODUCT

--- ./apache_1.3.27/src/main/http_protocol.c    Mon Sep 16 20:09:19 2002
+++ ./apache_secure_1.3.27/src/main/http_protocol.c     Fri Oct  4 10:59:27 2002
@@ -805,10 +805,6 @@
 API_EXPORT(int) ap_method_number_of(const char *method)
 {
     switch (*method) {
-        case 'H':
-           if (strcmp(method, "HEAD") == 0)
-               return M_GET;   /* see header_only in request_rec */
-           break;
         case 'G':
            if (strcmp(method, "GET") == 0)
                return M_GET;
@@ -816,46 +812,6 @@
         case 'P':
            if (strcmp(method, "POST") == 0)
                return M_POST;
-           if (strcmp(method, "PUT") == 0)
-               return M_PUT;
-           if (strcmp(method, "PATCH") == 0)
-               return M_PATCH;
-           if (strcmp(method, "PROPFIND") == 0)
-               return M_PROPFIND;
-           if (strcmp(method, "PROPPATCH") == 0)
-               return M_PROPPATCH;
-           break;
-        case 'D':
-           if (strcmp(method, "DELETE") == 0)
-               return M_DELETE;
-           break;
-        case 'C':
-           if (strcmp(method, "CONNECT") == 0)
-               return M_CONNECT;
-           if (strcmp(method, "COPY") == 0)
-               return M_COPY;
-           break;
-        case 'M':
-           if (strcmp(method, "MKCOL") == 0)
-               return M_MKCOL;
-           if (strcmp(method, "MOVE") == 0)
-               return M_MOVE;
-           break;
-        case 'O':
-           if (strcmp(method, "OPTIONS") == 0)
-               return M_OPTIONS;
-           break;
-        case 'T':
-           if (strcmp(method, "TRACE") == 0)
-               return M_TRACE;
-           break;
-        case 'L':
-           if (strcmp(method, "LOCK") == 0)
-               return M_LOCK;
-           break;
-        case 'U':
-           if (strcmp(method, "UNLOCK") == 0)
-               return M_UNLOCK;
            break;
     }
     return M_INVALID;
