Factor out SSI and WS code from http.c
HTTP + WS are enabled by default, but MQTT is built without HTTP
support as a compilation test.
PUBLISHED_FROM=925ed9a55abb193ed7deac1c9675a0e5b35dca50
"#if FOO" still works with simple -DFOO, but gives more flexibility.
Specifically, if user expressed no preference (FOO is not defined),
we can apply reasonable defaults (this is the legitimate use of ifdef).
In short, from now on, please use
#if MG_ENABLE_FOO
instead of
#ifdef MG_ENABLE_FOO
Since we are all used to #ifdef, this change also adds a precommit check
to police this. Specifically, in *.h and *.c files that are Copyright Cesanta,
"ifdef" and "if defined()" are not allowed to be used with macros that contain
ENABLE or DISABLE, unless the like also contains "ifdef-ok".
Hence, if you are sure you want to use ifdef, use this:
#ifdef MG_ENABLE_FOO /* ifdef-ok */
PUBLISHED_FROM=9be829448f53cff575d6cae8b9945fb12531c15a
esp_mg_net_if was a rat's nest of mongoose net_if and event manager
implementaions and the event loop task for the ESP8266 miot port.
From that, pieces that are related to LWIP support have been pulled out,
separated into net_if and event manager files, and event loop task
has been moved under the miot esp8266 dirrectory.
This is done to facilitate LWIP code reuse. This may not be the end of
it, but it's a start.
Note: custom retransmit logic has been removed for now. Can be
reintroduced later is necessary.
PUBLISHED_FROM=fd5bbf75714583ce95776d4c76b6c5b5dc535364
This is the variant of MG_EV_SSI_CALL with context of the SSI call being
processed in addition to the tag argument. Specifically, call handler
now gets access to the HTTP request and the name of the file being processed.
MG_EV_SSI_CALL is preserved for backward compatibility.
PUBLISHED_FROM=eeea7487c062505abdb23b6f64994ff7a6b60ff8
Make paths embedded in amalgamated files nice and relative.
This facilitates subsequent clean un- and re-amalgamation.
PUBLISHED_FROM=d83e6000617c54ceaeb78b80c25814996043fe66
On my way, fixed a couple of cases where we had `()` in the header, and
non-empty argument list in the source file.
PUBLISHED_FROM=5519526cf84e2bbd425a726fcc112fea1a95cbf1
It was observed that sl_Send can return SL_EAGAIN, despite the fact that
we only call write_to_socket if it was reported as writeable.
PUBLISHED_FROM=e4cbacb3f16bb7abb479222d7dcbfbe113a39161
Complete rewrite of the C Clubby implementation: it is now modeled after
the Go implementation, with a slight difference that codec and channel
are the same object (something we should probably do in Go as well, as
we only have a single type of channel so far, which is used with all
types of codecs).
This implementation also comes with a new external API,
which is hopefully cleaner and easier to use (see mg_clubby.h).
In this PR I am not adding any new types of channels, but a UART channel
as well as websocket listener channel will be added after this lands.
PUBLISHED_FROM=d545d4bb6434e2a02ad159f9e4b64e594a4797e7
So that socket/connection/whatever is really closed by the time user code is run.
Speed up test_http_endpoints by using appropriate wait conditions.
PUBLISHED_FROM=5fc8a772cc2a9c3b8c9dbddde9f99b41ce4d334c
Do not use CA bundle on CC3200, it doesn't work.
Make ssl_ca_cert = "*" mean "no verification" and make sure
SSL is enabled on the connection when it's required, even w/o verification.
PUBLISHED_FROM=c8710a5d24ecfe174ef45b7f81c114d41faf5c12