cpq
740b609e1e
Fix for deliver_normal_chunks() and a test case
2022-08-06 09:01:34 +01:00
cpq
779c825e92
Fixes to chunked support when pipelining
2022-08-05 19:18:06 +01:00
cpq
457ce5e563
Refactor chunking support. Fix #1656
2022-08-04 17:10:53 +01:00
Sergey Lyubka
51cb40acd2
Enable epoll on linux
2022-08-03 15:07:26 +01:00
Sergey Lyubka
bd7ee0d1e8
Refactor mg_http_reply and mg_http_printf_chunk to use less allocs and mem copies
2022-08-01 21:07:42 +01:00
Sergey Lyubka
17e2fdd4cb
Add align to struct mg_iobuf
2022-08-01 12:53:25 +01:00
Sergey Lyubka
a468f58128
Use int debug level
2022-08-01 11:19:32 +01:00
Sergey Lyubka
581a0698af
Expose rpc guts
2022-07-31 22:51:59 +01:00
Sergey Lyubka
f02f88f336
mg_rpc_free -> mg_rpc_del
2022-07-30 21:13:30 +01:00
Sergey Lyubka
54d6bad5e5
Refactor JSON and RPC API
2022-07-30 07:55:26 +01:00
Sergey Lyubka
56e6cf406a
Fix unamalgamated build
2022-07-28 10:47:12 +01:00
Sergey Lyubka
a2289a0625
Fix unamalgamated build
2022-07-28 10:33:44 +01:00
Sergey Lyubka
f2009ebd62
Move mg_*printf* decls in fmt.h
2022-07-28 10:18:17 +01:00
Sergey Lyubka
0dabc45780
Add RPC API
2022-07-27 00:46:05 +01:00
Sergio R. Caprile
1eed80375d
Fix MG_EOO
2022-07-22 11:50:23 -03:00
Sergey Lyubka
4a3d760c06
Add timer ID attribute, for safe cleanup in the scripted environment
2022-07-17 12:52:30 +01:00
John Brzustowski
d5fe3261f4
NTP reponse gives fractional (not micro-) seconds, per RFC5905
2022-07-13 04:08:54 -03:00
Sergey Lyubka
46af09f776
Change ff_open to explicit memcpy()
2022-07-11 18:13:46 +01:00
Sergey Lyubka
f40b272eeb
Fix #1626 - ignore @ in query string
2022-07-10 15:41:43 +01:00
Sergey Lyubka
2c01893bb1
Give more time for unit test to detect conn refused on windows
2022-07-04 19:18:20 +01:00
Sergey Lyubka
543b4a132b
Fix POLLERR usage
2022-07-04 18:25:13 +01:00
Sergey Lyubka
e4a5296fbf
Introduce c->is_mqtt5 for keeping mqtt version. Make mqtt over ws work again
2022-07-04 17:47:17 +01:00
Sergey Lyubka
6c796b8552
Fix memset in mg_iotest, add mg_random_str test
2022-07-04 16:13:38 +01:00
Sergey Lyubka
e30ad43d36
Merge pull request #1612 from cesanta/mqtt
...
Exported MQTT result codes
2022-07-04 15:15:19 +01:00
Sergey Lyubka
735b7bece6
Squash more warns
2022-07-04 11:43:52 +01:00
James Hilliard
c24343f107
util: use correct clock on OSX
...
CLOCK_MONOTONIC_RAW on OSX is not the same as CLOCK_MONOTONIC_RAW on linux
2022-07-04 04:04:43 -06:00
Sergey Lyubka
81ffcd8ee9
Fix #1616 - randomize mqtt will and client id for parallel test
2022-07-04 11:00:06 +01:00
Sergey Lyubka
432452ea9a
Fix #1615 - prefer monotonic clock. Add clock for rp2040
2022-07-04 10:08:21 +01:00
Sergey Lyubka
6c14c7d623
Unbreak mac build
2022-07-04 00:06:01 +01:00
Sergey Lyubka
dca43f430b
Fix poll support for win32
2022-07-02 12:45:44 +01:00
Sergey Lyubka
91fa2ad23b
Enable poll support on windows
2022-07-02 11:52:16 +01:00
Sergio R. Caprile
85d300ce71
Exported MQTT result codes
2022-07-01 15:32:24 -03:00
Sergey Lyubka
d6e1a3ab4c
Unbreak my heart ^W the build
2022-07-01 18:10:40 +01:00
Sergey Lyubka
f1da8542ce
Nits
2022-07-01 17:28:06 +01:00
Sergey Lyubka
a183621268
Fix ff_write() call
2022-07-01 13:22:36 +01:00
Sergey Lyubka
035de980e3
Fix ff_read() call
2022-07-01 13:18:49 +01:00
Sergey Lyubka
99f0688377
Change mg_http_upload API
2022-06-30 21:54:50 +01:00
Sergey Lyubka
56412193e7
Add mg_remove_double_dots(), hide mg_http_upload()
2022-06-30 20:27:43 +01:00
Sergey Lyubka
c5751b0bd3
Add mg_json_get_long
2022-06-30 20:03:29 +01:00
Sergey Lyubka
5b8979a0f1
Better connect() result test
2022-06-29 19:19:19 +01:00
Sergey Lyubka
89e2a15eb7
Fix build
2022-06-29 18:03:04 +01:00
Sergey Lyubka
b1896d9944
Fix typo
2022-06-29 17:57:59 +01:00
Sergey Lyubka
d0dedcfd2e
Fix build
2022-06-29 17:54:33 +01:00
Sergey Lyubka
73297c8e65
Use mg_putchar_iobuf in mg_vprintf
2022-06-29 17:42:55 +01:00
Sergey Lyubka
017c7290d6
Better error handling - report from iotest
2022-06-29 17:02:37 +01:00
Sergey Lyubka
93a6bc501e
Refactor guess_mime_type()
2022-06-29 10:28:37 +01:00
Sergey Lyubka
e8f050c194
Dont use realloc
2022-06-29 00:00:16 +01:00
Sergey Lyubka
ba08140197
Initial mqtt5 support
2022-06-28 11:31:13 +01:00
Sergey Lyubka
d65ce3b596
Add mg_rprintf, mg_vrprintf
2022-06-28 00:45:52 +01:00
Sergey Lyubka
4e880fb6e0
Nit - fix openssl error message
2022-06-23 13:11:04 +01:00
Sergey Lyubka
898e2b1e30
Add mg_json_get_hex(), mg_json_get_b64()
2022-06-22 16:28:22 +01:00
Sergey Lyubka
a68f3dc4eb
Add %V and %H specifiers for mg_snrpintf()
2022-06-22 13:15:52 +01:00
Sergey Lyubka
c446fe0c6d
Make stm32 eth declared as volatile
2022-06-21 12:11:59 +01:00
Sergey Lyubka
2d5c26d44f
Rename mg_log_set_fn properly
2022-06-19 09:08:37 +01:00
Sergey Lyubka
9760b7c9d6
Add mg_log_set_fn(), MG_ENABLE_LOG
2022-06-19 09:04:22 +01:00
Sergey Lyubka
1640287897
Add mg_http_var
2022-06-18 04:25:11 +01:00
Sergey Lyubka
30d6a44b0d
Fix mg_http_upload()
2022-06-13 14:48:52 +01:00
Sergey Lyubka
5a448ab4f5
Compile driver_stm32.c only for __arm__
2022-06-13 01:04:09 +01:00
Sergey Lyubka
a71262437d
Use mip for arm and riscv targets
2022-06-12 12:43:01 +01:00
Sergey Lyubka
d8a4b5aa34
Make mip MSVC friendly
2022-06-11 18:54:32 +01:00
Sergey Lyubka
d3368e4aad
Move mip into mip/
2022-06-11 17:29:45 +01:00
Sergey Lyubka
dfca896a64
Update huge response. More tests
2022-06-10 12:14:42 +01:00
Sergey Lyubka
33567bab41
Add %g support to mg_snprintf()
2022-06-10 09:38:36 +01:00
Sergey Lyubka
106662b1d7
Add JSON API
2022-06-09 17:17:33 +01:00
Sergey Lyubka
cff208c5a9
Introduce %Q format specifier, rework device dashboard
2022-06-08 21:44:01 +01:00
Sergey Lyubka
807cd4df9e
Make sock.c less verbose
2022-06-08 19:55:24 +01:00
Sergey Lyubka
d4106b5cbd
Send puback for qos > 0
2022-06-08 19:51:03 +01:00
Sergey Lyubka
a53dc5c0a0
Fix #1580 - uri_to_path2 for / corner case
2022-06-07 04:33:46 +01:00
Sergey Lyubka
0f0cf7a5db
Integrate #1579 - properly clear c->is_readable and c->is_writable flags in mg_iotest()
2022-06-05 15:27:16 +01:00
Sergey Lyubka
cac7f653c9
Add mg_ws_printf()
2022-06-05 14:59:50 +01:00
Sergey Lyubka
c48349ba56
Add sntp-time-sync example
2022-06-03 13:57:57 +01:00
Sergey Lyubka
0763146254
Fix #1476 - introduce c->is_full to cap the recv buf len for streaming connections
2022-06-03 11:37:35 +01:00
Sergey Lyubka
5ac847076a
Change long read_conn -> void read_conn
2022-06-02 14:02:09 +01:00
Sergey Lyubka
a88ea776a9
Change MG_MAX_RECV_BUF_SIZE -> MG_MAX_RECV_SIZE
2022-06-02 13:50:44 +01:00
Sergey Lyubka
fe682f8399
Fix #1560 - implement precompressed .gz file serving
2022-06-02 06:13:37 +01:00
Sergey Lyubka
55517d48ed
Change linux target
2022-06-01 16:25:04 +01:00
Sergey Lyubka
4dd1891594
Add mg_http_serve_opts.page404
2022-05-31 23:44:03 +01:00
Sergey Lyubka
27e1472d88
Merge pull request #1568 from behnejad/master
...
adding new api to enable separation of query string with '&'.
2022-05-31 18:25:12 +01:00
Sergey Lyubka
a3d63c095a
Handle #1562 - add udp/tcp extra param to mg_mkpipe()
2022-05-31 18:23:32 +01:00
Hooman Behnejad
499401d457
adding mg_split function
2022-05-31 14:11:14 +04:30
Sergey Lyubka
e2fcf5f92c
Fix #1565 - mg_snprintf %.*s with zero len printing
2022-05-30 18:40:44 +01:00
Sergey Lyubka
b8bba7513a
Fix #1566 - proper error cleanup in mg_listen
2022-05-30 17:56:50 +01:00
Sergey Lyubka
65957527cb
Fix #1558 - add opts.extra_headers in 304 responses
2022-05-30 17:44:26 +01:00
Sergey Lyubka
44cf02e5ba
Fix #1545 - do not send MG_EV_HTTP_MSG if chunks were deleted
2022-05-30 16:02:59 +01:00
Sergey Lyubka
686320a805
Remove verbose log in mg_iotest()
2022-05-27 23:18:23 +01:00
Sergey Lyubka
28c15b3ff4
More SNtp debug 11
2022-05-27 22:36:34 +01:00
Sergey Lyubka
6b50039863
More SNtp debug 9
2022-05-27 22:24:45 +01:00
Sergey Lyubka
34c5f63c00
More SNtp debug 8
2022-05-27 22:18:14 +01:00
Sergey Lyubka
53bca4efab
More SNtp debug 7
2022-05-27 22:08:05 +01:00
Sergey Lyubka
9029593691
More SNtp debug 6
2022-05-27 21:59:13 +01:00
Sergey Lyubka
4aad859e20
More SNtp debug 5
2022-05-27 21:44:03 +01:00
Sergey Lyubka
b9d1d4a94f
More SNtp debug 4
2022-05-27 20:48:19 +01:00
Sergey Lyubka
360dedd9b2
More SNtp debug 3
2022-05-27 20:39:37 +01:00
Sergey Lyubka
e5d3d02307
More SNtp debug
2022-05-27 20:16:08 +01:00
Sergey Lyubka
7f8d12b9f7
Use time.windows.com too
2022-05-26 16:22:44 +01:00
Sergey Lyubka
10596a8bdc
Proper TLS handling for poll(). Make poll() default on linux
2022-05-26 08:55:28 +01:00
Valtteri Koskivuori
420b989adb
Add optional poll() implementation under MG_ENABLE_POLL
...
This adds the ability to substitute select() with poll() on supported
unix environments when MG_ENABLE_POLL is defined. A make flag called
USE_POLL is provided as well.
Using poll() removes the limitation of FD_SETSIZE concurrent sockets,
generally 1024 on Linux environments.
2022-05-26 06:00:27 +03:00
Sergey Lyubka
d5993ba27e
Fix #1550 - excladdrinuse
2022-05-21 16:18:34 +01:00
Sergey Lyubka
7e2ca72310
Remove mg_log_set_callback. Use MG_PUTCHAR macro instead
2022-05-20 09:45:17 +01:00
Sergey Lyubka
8e0f529a00
Add MIP - an experimental TCP/IP stack
2022-05-18 21:19:21 +01:00
Sergey Lyubka
47e15a3d47
RTX nits
2022-05-17 19:29:53 +01:00
Sergey Lyubka
3871f4b6ab
Fix #1546 - dont send excess for range requests
2022-05-16 11:45:08 +01:00
Sergey Lyubka
27c892806b
Fix #1540 - case sensitive match in mg_is_chunked()
2022-05-16 11:19:45 +01:00
Sergey Lyubka
2b9f0480a1
Fix #1549 - fix typo in log format specifier
2022-05-15 21:02:41 +01:00
Sergey Lyubka
7721b074e6
Log ms in test_sntp()
2022-05-15 19:31:29 +01:00
Sergey Lyubka
f5fd176b35
Increate SNTP timeout 3s->5s. Change mg_sntp_send() to mg_sntp_request(), remove one unnecessary parameter
2022-05-15 18:41:01 +01:00
Alex Alashkin
0ed7545947
Add TI support
2022-05-15 19:25:50 +03:00
Sergey Lyubka
cf7d1d8041
Address #1551 - better timers handling
2022-05-15 14:29:34 +01:00
Sergey Lyubka
0294603dfc
MG_ARCH_RTX nits
2022-05-12 15:07:02 +01:00
Sergey Lyubka
31ce219544
Add MG_ARCH_RTX
2022-05-12 08:07:51 +01:00
Sergey Lyubka
5c66d32bc0
Refactor mg_open_listener()
2022-05-10 13:43:47 +01:00
Sergey Lyubka
5ac5c93c90
Refactor mg_open_listener()
2022-05-10 13:41:45 +01:00
Sergey Lyubka
84480f4072
Fix #1539 - proper timer cleanup
2022-05-10 07:38:03 +01:00
Sergey Lyubka
b82953405d
Fix valgrind test
2022-05-09 19:11:27 +01:00
Sergey Lyubka
bc16854ccb
Get rid of MG_ENABLE_LOG, change mg_hexdump()
2022-05-06 21:09:13 +01:00
Sergey Lyubka
6db0485c7b
Set c->loc for accepted and UDP connections
2022-05-06 20:19:40 +01:00
Sergey Lyubka
b5fc0d30a8
Add extraconnsize
2022-05-04 17:18:35 +01:00
Sergey Lyubka
f19eec7fae
Refactor multithreading API
2022-04-25 14:56:15 +01:00
Sergey Lyubka
bdd7d92108
Fix #1533 - fix iotest error on windows
2022-04-22 20:53:54 +01:00
Sergey Lyubka
a7cbc19755
Fix #1532 - improve ipv6 DNS lookup
2022-04-22 20:44:53 +01:00
Sergey Lyubka
9dd3b75165
Handle #1529 - do not mark normal conn termination as an error
2022-04-19 20:28:10 +01:00
Sergey Lyubka
20fc8f0279
Handle #1529 : add automatic linkage against ws2_32.lib on _WIN32 targets
2022-04-19 18:51:28 +01:00
Sergey Lyubka
31698678fb
Squash warning
2022-04-13 10:52:06 +01:00
Sergey Lyubka
ebd2e89faa
Handle #1522 - Fix TLS buffering
2022-04-13 10:48:17 +01:00
Sergey Lyubka
ef44f90491
Fix #1520 - move state to struct mg_mgr
2022-04-12 14:14:55 +01:00
Sergey Lyubka
66376885e9
Fix #1521 - add mg_tou64()
2022-04-12 10:20:43 +01:00
Sergey Lyubka
db941e2627
Fix #1519 - make opts structs in API calls const
2022-04-12 10:04:55 +01:00
Sergey Lyubka
85281ae128
Fix #1514 - explicitely initialize io in mg_iobuf_init()
2022-04-12 09:54:05 +01:00
James Hilliard
e4ab9a4130
Ensure MQTT_CMD_SUBACK is received before calling mg_mqtt_pub in tests
2022-04-07 19:11:51 -06:00
Sergey Lyubka
a1ec179229
Use uint64_t for uptime in millis, not int64_t
2022-04-07 13:50:25 +01:00
Sergey Lyubka
2f77855ec1
Handle #1502 - send CLOSE when CLOSE is received
2022-04-05 14:45:39 +01:00
Sergey Lyubka
d11173fe90
Fix #1510 - wrap X509_VERIFY_PARAM_set1_host() usage inside a conditional
2022-04-05 13:09:17 +01:00
Sergey Lyubka
fde8b82b78
Merge pull request #1507 from jameshilliard/mbedtls-reset
...
Handle MBEDTLS_ERR_NET_CONN_RESET errors
2022-04-05 13:06:06 +01:00
Sergey Lyubka
b20eded30e
Fix ESP32 example
2022-04-05 12:54:20 +01:00
James Hilliard
3ec17c41be
Handle MBEDTLS_ERR_NET_CONN_RESET errors
2022-04-04 17:17:17 -06:00
Sergey Lyubka
0ed64707f3
Introduce MG_ENABLE_CUSTOM_MILLIS
2022-04-04 18:14:59 +01:00
Sergey Lyubka
4474ada291
Fix #1505 : let mg_wakeup() return status
2022-04-03 00:17:31 +01:00
Sergey Lyubka
d954851d43
Drop CRL from mbedTLS integration - let customer do a custom init if required
2022-04-01 16:42:41 +01:00
Sergey Lyubka
3d9fa10485
Increase sock limit, fix multiple connections issue
2022-04-01 15:42:15 +01:00
Sergey Lyubka
4f5d385e52
Enable SNTP in zephyr example
2022-03-31 17:42:09 +01:00
Sergey Lyubka
bb0bc41f99
Add zephyr example skeleton
2022-03-31 16:58:27 +01:00
Sergey Lyubka
7372a05ce5
Add initial Zephyr support
2022-03-30 07:56:44 +01:00
Sergey Lyubka
642befa8d5
Remove unused mg_hmac_sha1()
2022-03-22 13:30:25 +00:00
Sergey Lyubka
b78ced4fa9
Honor hostname validation for openssl
2022-03-22 08:50:37 +00:00
Sergey Lyubka
1bc81df00e
Fix mg_dns_parse_name_depth()
2022-03-21 16:29:27 +00:00
Sergey Lyubka
ad4812218d
Handle #1497 - handshake format
2022-03-21 15:17:09 +00:00
Sergey Lyubka
0fbc4b8ff4
Reuse sock.c logic in mbedtls integration
2022-03-21 14:39:27 +00:00
Sergey Lyubka
1141ea7933
Add connection timeout
2022-03-20 18:50:01 +00:00
Sergey Lyubka
6c021765bb
Merge pull request #1479 from zudwalex/infineon_rtx_support
...
Add RTX-RTOS support
2022-03-18 09:18:49 +00:00
Sergey Lyubka
8c447a95dd
Fix #1483 - add valgrind target, do not use stdlib strcasecmp()
2022-03-18 08:52:54 +00:00