diff --git a/minimal-examples/README.md b/minimal-examples/README.md new file mode 100644 index 00000000..84e17de7 --- /dev/null +++ b/minimal-examples/README.md @@ -0,0 +1,5 @@ +|name|demonstrates| +---|--- +server|Minimal examples providing a server +client|Minimal examples providing a client +client-server|Minimal examples providing client and server connections simultaneously diff --git a/minimal-examples/client-server/README.md b/minimal-examples/client-server/README.md new file mode 100644 index 00000000..7339c616 --- /dev/null +++ b/minimal-examples/client-server/README.md @@ -0,0 +1,3 @@ +|name|demonstrates| +---|--- +minimal-ws-proxy|Serves an index.html over http that connects back to the ws server, and maintains a ws client connection of its own at the same time to https://libwebsockets.org dumb-increment-protocol to feed a ringbuffer that is sent to all connected browsers. diff --git a/minimal-examples/minimal-ws-proxy/CMakeLists.txt b/minimal-examples/client-server/minimal-ws-proxy/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-ws-proxy/CMakeLists.txt rename to minimal-examples/client-server/minimal-ws-proxy/CMakeLists.txt diff --git a/minimal-examples/minimal-ws-proxy/README.md b/minimal-examples/client-server/minimal-ws-proxy/README.md similarity index 100% rename from minimal-examples/minimal-ws-proxy/README.md rename to minimal-examples/client-server/minimal-ws-proxy/README.md diff --git a/minimal-examples/minimal-ws-proxy/minimal-ws-proxy.c b/minimal-examples/client-server/minimal-ws-proxy/minimal-ws-proxy.c similarity index 100% rename from minimal-examples/minimal-ws-proxy/minimal-ws-proxy.c rename to minimal-examples/client-server/minimal-ws-proxy/minimal-ws-proxy.c diff --git a/minimal-examples/minimal-http-server-smp/mount-origin/favicon.ico b/minimal-examples/client-server/minimal-ws-proxy/mount-origin/favicon.ico similarity index 100% rename from minimal-examples/minimal-http-server-smp/mount-origin/favicon.ico rename to minimal-examples/client-server/minimal-ws-proxy/mount-origin/favicon.ico diff --git a/minimal-examples/minimal-ws-proxy/mount-origin/index.html b/minimal-examples/client-server/minimal-ws-proxy/mount-origin/index.html similarity index 100% rename from minimal-examples/minimal-ws-proxy/mount-origin/index.html rename to minimal-examples/client-server/minimal-ws-proxy/mount-origin/index.html diff --git a/minimal-examples/minimal-http-server-smp/mount-origin/libwebsockets.org-logo.png b/minimal-examples/client-server/minimal-ws-proxy/mount-origin/libwebsockets.org-logo.png similarity index 100% rename from minimal-examples/minimal-http-server-smp/mount-origin/libwebsockets.org-logo.png rename to minimal-examples/client-server/minimal-ws-proxy/mount-origin/libwebsockets.org-logo.png diff --git a/minimal-examples/minimal-ws-proxy/protocol_lws_minimal.c b/minimal-examples/client-server/minimal-ws-proxy/protocol_lws_minimal.c similarity index 100% rename from minimal-examples/minimal-ws-proxy/protocol_lws_minimal.c rename to minimal-examples/client-server/minimal-ws-proxy/protocol_lws_minimal.c diff --git a/minimal-examples/client/README.md b/minimal-examples/client/README.md new file mode 100644 index 00000000..11af3e22 --- /dev/null +++ b/minimal-examples/client/README.md @@ -0,0 +1,4 @@ +|name|demonstrates| +---|--- +minimal-http-client|Connects to and reads https://warmcat.com +minimal-ws-client|Connects to the dumb-increment-protocol wss server at https://libwebsockets.org diff --git a/minimal-examples/minimal-http-client/CMakeLists.txt b/minimal-examples/client/minimal-http-client/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-http-client/CMakeLists.txt rename to minimal-examples/client/minimal-http-client/CMakeLists.txt diff --git a/minimal-examples/minimal-http-client/README.md b/minimal-examples/client/minimal-http-client/README.md similarity index 100% rename from minimal-examples/minimal-http-client/README.md rename to minimal-examples/client/minimal-http-client/README.md diff --git a/minimal-examples/minimal-http-client/minimal-http-client.c b/minimal-examples/client/minimal-http-client/minimal-http-client.c similarity index 100% rename from minimal-examples/minimal-http-client/minimal-http-client.c rename to minimal-examples/client/minimal-http-client/minimal-http-client.c diff --git a/minimal-examples/minimal-ws-client/CMakeLists.txt b/minimal-examples/client/minimal-ws-client/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-ws-client/CMakeLists.txt rename to minimal-examples/client/minimal-ws-client/CMakeLists.txt diff --git a/minimal-examples/minimal-ws-client/README.md b/minimal-examples/client/minimal-ws-client/README.md similarity index 100% rename from minimal-examples/minimal-ws-client/README.md rename to minimal-examples/client/minimal-ws-client/README.md diff --git a/minimal-examples/minimal-ws-client/minimal-ws-client.c b/minimal-examples/client/minimal-ws-client/minimal-ws-client.c similarity index 100% rename from minimal-examples/minimal-ws-client/minimal-ws-client.c rename to minimal-examples/client/minimal-ws-client/minimal-ws-client.c diff --git a/minimal-examples/server/README.md b/minimal-examples/server/README.md new file mode 100644 index 00000000..6e3ab913 --- /dev/null +++ b/minimal-examples/server/README.md @@ -0,0 +1,10 @@ +|Example|Demonstrates| +---|--- +minimal-http-server|Serves a directory over http/1 or http/2, custom 404 handler +minimal-http-server-smp|Multiple service threads +minimal-ws-server|Serves an index.html over http that opens a ws shared chat client in a browser +minimal-ws-server-pmd|Simple ws server with permessage-deflate support +minimal-ws-server-pmd-bulk|Simple ws server showing how to pass bulk data with permessage-deflate +minimal-ws-server-ring|Like minimal-ws-server but holds the chat in a multi-tail ringbuffer +minimal-ws-server-threads|Simple ws server where data is produced by different threads + diff --git a/minimal-examples/minimal-http-server-smp/CMakeLists.txt b/minimal-examples/server/minimal-http-server-smp/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-http-server-smp/CMakeLists.txt rename to minimal-examples/server/minimal-http-server-smp/CMakeLists.txt diff --git a/minimal-examples/minimal-http-server-smp/README.md b/minimal-examples/server/minimal-http-server-smp/README.md similarity index 100% rename from minimal-examples/minimal-http-server-smp/README.md rename to minimal-examples/server/minimal-http-server-smp/README.md diff --git a/minimal-examples/minimal-http-server-smp/minimal-http-server-smp.c b/minimal-examples/server/minimal-http-server-smp/minimal-http-server-smp.c similarity index 100% rename from minimal-examples/minimal-http-server-smp/minimal-http-server-smp.c rename to minimal-examples/server/minimal-http-server-smp/minimal-http-server-smp.c diff --git a/minimal-examples/minimal-http-server/mount-origin/favicon.ico b/minimal-examples/server/minimal-http-server-smp/mount-origin/favicon.ico similarity index 100% rename from minimal-examples/minimal-http-server/mount-origin/favicon.ico rename to minimal-examples/server/minimal-http-server-smp/mount-origin/favicon.ico diff --git a/minimal-examples/minimal-http-server-smp/mount-origin/index.html b/minimal-examples/server/minimal-http-server-smp/mount-origin/index.html similarity index 100% rename from minimal-examples/minimal-http-server-smp/mount-origin/index.html rename to minimal-examples/server/minimal-http-server-smp/mount-origin/index.html diff --git a/minimal-examples/minimal-http-server/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-http-server-smp/mount-origin/libwebsockets.org-logo.png similarity index 100% rename from minimal-examples/minimal-http-server/mount-origin/libwebsockets.org-logo.png rename to minimal-examples/server/minimal-http-server-smp/mount-origin/libwebsockets.org-logo.png diff --git a/minimal-examples/minimal-http-server/CMakeLists.txt b/minimal-examples/server/minimal-http-server/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-http-server/CMakeLists.txt rename to minimal-examples/server/minimal-http-server/CMakeLists.txt diff --git a/minimal-examples/minimal-http-server/README.md b/minimal-examples/server/minimal-http-server/README.md similarity index 100% rename from minimal-examples/minimal-http-server/README.md rename to minimal-examples/server/minimal-http-server/README.md diff --git a/minimal-examples/minimal-http-server/minimal-http-server.c b/minimal-examples/server/minimal-http-server/minimal-http-server.c similarity index 100% rename from minimal-examples/minimal-http-server/minimal-http-server.c rename to minimal-examples/server/minimal-http-server/minimal-http-server.c diff --git a/minimal-examples/minimal-http-server/mount-origin/404.html b/minimal-examples/server/minimal-http-server/mount-origin/404.html similarity index 100% rename from minimal-examples/minimal-http-server/mount-origin/404.html rename to minimal-examples/server/minimal-http-server/mount-origin/404.html diff --git a/minimal-examples/minimal-ws-proxy/mount-origin/favicon.ico b/minimal-examples/server/minimal-http-server/mount-origin/favicon.ico similarity index 100% rename from minimal-examples/minimal-ws-proxy/mount-origin/favicon.ico rename to minimal-examples/server/minimal-http-server/mount-origin/favicon.ico diff --git a/minimal-examples/minimal-http-server/mount-origin/index.html b/minimal-examples/server/minimal-http-server/mount-origin/index.html similarity index 100% rename from minimal-examples/minimal-http-server/mount-origin/index.html rename to minimal-examples/server/minimal-http-server/mount-origin/index.html diff --git a/minimal-examples/minimal-ws-proxy/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-http-server/mount-origin/libwebsockets.org-logo.png similarity index 100% rename from minimal-examples/minimal-ws-proxy/mount-origin/libwebsockets.org-logo.png rename to minimal-examples/server/minimal-http-server/mount-origin/libwebsockets.org-logo.png diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/CMakeLists.txt b/minimal-examples/server/minimal-ws-server-pmd-bulk/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-ws-server-pmd-bulk/CMakeLists.txt rename to minimal-examples/server/minimal-ws-server-pmd-bulk/CMakeLists.txt diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/README.md b/minimal-examples/server/minimal-ws-server-pmd-bulk/README.md similarity index 100% rename from minimal-examples/minimal-ws-server-pmd-bulk/README.md rename to minimal-examples/server/minimal-ws-server-pmd-bulk/README.md diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/minimal-ws-server-pmd-bulk.c b/minimal-examples/server/minimal-ws-server-pmd-bulk/minimal-ws-server-pmd-bulk.c similarity index 100% rename from minimal-examples/minimal-ws-server-pmd-bulk/minimal-ws-server-pmd-bulk.c rename to minimal-examples/server/minimal-ws-server-pmd-bulk/minimal-ws-server-pmd-bulk.c diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/favicon.ico similarity index 100% rename from minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/favicon.ico rename to minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/favicon.ico diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/index.html b/minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/index.html similarity index 100% rename from minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/index.html rename to minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/index.html diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/libwebsockets.org-logo.png similarity index 100% rename from minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/libwebsockets.org-logo.png rename to minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/libwebsockets.org-logo.png diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/protocol_lws_minimal_pmd_bulk.c b/minimal-examples/server/minimal-ws-server-pmd-bulk/protocol_lws_minimal_pmd_bulk.c similarity index 100% rename from minimal-examples/minimal-ws-server-pmd-bulk/protocol_lws_minimal_pmd_bulk.c rename to minimal-examples/server/minimal-ws-server-pmd-bulk/protocol_lws_minimal_pmd_bulk.c diff --git a/minimal-examples/minimal-ws-server-pmd/CMakeLists.txt b/minimal-examples/server/minimal-ws-server-pmd/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-ws-server-pmd/CMakeLists.txt rename to minimal-examples/server/minimal-ws-server-pmd/CMakeLists.txt diff --git a/minimal-examples/minimal-ws-server-pmd/README.md b/minimal-examples/server/minimal-ws-server-pmd/README.md similarity index 100% rename from minimal-examples/minimal-ws-server-pmd/README.md rename to minimal-examples/server/minimal-ws-server-pmd/README.md diff --git a/minimal-examples/minimal-ws-server-pmd/minimal-ws-server-pmd.c b/minimal-examples/server/minimal-ws-server-pmd/minimal-ws-server-pmd.c similarity index 100% rename from minimal-examples/minimal-ws-server-pmd/minimal-ws-server-pmd.c rename to minimal-examples/server/minimal-ws-server-pmd/minimal-ws-server-pmd.c diff --git a/minimal-examples/minimal-ws-server-pmd/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server-pmd/mount-origin/favicon.ico similarity index 100% rename from minimal-examples/minimal-ws-server-pmd/mount-origin/favicon.ico rename to minimal-examples/server/minimal-ws-server-pmd/mount-origin/favicon.ico diff --git a/minimal-examples/minimal-ws-server-pmd/mount-origin/index.html b/minimal-examples/server/minimal-ws-server-pmd/mount-origin/index.html similarity index 100% rename from minimal-examples/minimal-ws-server-pmd/mount-origin/index.html rename to minimal-examples/server/minimal-ws-server-pmd/mount-origin/index.html diff --git a/minimal-examples/minimal-ws-server-pmd/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server-pmd/mount-origin/libwebsockets.org-logo.png similarity index 100% rename from minimal-examples/minimal-ws-server-pmd/mount-origin/libwebsockets.org-logo.png rename to minimal-examples/server/minimal-ws-server-pmd/mount-origin/libwebsockets.org-logo.png diff --git a/minimal-examples/minimal-ws-server-pmd/protocol_lws_minimal.c b/minimal-examples/server/minimal-ws-server-pmd/protocol_lws_minimal.c similarity index 100% rename from minimal-examples/minimal-ws-server-pmd/protocol_lws_minimal.c rename to minimal-examples/server/minimal-ws-server-pmd/protocol_lws_minimal.c diff --git a/minimal-examples/minimal-ws-server-ring/CMakeLists.txt b/minimal-examples/server/minimal-ws-server-ring/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-ws-server-ring/CMakeLists.txt rename to minimal-examples/server/minimal-ws-server-ring/CMakeLists.txt diff --git a/minimal-examples/minimal-ws-server-ring/README.md b/minimal-examples/server/minimal-ws-server-ring/README.md similarity index 100% rename from minimal-examples/minimal-ws-server-ring/README.md rename to minimal-examples/server/minimal-ws-server-ring/README.md diff --git a/minimal-examples/minimal-ws-server-ring/minimal-ws-server.c b/minimal-examples/server/minimal-ws-server-ring/minimal-ws-server.c similarity index 100% rename from minimal-examples/minimal-ws-server-ring/minimal-ws-server.c rename to minimal-examples/server/minimal-ws-server-ring/minimal-ws-server.c diff --git a/minimal-examples/minimal-ws-server-ring/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server-ring/mount-origin/favicon.ico similarity index 100% rename from minimal-examples/minimal-ws-server-ring/mount-origin/favicon.ico rename to minimal-examples/server/minimal-ws-server-ring/mount-origin/favicon.ico diff --git a/minimal-examples/minimal-ws-server-ring/mount-origin/index.html b/minimal-examples/server/minimal-ws-server-ring/mount-origin/index.html similarity index 100% rename from minimal-examples/minimal-ws-server-ring/mount-origin/index.html rename to minimal-examples/server/minimal-ws-server-ring/mount-origin/index.html diff --git a/minimal-examples/minimal-ws-server-ring/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server-ring/mount-origin/libwebsockets.org-logo.png similarity index 100% rename from minimal-examples/minimal-ws-server-ring/mount-origin/libwebsockets.org-logo.png rename to minimal-examples/server/minimal-ws-server-ring/mount-origin/libwebsockets.org-logo.png diff --git a/minimal-examples/minimal-ws-server-ring/protocol_lws_minimal.c b/minimal-examples/server/minimal-ws-server-ring/protocol_lws_minimal.c similarity index 100% rename from minimal-examples/minimal-ws-server-ring/protocol_lws_minimal.c rename to minimal-examples/server/minimal-ws-server-ring/protocol_lws_minimal.c diff --git a/minimal-examples/minimal-ws-server-threads/CMakeLists.txt b/minimal-examples/server/minimal-ws-server-threads/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-ws-server-threads/CMakeLists.txt rename to minimal-examples/server/minimal-ws-server-threads/CMakeLists.txt diff --git a/minimal-examples/minimal-ws-server-threads/README.md b/minimal-examples/server/minimal-ws-server-threads/README.md similarity index 100% rename from minimal-examples/minimal-ws-server-threads/README.md rename to minimal-examples/server/minimal-ws-server-threads/README.md diff --git a/minimal-examples/minimal-ws-server-threads/minimal-ws-server.c b/minimal-examples/server/minimal-ws-server-threads/minimal-ws-server.c similarity index 100% rename from minimal-examples/minimal-ws-server-threads/minimal-ws-server.c rename to minimal-examples/server/minimal-ws-server-threads/minimal-ws-server.c diff --git a/minimal-examples/minimal-ws-server-threads/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server-threads/mount-origin/favicon.ico similarity index 100% rename from minimal-examples/minimal-ws-server-threads/mount-origin/favicon.ico rename to minimal-examples/server/minimal-ws-server-threads/mount-origin/favicon.ico diff --git a/minimal-examples/minimal-ws-server-threads/mount-origin/index.html b/minimal-examples/server/minimal-ws-server-threads/mount-origin/index.html similarity index 100% rename from minimal-examples/minimal-ws-server-threads/mount-origin/index.html rename to minimal-examples/server/minimal-ws-server-threads/mount-origin/index.html diff --git a/minimal-examples/minimal-ws-server-threads/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server-threads/mount-origin/libwebsockets.org-logo.png similarity index 100% rename from minimal-examples/minimal-ws-server-threads/mount-origin/libwebsockets.org-logo.png rename to minimal-examples/server/minimal-ws-server-threads/mount-origin/libwebsockets.org-logo.png diff --git a/minimal-examples/minimal-ws-server-threads/protocol_lws_minimal.c b/minimal-examples/server/minimal-ws-server-threads/protocol_lws_minimal.c similarity index 100% rename from minimal-examples/minimal-ws-server-threads/protocol_lws_minimal.c rename to minimal-examples/server/minimal-ws-server-threads/protocol_lws_minimal.c diff --git a/minimal-examples/minimal-ws-server/CMakeLists.txt b/minimal-examples/server/minimal-ws-server/CMakeLists.txt similarity index 100% rename from minimal-examples/minimal-ws-server/CMakeLists.txt rename to minimal-examples/server/minimal-ws-server/CMakeLists.txt diff --git a/minimal-examples/minimal-ws-server/README.md b/minimal-examples/server/minimal-ws-server/README.md similarity index 100% rename from minimal-examples/minimal-ws-server/README.md rename to minimal-examples/server/minimal-ws-server/README.md diff --git a/minimal-examples/minimal-ws-server/minimal-ws-server.c b/minimal-examples/server/minimal-ws-server/minimal-ws-server.c similarity index 100% rename from minimal-examples/minimal-ws-server/minimal-ws-server.c rename to minimal-examples/server/minimal-ws-server/minimal-ws-server.c diff --git a/minimal-examples/minimal-ws-server/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server/mount-origin/favicon.ico similarity index 100% rename from minimal-examples/minimal-ws-server/mount-origin/favicon.ico rename to minimal-examples/server/minimal-ws-server/mount-origin/favicon.ico diff --git a/minimal-examples/minimal-ws-server/mount-origin/index.html b/minimal-examples/server/minimal-ws-server/mount-origin/index.html similarity index 100% rename from minimal-examples/minimal-ws-server/mount-origin/index.html rename to minimal-examples/server/minimal-ws-server/mount-origin/index.html diff --git a/minimal-examples/minimal-ws-server/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server/mount-origin/libwebsockets.org-logo.png similarity index 100% rename from minimal-examples/minimal-ws-server/mount-origin/libwebsockets.org-logo.png rename to minimal-examples/server/minimal-ws-server/mount-origin/libwebsockets.org-logo.png diff --git a/minimal-examples/minimal-ws-server/protocol_lws_minimal.c b/minimal-examples/server/minimal-ws-server/protocol_lws_minimal.c similarity index 100% rename from minimal-examples/minimal-ws-server/protocol_lws_minimal.c rename to minimal-examples/server/minimal-ws-server/protocol_lws_minimal.c