mirror of
https://github.com/cesanta/mongoose.git
synced 2026-10-20 11:19:56 +00:00
Revert "Stop publish examples to mongoose repo"
This reverts commit 1a17e17c462bdd4e1d26d8742f8b7087273e04c2. PUBLISHED_FROM=80028de308c9a021955d1425d2bfee8feb85f193
This commit is contained in:
1 parent
7cc7df8c0e
commit
eaef5bd133
351 files changed
+195424
No files matched your search
@@ -0,0 +1,3 @@
|
||||
PROG = simplest_web_server_ssl
|
||||
SSL_LIB ?= openssl
|
||||
include ../examples.mk
|
||||
@@ -0,0 +1,73 @@
|
||||
Certificate:
|
||||
Data:
|
||||
Version: 3 (0x2)
|
||||
Serial Number: 17173783314715673685 (0xee5588ef23288455)
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
Issuer: CN=test.cesanta.com, O=Cesanta, OU=testing
|
||||
Validity
|
||||
Not Before: Nov 13 13:09:40 2016 GMT
|
||||
Not After : Nov 11 13:09:40 2026 GMT
|
||||
Subject: CN=test.cesanta.com, O=Cesanta, OU=testing
|
||||
Subject Public Key Info:
|
||||
Public Key Algorithm: rsaEncryption
|
||||
Public-Key: (2048 bit)
|
||||
Modulus:
|
||||
00:af:f1:f4:61:ef:ad:ab:b9:7b:6f:49:14:39:25:
|
||||
6a:34:b8:dc:e8:d5:c1:71:75:a9:da:fc:16:1c:eb:
|
||||
d2:a0:78:b3:b8:92:67:3e:28:b1:37:e2:fc:c5:20:
|
||||
f8:10:44:48:53:bf:00:fb:90:2b:b3:d8:32:60:f8:
|
||||
63:5b:b5:1a:d0:fe:11:4f:e5:df:16:71:f4:54:97:
|
||||
bb:f7:25:6f:a4:41:64:0e:be:bc:b1:57:57:22:d7:
|
||||
2d:85:fc:88:2f:8e:a8:a4:3c:c5:4d:f2:39:44:3e:
|
||||
1d:e8:6e:5e:28:da:19:b3:82:22:fe:b1:d0:e2:ce:
|
||||
87:e5:04:26:27:3b:04:7c:26:f3:ae:a0:22:d3:c2:
|
||||
50:cd:31:a0:e2:02:8a:b2:57:cf:69:36:8d:36:82:
|
||||
df:77:e8:71:04:2b:51:6e:ac:88:bc:5e:ef:f8:e6:
|
||||
e1:40:60:66:ce:31:a9:bf:4a:f2:f9:a7:f6:c3:40:
|
||||
de:a6:79:60:e6:bc:f8:30:68:61:08:a9:ff:52:b7:
|
||||
8f:16:7e:2f:f2:42:99:ab:a9:ff:2e:30:0a:ca:ff:
|
||||
ce:65:c5:79:ed:36:00:92:ee:db:64:35:4c:2b:d9:
|
||||
36:15:ef:d7:fa:e6:b0:e4:30:aa:c7:dc:b3:37:51:
|
||||
07:4f:6c:c0:23:96:40:d7:e6:76:a7:f0:f3:95:71:
|
||||
45:53
|
||||
Exponent: 65537 (0x10001)
|
||||
X509v3 extensions:
|
||||
X509v3 Basic Constraints:
|
||||
CA:TRUE
|
||||
X509v3 Key Usage:
|
||||
Digital Signature, Key Encipherment, Key Agreement, Certificate Sign, CRL Sign
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
58:86:a3:68:2a:5a:4e:7a:5a:ab:c8:45:cf:67:70:48:8e:c7:
|
||||
09:33:88:9a:4c:41:e0:44:a6:e0:fa:a0:ce:13:e2:eb:2f:10:
|
||||
e3:f9:42:6d:96:cc:8a:ac:d4:e1:31:80:7d:59:f4:50:21:f3:
|
||||
d3:d5:fa:2f:e7:76:e6:61:eb:60:3f:ac:f3:4a:bd:94:68:fa:
|
||||
b9:d6:f2:fa:e0:5a:80:15:54:ee:46:20:1a:65:50:91:90:0b:
|
||||
d2:07:64:fd:e3:9c:38:bc:32:85:71:9e:11:fd:7d:a5:9b:99:
|
||||
c9:e0:a0:ec:70:08:72:84:13:6e:2e:c5:3c:fa:52:be:df:26:
|
||||
09:4d:45:ca:96:87:c4:7f:77:04:27:86:e5:09:9d:1a:4a:e1:
|
||||
f1:ab:b6:61:8c:3a:8a:1a:b7:0a:0e:60:5d:3d:01:d1:53:04:
|
||||
57:43:e2:44:ea:73:26:de:c1:f3:ff:74:e5:0e:6a:cc:26:9f:
|
||||
c6:41:0e:69:9e:d4:c1:3b:47:c4:c0:da:3f:c0:67:76:cf:9b:
|
||||
bc:3e:e1:b2:a5:a4:a0:44:fd:11:5b:2c:e9:18:a9:5f:63:ab:
|
||||
8a:9e:6f:0d:ff:e2:d1:49:09:b7:31:f5:21:04:2b:25:b0:19:
|
||||
7f:a7:76:ae:97:be:e8:52:0a:8e:6f:3d:44:5b:1e:2a:65:9c:
|
||||
fb:35:aa:08
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDHjCCAgagAwIBAgIJAO5ViO8jKIRVMA0GCSqGSIb3DQEBCwUAMD8xGTAXBgNV
|
||||
BAMMEHRlc3QuY2VzYW50YS5jb20xEDAOBgNVBAoMB0Nlc2FudGExEDAOBgNVBAsM
|
||||
B3Rlc3RpbmcwHhcNMTYxMTEzMTMwOTQwWhcNMjYxMTExMTMwOTQwWjA/MRkwFwYD
|
||||
VQQDDBB0ZXN0LmNlc2FudGEuY29tMRAwDgYDVQQKDAdDZXNhbnRhMRAwDgYDVQQL
|
||||
DAd0ZXN0aW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr/H0Ye+t
|
||||
q7l7b0kUOSVqNLjc6NXBcXWp2vwWHOvSoHizuJJnPiixN+L8xSD4EERIU78A+5Ar
|
||||
s9gyYPhjW7Ua0P4RT+XfFnH0VJe79yVvpEFkDr68sVdXItcthfyIL46opDzFTfI5
|
||||
RD4d6G5eKNoZs4Ii/rHQ4s6H5QQmJzsEfCbzrqAi08JQzTGg4gKKslfPaTaNNoLf
|
||||
d+hxBCtRbqyIvF7v+ObhQGBmzjGpv0ry+af2w0Depnlg5rz4MGhhCKn/UrePFn4v
|
||||
8kKZq6n/LjAKyv/OZcV57TYAku7bZDVMK9k2Fe/X+uaw5DCqx9yzN1EHT2zAI5ZA
|
||||
1+Z2p/DzlXFFUwIDAQABox0wGzAMBgNVHRMEBTADAQH/MAsGA1UdDwQEAwIBrjAN
|
||||
BgkqhkiG9w0BAQsFAAOCAQEAWIajaCpaTnpaq8hFz2dwSI7HCTOImkxB4ESm4Pqg
|
||||
zhPi6y8Q4/lCbZbMiqzU4TGAfVn0UCHz09X6L+d25mHrYD+s80q9lGj6udby+uBa
|
||||
gBVU7kYgGmVQkZAL0gdk/eOcOLwyhXGeEf19pZuZyeCg7HAIcoQTbi7FPPpSvt8m
|
||||
CU1FypaHxH93BCeG5QmdGkrh8au2YYw6ihq3Cg5gXT0B0VMEV0PiROpzJt7B8/90
|
||||
5Q5qzCafxkEOaZ7UwTtHxMDaP8Bnds+bvD7hsqWkoET9EVss6RipX2Orip5vDf/i
|
||||
0UkJtzH1IQQrJbAZf6d2rpe+6FIKjm89RFseKmWc+zWqCA==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCujwJbVfTFoaYa
|
||||
QNozEptdYDkvD6x4DrW2KgatIhDO6oth4mgWfBWAXSMHk9OP7cSIYwFwD+aHvdUC
|
||||
2FMWYkHGP5qAinv9y9QGmB8sKWZJgvZ9mLoWh3P5/2ZyvLddHDs7q+Vqa1Z9NfxM
|
||||
CYxJHo9dUEcuCOzmkM4UWas0CwzmwthTX/UwW8TZn0idMjkbjfsgTVZyFFJulh0d
|
||||
yELf1fOkMagidkHVrc6Fweb7FS0ukwnQbSgTlUUTKdmt5mgQhjgnGylDss+xrL1/
|
||||
HdOWTT2AQxCBUJ4I2JDBTFl20tq7bHrUs1x1kIo3sVsUsmzO/VTa6C4QuxOaLsTq
|
||||
ketPOKixAgMBAAECggEAI+uNwpnHirue4Jwjyoqzqd1ZJxQEm5f7UIcJZKsz5kBh
|
||||
ej0KykWybv27bZ2/1UhKPv6QlyzOdXRc1v8I6fxCKLeB5Z2Zsjo1YT4AfCfwwoPO
|
||||
kT3SXTx2YyVpQYcP/HsIvVi8FtALtixbxJHaall9iugwHYr8pN17arihAE6d0wZC
|
||||
JXtXRjUWwjKzXP8FoH4KhyadhHbDwIbbJe3cyLfdvp54Gr0YHha0JcOxYgDYNya4
|
||||
OKxlCluI+hPF31iNzOmFLQVrdYynyPcR6vY5XOiANKE2iNbqCzRb54CvW9WMqObX
|
||||
RD9t3DMOxGsbVNIwyzZndWy13HoQMGnrHfnGak9ueQKBgQDiVtOqYfLnUnTxvJ/b
|
||||
qlQZr2ZmsYPZztxlP+DSqZGPD+WtGSo9+rozWfzjTv3KGIDLvf+GFVmjVHwlLQfd
|
||||
u7eTemWHFc4HK68wruzPO/FdyVpQ4w9v3Usg+ll4a/PDEId0fDMjAr6kk4LC6t8y
|
||||
9fJR0HjOz57jVnlrDt3v50G8BwKBgQDFbw+jRiUxXnBbDyXZLi+I4iGBGdC+CbaJ
|
||||
CmsM6/TsOFc+GRsPwQF1gCGqdaURw76noIVKZJOSc8I+yiwU6izyh/xaju5JiWQd
|
||||
kwbU1j4DE6GnxmT3ARmB7VvCxjaEZEAtICWs1QTKRz7PcTV8yr7Ng1A3VIy+NSpo
|
||||
LFMMmk83hwKBgQDVCEwpLg/mUeHoNVVw95w4oLKNLb+gHeerFLiTDy8FrDzM88ai
|
||||
l37yHly7xflxYia3nZkHpsi7xiUjCINC3BApKyasQoWskh1OgRY653yCfaYYQ96f
|
||||
t3WjEH9trI2+p6wWo1+uMEMnu/9zXoW9/WeaQdGzNg+igh29+jxCNTPVuQKBgGV4
|
||||
CN9vI5pV4QTLqjYOSJvfLDz/mYqxz0BrPE1tz3jAFAZ0PLZCCY/sBGFpCScyJQBd
|
||||
vWNYgYeZOtGuci1llSgov4eDQfBFTlDsyWwFl+VY55IkoqtXw1ZFOQ3HdSlhpKIM
|
||||
jZBgApA7QYq3sjeqs5lHzahCKftvs5XKgfxOKjxtAoGBALdnYe6xkDvGLvI51Yr+
|
||||
Dy0TNcB5W84SxUKvM7DVEomy1QPB57ZpyQaoBq7adOz0pWJXfp7qo4950ZOhBGH1
|
||||
hKbZ6c4ggwVJy2j49EgMok5NGCKvPAtabbR6H8Mz8DW9aXURxhWJvij+Qw1fWK4b
|
||||
7G/qUI9iE5iUU7MkIcLIbTf/
|
||||
-----END PRIVATE KEY-----
|
||||
@@ -0,0 +1,77 @@
|
||||
Certificate:
|
||||
Data:
|
||||
Version: 3 (0x2)
|
||||
Serial Number: 4 (0x4)
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
Issuer: CN=test.cesanta.com, O=Cesanta, OU=testing
|
||||
Validity
|
||||
Not Before: Nov 13 13:18:01 2016 GMT
|
||||
Not After : Aug 13 13:18:01 2026 GMT
|
||||
Subject: CN=localhost
|
||||
Subject Public Key Info:
|
||||
Public Key Algorithm: rsaEncryption
|
||||
Public-Key: (2048 bit)
|
||||
Modulus:
|
||||
00:ae:8f:02:5b:55:f4:c5:a1:a6:1a:40:da:33:12:
|
||||
9b:5d:60:39:2f:0f:ac:78:0e:b5:b6:2a:06:ad:22:
|
||||
10:ce:ea:8b:61:e2:68:16:7c:15:80:5d:23:07:93:
|
||||
d3:8f:ed:c4:88:63:01:70:0f:e6:87:bd:d5:02:d8:
|
||||
53:16:62:41:c6:3f:9a:80:8a:7b:fd:cb:d4:06:98:
|
||||
1f:2c:29:66:49:82:f6:7d:98:ba:16:87:73:f9:ff:
|
||||
66:72:bc:b7:5d:1c:3b:3b:ab:e5:6a:6b:56:7d:35:
|
||||
fc:4c:09:8c:49:1e:8f:5d:50:47:2e:08:ec:e6:90:
|
||||
ce:14:59:ab:34:0b:0c:e6:c2:d8:53:5f:f5:30:5b:
|
||||
c4:d9:9f:48:9d:32:39:1b:8d:fb:20:4d:56:72:14:
|
||||
52:6e:96:1d:1d:c8:42:df:d5:f3:a4:31:a8:22:76:
|
||||
41:d5:ad:ce:85:c1:e6:fb:15:2d:2e:93:09:d0:6d:
|
||||
28:13:95:45:13:29:d9:ad:e6:68:10:86:38:27:1b:
|
||||
29:43:b2:cf:b1:ac:bd:7f:1d:d3:96:4d:3d:80:43:
|
||||
10:81:50:9e:08:d8:90:c1:4c:59:76:d2:da:bb:6c:
|
||||
7a:d4:b3:5c:75:90:8a:37:b1:5b:14:b2:6c:ce:fd:
|
||||
54:da:e8:2e:10:bb:13:9a:2e:c4:ea:91:eb:4f:38:
|
||||
a8:b1
|
||||
Exponent: 65537 (0x10001)
|
||||
X509v3 extensions:
|
||||
X509v3 Basic Constraints:
|
||||
CA:FALSE
|
||||
X509v3 Key Usage:
|
||||
Digital Signature, Key Encipherment, Key Agreement
|
||||
X509v3 Extended Key Usage:
|
||||
TLS Web Server Authentication
|
||||
X509v3 Subject Alternative Name:
|
||||
IP Address:127.0.0.1
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
54:c3:48:5b:4d:c4:fa:72:bc:ce:0c:ee:10:01:75:3b:cf:85:
|
||||
f1:9f:42:e4:c5:b5:c4:b2:84:e1:1b:54:02:56:03:1c:e0:18:
|
||||
69:c7:c8:32:cf:90:8b:c8:76:33:02:22:4e:04:51:1e:57:45:
|
||||
c4:aa:81:93:34:c3:05:7a:54:77:43:94:e0:f7:2d:53:60:ed:
|
||||
ea:c3:00:16:c5:ee:bf:6e:b5:73:a6:db:3a:36:21:b5:b8:43:
|
||||
01:9c:11:60:a0:dd:71:dc:8f:71:e0:da:4e:c5:4e:4c:53:57:
|
||||
65:23:1b:ca:b3:91:d0:0a:83:49:f0:3d:12:a8:e5:fd:05:5f:
|
||||
e9:66:ac:04:82:20:9b:b9:60:d6:40:09:71:90:5a:67:88:ba:
|
||||
27:96:45:48:e6:14:ee:c9:b0:92:06:c6:bd:14:42:3d:33:a2:
|
||||
49:9f:d2:d9:9a:51:fd:d0:56:07:79:2e:2d:e8:ff:1e:38:90:
|
||||
9e:7a:41:cb:d2:35:06:e0:86:9e:0c:c3:f5:da:1f:12:77:4c:
|
||||
b1:20:a9:a6:67:e4:3f:a7:f0:ff:06:4b:87:7f:92:1d:bf:78:
|
||||
60:c8:b9:19:e2:63:73:9e:32:b8:f7:01:da:60:cf:81:80:1a:
|
||||
0b:dd:97:a0:80:9d:ac:5a:35:25:a2:4a:db:1e:cc:12:04:b2:
|
||||
db:50:92:05
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDDjCCAfagAwIBAgIBBDANBgkqhkiG9w0BAQsFADA/MRkwFwYDVQQDDBB0ZXN0
|
||||
LmNlc2FudGEuY29tMRAwDgYDVQQKDAdDZXNhbnRhMRAwDgYDVQQLDAd0ZXN0aW5n
|
||||
MB4XDTE2MTExMzEzMTgwMVoXDTI2MDgxMzEzMTgwMVowFDESMBAGA1UEAwwJbG9j
|
||||
YWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAro8CW1X0xaGm
|
||||
GkDaMxKbXWA5Lw+seA61tioGrSIQzuqLYeJoFnwVgF0jB5PTj+3EiGMBcA/mh73V
|
||||
AthTFmJBxj+agIp7/cvUBpgfLClmSYL2fZi6Fodz+f9mcry3XRw7O6vlamtWfTX8
|
||||
TAmMSR6PXVBHLgjs5pDOFFmrNAsM5sLYU1/1MFvE2Z9InTI5G437IE1WchRSbpYd
|
||||
HchC39XzpDGoInZB1a3OhcHm+xUtLpMJ0G0oE5VFEynZreZoEIY4JxspQ7LPsay9
|
||||
fx3Tlk09gEMQgVCeCNiQwUxZdtLau2x61LNcdZCKN7FbFLJszv1U2uguELsTmi7E
|
||||
6pHrTziosQIDAQABo0AwPjAJBgNVHRMEAjAAMAsGA1UdDwQEAwIDqDATBgNVHSUE
|
||||
DDAKBggrBgEFBQcDATAPBgNVHREECDAGhwR/AAABMA0GCSqGSIb3DQEBCwUAA4IB
|
||||
AQBUw0hbTcT6crzODO4QAXU7z4Xxn0LkxbXEsoThG1QCVgMc4Bhpx8gyz5CLyHYz
|
||||
AiJOBFEeV0XEqoGTNMMFelR3Q5Tg9y1TYO3qwwAWxe6/brVzpts6NiG1uEMBnBFg
|
||||
oN1x3I9x4NpOxU5MU1dlIxvKs5HQCoNJ8D0SqOX9BV/pZqwEgiCbuWDWQAlxkFpn
|
||||
iLonlkVI5hTuybCSBsa9FEI9M6JJn9LZmlH90FYHeS4t6P8eOJCeekHL0jUG4Iae
|
||||
DMP12h8Sd0yxIKmmZ+Q/p/D/BkuHf5Idv3hgyLkZ4mNznjK49wHaYM+BgBoL3Zeg
|
||||
gJ2sWjUlokrbHswSBLLbUJIF
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,64 @@
|
||||
/*
|
||||
* Copyright (c) 2016 Cesanta Software Limited
|
||||
* All rights reserved
|
||||
*/
|
||||
|
||||
#if MG_ENABLE_SSL
|
||||
/*
|
||||
* This example starts an SSL web server on https://localhost:8443/
|
||||
*
|
||||
* Please note that the certificate used is a self-signed one and will not be
|
||||
* recognised as valid. You should expect an SSL error and will need to
|
||||
* explicitly allow the browser to proceed.
|
||||
*/
|
||||
|
||||
#include "mongoose.h"
|
||||
|
||||
static const char *s_http_port = "8443";
|
||||
static const char *s_ssl_cert = "server.pem";
|
||||
static const char *s_ssl_key = "server.key";
|
||||
static struct mg_serve_http_opts s_http_server_opts;
|
||||
|
||||
static void ev_handler(struct mg_connection *nc, int ev, void *p) {
|
||||
if (ev == MG_EV_HTTP_REQUEST) {
|
||||
mg_serve_http(nc, (struct http_message *) p, s_http_server_opts);
|
||||
}
|
||||
}
|
||||
|
||||
int main(void) {
|
||||
struct mg_mgr mgr;
|
||||
struct mg_connection *nc;
|
||||
struct mg_bind_opts bind_opts;
|
||||
const char *err;
|
||||
|
||||
mg_mgr_init(&mgr, NULL);
|
||||
memset(&bind_opts, 0, sizeof(bind_opts));
|
||||
bind_opts.ssl_cert = s_ssl_cert;
|
||||
bind_opts.ssl_key = s_ssl_key;
|
||||
bind_opts.error_string = &err;
|
||||
|
||||
printf("Starting SSL server on port %s, cert from %s, key from %s\n",
|
||||
s_http_port, bind_opts.ssl_cert, bind_opts.ssl_key);
|
||||
nc = mg_bind_opt(&mgr, s_http_port, ev_handler, bind_opts);
|
||||
if (nc == NULL) {
|
||||
printf("Failed to create listener: %s\n", err);
|
||||
return 1;
|
||||
}
|
||||
|
||||
// Set up HTTP server parameters
|
||||
mg_set_protocol_http_websocket(nc);
|
||||
s_http_server_opts.document_root = "."; // Serve current directory
|
||||
s_http_server_opts.enable_directory_listing = "yes";
|
||||
|
||||
for (;;) {
|
||||
mg_mgr_poll(&mgr, 1000);
|
||||
}
|
||||
mg_mgr_free(&mgr);
|
||||
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
int main(void) {
|
||||
return 0;
|
||||
}
|
||||
#endif /* MG_ENABLE_SSL */
|
||||
Reference in new issue
Block a user