Commit Graph

2487 Commits

Author SHA1 Message Date
Sergio R. Caprile
2bd188f3d6 add simple API support for app MQTT pub retries 2024-04-16 19:17:37 -03:00
Sergey Lyubka
e0e599ffa1 Fix #2612 - struct mg_str::ptr -> buf 2024-04-16 22:42:45 +01:00
Sergio R. Caprile
34150f3f71 Rename mongoose_custom as mongoose_config 2024-04-16 17:28:31 -03:00
Sergio R. Caprile
08cac802a4 poll TLS to process outstanding data in receive buffer 2024-04-15 12:13:31 -03:00
Sergio R. Caprile
2ac3552e6e Allow zero-length 'last-will' messages 2024-04-11 11:20:46 -03:00
Sergey Lyubka
d094e090ff Squash warnings 2024-03-27 08:58:48 +00:00
robert
c7a13025e4 Added ethernet driver for Infineon XMC4 boards 2024-03-26 10:21:09 -04:00
Sergey Lyubka
e4cd6bd824 Cleanup debugging leftovers 2024-03-26 11:33:59 +00:00
Sergio R. Caprile
d042697b10
Merge pull request #2663 from cesanta/tls
TLS client implementation
2024-03-25 16:56:43 -03:00
Sergey Lyubka
ba678b9ad1 TLS client implementation 2024-03-25 19:20:40 +00:00
Sergio R. Caprile
e9a2da61ef silence pedantic new versions 2024-03-25 10:35:30 -03:00
Sergio R. Caprile
626f605835 Support RT11, fix RTL PHY, fix RA err cntr 2024-03-20 10:35:05 -03:00
Sergey Lyubka
fafc5c8348 Refactor autoinit code 2024-03-15 20:23:37 +00:00
Sergio R. Caprile
928aed4342 Split PHY code into phy.{c,h}; add PHY config to STM32H driver 2024-03-15 10:37:54 -03:00
Sergio R. Caprile
65b23777b2
Merge pull request #2642 from cesanta/autoinit
Add driver init to mg_mgr_init()
2024-03-12 20:36:59 -03:00
Sergio R. Caprile
c8fd3d6d25 Add driver init to mg_mgr_init() 2024-03-12 15:55:35 -03:00
Sergey Lyubka
3ac9bd0468 Fix #2619 - use mg_tls_pending() API to check for buffered TLS data 2024-03-12 08:30:04 +00:00
Sergio R. Caprile
f26c713482 prefix macros in tls_aes128 2024-03-06 11:59:12 -03:00
Sergey Lyubka
219253ad71
Merge pull request #2636 from cesanta/mg_http_upload
Increase local file buffer size in mg_http_upload()
2024-03-05 06:05:36 +00:00
Sergey Lyubka
02120e24b6 Better acks 2024-03-03 10:59:31 +00:00
Sergey Lyubka
1c6f8b95eb Sending ACK when about to exhaust TCP WIN1 2024-03-02 15:44:08 +00:00
Sergey Lyubka
309668ccbc Increase local file buffer size in mg_http_upload() 2024-03-02 10:56:06 +00:00
Sergey Lyubka
cec06eb25c Introduce MG_EV_HTTP_HDRS 2024-03-01 23:29:12 +00:00
robert
c59bf6613a HTTP: respond to messages which have no explicit lengths 2024-02-28 04:01:39 -05:00
Sergio R. Caprile
8130f7f25f
Merge pull request #2625 from cesanta/c89
Make net_builtin C89 friendly
2024-02-26 09:20:42 -03:00
Sergey Lyubka
ecb3301bcb Make net_builtin C89 friendly 2024-02-25 12:21:06 +00:00
Sergey Lyubka
f61f2d2e9f
Merge pull request #2620 from cesanta/2617
fix wrong MIME type for custom 404
2024-02-23 01:50:02 +00:00
Sergey Lyubka
1743e175cd
Merge pull request #2623 from cesanta/r2d2
Add support for RA6M4
2024-02-23 00:45:47 +00:00
Sergio R. Caprile
a027f58744 Add support for RA6M4 2024-02-22 20:51:01 -03:00
Sergey Lyubka
112a1e908a Adopt CCRH compiler 2024-02-22 17:53:15 +00:00
Sergio R. Caprile
1c114a279e fix wrong MIME type for custom 404 2024-02-20 19:08:07 -03:00
Sergey Lyubka
0e2f3de154 Change mg_file_read() signature: return mg_str 2024-02-16 12:07:35 +00:00
Sergey Lyubka
5baa4d969e Fill c->loc for outbound connections 2024-02-14 12:32:26 +00:00
Sergio R. Caprile
4ab2309a5d
Merge pull request #2607 from cesanta/tls
Fix #2603: TLS read path
2024-02-14 08:50:44 -03:00
Sergey Lyubka
9172f62970 Fix #2603: TLS read path 2024-02-13 05:49:15 +00:00
Sergey Lyubka
2419f02766 Fix #2592: do not close pipelined connection prematurely 2024-02-11 09:05:19 +00:00
Sergio R. Caprile
0b667ca869 cap # responses instead of rejecting 2024-02-09 12:28:56 -03:00
Sergey Lyubka
936e7bbc88 mg_split -> mg_span. Remove mg_commalist 2024-02-04 09:26:42 +00:00
Sergey Lyubka
e0668bc1c0 Allow user specify file in mg_http_upload 2024-02-04 08:56:32 +00:00
Sergey Lyubka
cbfa57a955 Add helper mg_fs_ls() 2024-02-01 18:24:37 +00:00
Sergey Lyubka
f231760395 Add helper function mg_json_get_tok 2024-02-01 12:05:49 +00:00
Sergey Lyubka
0fc0230364 Changed the order of handlers: protocol first, user second 2024-01-26 10:34:24 -03:00
Sergey Lyubka
d8fec13d2c Fix #2570: close only when TLS buffers drained 2024-01-23 11:10:15 +00:00
Sergio R. Caprile
08f05d6f8c
Merge pull request #2585 from cesanta/fai
prefix PHY-related constants
2024-01-22 18:45:00 -03:00
Sergio R. Caprile
4d3fba57d4 rename MG_ENABLE_FILE to MG_ENABLE_POSIX_FS 2024-01-22 16:21:57 -03:00
Sergio R. Caprile
1a8a144726 prefix PHY-related constants 2024-01-22 14:27:22 -03:00
Sergey Lyubka
6b0e4a425d Fix #2552 - reject requests with invalid/absent chunk length 2024-01-20 09:35:01 +00:00
Sergey Lyubka
f883504d2d Fix #2573 - GCC build warning in tls_builtin.c::mul() 2024-01-20 08:51:01 +00:00
robert
8500afbbd4 RT1020 and RT1060 OTA 2024-01-19 02:47:23 -05:00
Sergio R. Caprile
faa582040b Fallback to IP source address on DHCP servers not filling sid 2024-01-16 09:56:05 -03:00
Sergey Lyubka
0ad4002569 Make TLS less verbose 2024-01-14 23:27:52 +00:00
Sergey Lyubka
dfc2e97d5e Squash warning 2024-01-14 22:10:18 +00:00
Sergey Lyubka
8ea08306b8 Update year to 2024 2024-01-10 14:31:09 +00:00
Sergio R. Caprile
deca1aaf46 remove fn_data from event handler signature 2024-01-09 14:51:19 -03:00
Sergio R. Caprile
2427c40a4c Avoid calling mg_send on no actual payload 2023-12-29 14:58:03 -03:00
Sergey Lyubka
744df7b244 Better checks in skip_chunk() 2023-12-29 11:59:02 +00:00
Sergey Lyubka
01b612cff5 WCH FW build fix. Introduce phy_addr for STM32F driver 2023-12-27 15:38:51 +00:00
Sergey Lyubka
06f8238107 Fix TLS codepath for pending data. Reuse c->rtls 2023-12-22 16:17:06 +00:00
Sergey Lyubka
61825b2390 Add mg_wakeup() 2023-12-21 14:03:33 -03:00
Sergey Lyubka
a50b8ff5d7 Remove gettimeofday implementation, to avoid clashes 2023-12-21 15:05:07 +00:00
Sergio R. Caprile
285dc63c5c reformat comments 2023-12-20 16:40:31 -03:00
Sergey Lyubka
a0e66fb9e6 Add built-in TLS 1.3 stack: server side, EC support 2023-12-20 11:04:31 +00:00
Sergio R. Caprile
387334c8c2 stm32 -> stm32f 2023-12-15 21:55:52 -03:00
Sergio R. Caprile
cd021daf79
Merge pull request #2531 from cesanta/mqttrndis
Add MQTT device through RNDIS example
2023-12-15 13:39:21 -03:00
Sergey Lyubka
536aa1fb62 Fix post-OTA status save 2023-12-15 11:32:46 +00:00
Sergio R. Caprile
ad57731ae1 Add MQTT device through RNDIS example 2023-12-13 17:24:52 -03:00
Sergio R. Caprile
92ecef7bd3 Be less verbose on unkown eth types 2023-12-10 15:17:20 -03:00
cpq
144c2f443e TLS layer: c->rtls to optimise recvd TLS data 2023-12-10 12:18:07 +00:00
Sergey Lyubka
ed2d4c1c2b
Merge pull request #2519 from cesanta/prof
Add profiling capability
2023-12-08 18:43:14 +00:00
cpq
693316de44 Add profiling capability 2023-12-08 17:00:42 +00:00
cpq
6e68124405 Move TLS API to tls.h, fix builtin handshake codepath 2023-12-08 00:30:09 +00:00
cpq
4c445453d3 Fix #2460 - sanity check of the Transfer-Encoding: chunked header 2023-12-01 11:24:32 +00:00
cpq
85d3e7f375 Use V307 flash 2023-11-30 23:51:34 +00:00
cpq
bd53e46873 Do not allow invalid UTF8 in method, uri, header names 2023-11-25 11:33:07 +00:00
cpq
9cfd3124ef Fix #2487 - correct GMAC_DCFGR, receive size -> full size 2023-11-25 08:04:38 +00:00
Sergey Lyubka
36748ee406
Merge pull request #2486 from cesanta/st_v307
Post-IRQ DMASR flags cleanup
2023-11-25 07:49:32 +00:00
Sergey Lyubka
2a25e449a2
Merge pull request #2476 from cesanta/mqtt-dashboard-part-2
Added MQTT Dashboard support for H723ZG
2023-11-24 10:45:49 +00:00
cpq
f2f60a7b3b Post-IRQ DMASR flags cleanup 2023-11-24 10:43:56 +00:00
cpq
82916a1cef Wrap dirty IRQ flag cleanup for v307 into a conditional 2023-11-22 15:41:45 +00:00
cpq
fa76312313 Add example for ch32v307 2023-11-22 10:22:10 +00:00
robert
46687f6fe3 Added MQTT Dashboard support for H723ZG 2023-11-20 02:08:07 -05:00
Sergio R. Caprile
7c25c0d6f3 BIT -> MG_BIT 2023-11-16 17:11:04 -03:00
Sergio R. Caprile
c8f207c277 rename iMX-RT 2023-11-15 19:27:20 -03:00
Sergio R. Caprile
d70d9aff11 fix bits not being reset 2023-11-15 16:33:20 -03:00
Sergio R. Caprile
b999275550 fix Teensy PHY code in _up 2023-11-15 10:46:44 -03:00
Sergio R. Caprile
a546d360d0 update PHY code in _up 2023-11-13 23:54:37 -03:00
cpq
eb65d269eb Disable noisy debug 2023-11-13 01:57:59 +00:00
cpq
b379f81004 Nit picks 2023-11-13 01:56:50 +00:00
Sergey Lyubka
d1b0342a18
Merge pull request #2468 from cesanta/teensy
Add teensy41 example
2023-11-11 21:28:28 +00:00
cpq
b815e6bc04 Add teensy41 example 2023-11-11 21:22:00 +00:00
Sergio R. Caprile
1f77e53b23 Wrap OpenSSL errors in Mongoose log 2023-11-06 17:24:30 -03:00
Sergio R. Caprile
bb5aba2e19 Make tls_builtin build with current API 2023-11-03 14:02:41 -03:00
Sergio R. Caprile
18d13f9848 Allow fast close 2023-11-02 18:27:39 -03:00
Sergey Lyubka
107e303282
Merge pull request #2445 from cesanta/cmsis-driver
Add driver for CMSIS-Driver
2023-11-02 14:55:16 +00:00
Sergey Lyubka
22f76091a2
Merge pull request #2446 from cesanta/o2
Single bank OTA
2023-11-02 14:55:01 +00:00
cpq
376e5ccaae Single bank OTA 2023-11-02 09:30:55 +00:00
Sergio R. Caprile
b792304cf8 Add driver for CMSIS-Driver 2023-11-01 17:26:34 -03:00
Sergio R. Caprile
07936343c8 improve randomness in non-random environments 2023-10-31 19:17:58 -03:00
cpq
2caff93f83 Remove IMX, imx prefix for NXP 2023-10-24 17:30:22 +01:00
Sergio R. Caprile
b1c220e610 Remove mg_mkpipe() leftovers 2023-10-10 18:16:02 -03:00
Sergey Lyubka
d18b2b390a
Merge pull request #2415 from cesanta/json
Add mg_json_next() for iterating objects/arrays
2023-10-09 07:55:44 +01:00
cpq
ea2ff010a9 Add MG_ENABLE_CUSTOM_LOG 2023-10-08 17:09:14 +01:00
cpq
e357cb3185 Bump up max DNS responses 10->15 2023-10-08 15:30:18 +01:00
cpq
293ee2162c Add mg_json_next() for iterating objects/arrays 2023-10-07 22:40:51 +01:00
Sergio R. Caprile
9255ceaf8a Rework RT1020 driver
Add web server in example
Add to tests
2023-10-06 16:56:00 -03:00
cpq
bb9c7c0eb3 Handle ECOS case in accept_conn() 2023-10-06 15:58:26 +01:00
Sergio R. Caprile
248e7b6e29 Add RT1020-EVK baremetal example 2023-10-04 15:18:57 -03:00
cpq
4db3fc2515 dd nucleo-g031 baremetal example 2023-10-03 13:55:47 +01:00
Sergio R. Caprile
d4c122b17a send broadcasts in MIP 2023-10-02 13:37:27 -03:00
cpq
46ecb07fc8 Fix #2192 - honor addr%scopeid ipv6 notation 2023-09-29 15:49:47 +01:00
cpq
a628a05efb Restore pub. domain notice 2023-09-29 13:09:29 +01:00
cpq
7884a2f3c7 Get rid of MG_EV_HTTP_CHUNK 2023-09-26 20:45:24 +01:00
robert
fa54a22aed OTA API refactoring: renamed files and defines 2023-09-26 08:33:39 -04:00
cpq
822b0c011a Add sys_flash.c for common mg_flash_{load,save} 2023-09-25 07:55:35 +01:00
cpq
a0f8a197c9 Split sys.h API over MG_SYS_* 2023-09-25 07:33:38 +01:00
cpq
b37efbe891 Commonise flash-based OTA. Add h7 support. 2023-09-24 21:55:49 +01:00
Sergey Lyubka
f552d15fe4
Merge pull request #2390 from cesanta/tickets
Restore tickets support
2023-09-21 19:08:08 +01:00
cpq
d1204e8a66 Better chunk length calculation 2023-09-21 19:04:32 +01:00
cpq
9ec48e41f7 Restore tickets support 2023-09-21 18:43:33 +01:00
cpq
dd047b2613 dns.c slight refactor, no functional changes 2023-09-21 13:38:06 +01:00
cpq
00d475bc7e Address https://github.com/cesanta/mongoose/discussions/2305 - bind to v6 only / v6 and v4 2023-09-21 12:35:47 +01:00
cpq
3f0366a514 Revert to the old TLS API, but keep certs as mg_str for DER 2023-09-19 11:15:23 +01:00
cpq
7ecbbc517d Using mg_bzero to cleanup memory in mg_close_conn() 2023-09-17 22:25:36 +01:00
Sergio R. Caprile
42b9ac1145 update 2023-09-12 18:30:23 -03:00
Sergio R. Caprile
c0ca3cacb4 Fixing test.yml 2023-09-12 15:05:29 -03:00
robert
264026acde added TCP/UDP packet splitting to fit within MTU 2023-09-12 07:05:13 -04:00
Sergio R. Caprile
1391bdcf8b remove certs.h 2023-09-06 15:49:02 -03:00
Sergio R. Caprile
8140ea16a7
Merge pull request #2371 from cesanta/cloexec
Fix #2369 - set CLOEXEC on epoll and regular file fds
2023-09-05 10:15:58 -03:00
Sergey Lyubka
2883709756
Merge pull request #2370 from cesanta/ota
Add OTA to the device dashboard. Implement for H5
2023-09-05 13:28:22 +01:00
cpq
ca4c2c6c41 Set CLOEXEC on epoll and regular file fds 2023-09-05 06:56:41 +01:00
cpq
2f014237b2 Add OTA to the device dashboard. Implement for H5 2023-09-04 22:07:32 +01:00
robert
f33e3a7752 closing connection if a fragmented packet is received 2023-08-30 10:30:51 -04:00
cpq
e8d57ac4e1 Style: always braces around if + else 2023-08-25 14:46:38 +01:00
cpq
527e89754e Change base64 API 2023-08-22 12:11:13 +01:00
robertc2000
30e0f42c97
Merge pull request #2357 from cesanta/tcpip-conn-init
improved tcp connection initiation
2023-08-22 09:30:24 +03:00
cpq
3256218fd2 Do uri len check after it is finalised 2023-08-21 17:16:48 +01:00
robert
a4f14b0ddf improved tcp connection initiation 2023-08-21 10:22:53 -04:00
cpq
b32d1c15f0 Store certs in certs/. Add mg_unpacked() 2023-08-20 23:43:04 +01:00
Sergio R. Caprile
1e0d57a832
Merge pull request #2352 from cesanta/mip
Unify naming: all network stacks are in src/net_...
2023-08-18 16:40:57 -03:00
cpq
f3617a1cf3 Add integer overflow protection 2023-08-18 20:33:57 +01:00
cpq
89a9a50b96 Unify naming: all network stacks are in src/net_... 2023-08-18 19:59:15 +01:00
robertc2000
3ea5f8dbde
Merge pull request #2344 from cesanta/tcp-closure
improved tcp closure
2023-08-18 14:06:41 +03:00
Sergio R. Caprile
7459d30a28 deprecate mg_mkpipe() 2023-08-17 18:05:03 -03:00
robert
f5e87cceec improved tcp closure 2023-08-17 10:34:31 -04:00
cpq
9fe7807b02 Fix #2322 - stricter Content-Length check, allow 1*DIGIT only 2023-08-17 12:55:08 +01:00
cpq
58886a9693 Fix #2345 - json parsing of arrays of objects 2023-08-16 22:09:45 +01:00
cpq
ea3968601e Add http serve to fuzzer 2023-08-16 20:18:52 +01:00
Sergio R. Caprile
face6c44c6 SAME54 Ethernet driver
Add tls_builtin.c
2023-08-10 18:59:23 -03:00
Sergio R. Caprile
3721bcc790
Revert "Foo" 2023-08-10 17:48:55 -03:00
cpq
70fc71c6f7 Changes 2023-08-07 06:18:49 -04:00