+
+ if ( (found = strstr(methods, SG(request_info).request_method)) &&
+ (found == SG(request_info).request_method || !isalpha(found[-1])) &&
+ (!isalpha(found[strlen(SG(request_info).request_method) + 1]))) {
+ return;
+ }
+
+ header = emalloc(length + sizeof("Allow: "));
+ sprintf(header, "Allow: %s", methods);
+ http_send_header(header);
+ efree(header);
+ http_send_status(405);
+ zend_bailout();