]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb/unittest/cgi_test.c
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / third_party / prometheus-cpp / 3rdparty / civetweb / unittest / cgi_test.c
diff --git a/ceph/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb/unittest/cgi_test.c b/ceph/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb/unittest/cgi_test.c
new file mode 100644 (file)
index 0000000..bd446c0
--- /dev/null
@@ -0,0 +1,40 @@
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#if defined(_WIN32) || defined(WIN32) || defined(WINDOWS)
+#include <fcntl.h>
+#include <io.h>
+#endif
+
+int
+main(int argc, char *argv[])
+{
+       char buf[1024];
+       size_t rec_len = 0;
+       const char *response_header = "Content-Type: text/plain\r\n"
+                                     "Connection: close\r\n"
+                                     "\r\n";
+       const char *req_method = getenv("REQUEST_METHOD");
+       const char *con_length = getenv("CONTENT_LENGTH");
+
+#if defined(_WIN32) || defined(WIN32) || defined(WINDOWS)
+       _setmode(_fileno(stdin), _O_BINARY);
+       _setmode(_fileno(stdout), _O_BINARY);
+#endif
+
+       /* Write the response header with \r\n */
+       fwrite(response_header, 1, strlen(response_header), stdout);
+
+       /* Headline for generated reply: */
+       printf("Got message:\n  Method: %s\n  Content-Length: %s\n  Content: ",
+              req_method,
+              con_length ? con_length : "not set");
+
+       /* Read all data from stdin and send it to stdout */
+       while ((rec_len = fread(buf, 1, sizeof(buf) - 1, stdin)) > 0) {
+               fwrite(buf, 1, rec_len, stdout);
+       }
+
+       return 0;
+}