summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/mongoose/examples/send_file/send_file.c
diff options
context:
space:
mode:
author Miodrag Milanovic <mmicko@gmail.com>2015-01-10 13:30:30 +0100
committer Miodrag Milanovic <mmicko@gmail.com>2015-01-10 13:30:30 +0100
commit8556d0cdf7058be2c519bd4d8e7006ea9e913527 (patch)
tree09594058dc17564b4ff3c106581d0856cf69c2d5 /3rdparty/mongoose/examples/send_file/send_file.c
parent61f7cd05dfed932dd1be927608a4989c187cc737 (diff)
Added integral source of mongoose (nw)
Diffstat (limited to '3rdparty/mongoose/examples/send_file/send_file.c')
-rw-r--r--3rdparty/mongoose/examples/send_file/send_file.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/3rdparty/mongoose/examples/send_file/send_file.c b/3rdparty/mongoose/examples/send_file/send_file.c
new file mode 100644
index 00000000000..345c3af694b
--- /dev/null
+++ b/3rdparty/mongoose/examples/send_file/send_file.c
@@ -0,0 +1,27 @@
+// Copyright (c) 2014 Cesanta Software
+// All rights reserved
+//
+// This example demostrates how to send arbitrary files to the client.
+
+#include "mongoose.h"
+
+static int ev_handler(struct mg_connection *conn, enum mg_event ev) {
+ switch (ev) {
+ case MG_REQUEST:
+ mg_send_file(conn, "send_file.c", NULL); // Also could be a dir, or CGI
+ return MG_MORE; // It is important to return MG_MORE after mg_send_file!
+ case MG_AUTH: return MG_TRUE;
+ default: return MG_FALSE;
+ }
+}
+
+int main(void) {
+ struct mg_server *server = mg_create_server(NULL, ev_handler);
+ mg_set_option(server, "listening_port", "8080");
+
+ printf("Starting on port %s\n", mg_get_option(server, "listening_port"));
+ for (;;) mg_poll_server(server, 1000);
+ mg_destroy_server(&server);
+
+ return 0;
+}