Simon Goldschmidt
f6b728b24c
makefsdata: obey LWIP_HTTPD_SSI_BY_FILE_EXTENSION
...
Don't check SSI extension list if LWIP_HTTPD_SSI_BY_FILE_EXTENSION == 0
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-10-23 08:16:49 +02:00
Simon Goldschmidt
688b0935e2
Try to catch missing std includes on travis
...
By defining LWIP_PLATFORM_ASSERT to a function, we can prevent arch.h
from including stdio.h and stdlib.h
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-10-23 08:00:37 +02:00
Simon Goldschmidt
ef02b1dc20
fix missing standard includes
...
These were a problem only if arch.h does not include them.
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-10-23 07:46:13 +02:00
Dirk Ziegelmeier
06cc825431
Whitespace cleanup lwIP
2018-10-22 20:53:58 +02:00
Simon Goldschmidt
0be3e35bf2
tftp: mode_to_string() should be static
2018-10-17 21:53:04 +02:00
Simon Goldschmidt
0ee4784d0c
tftp client: pass 'mode' as an enum, not as a string constant
2018-10-17 21:37:46 +02:00
Simon Goldschmidt
fa76861481
tftp: fix cast warnings; return all error codes
...
Also keep tftp_mode in tft_state
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-10-13 20:26:06 +02:00
Dirk Ziegelmeier
437e0a6756
Fix C++ style comments in TFTP
2018-10-12 14:27:31 +02:00
Dirk Ziegelmeier
f61e57965f
Minor coding style fix in tftp.c
2018-10-09 09:07:08 +02:00
Dirk Ziegelmeier
65b1a395f4
TFTP: Fix doxygen docs
2018-10-08 22:16:40 +02:00
Dirk Ziegelmeier
abcf42b655
Fix compile of TFTP using GCC
2018-10-08 20:21:32 +02:00
Dirk Ziegelmeier
c8808f69b2
Fix tftp_init_client signature
2018-10-08 12:56:27 +02:00
Dirk Ziegelmeier
6c2fd2d25d
Improve TFTP implementation
...
- implement server/client mode (API is nicer to use)
- Increase TFTP_MAX_MODE_LEN to be able to contain "netascii" transfer mode
- Adapt tftp_example to changes
2018-10-08 12:45:29 +02:00
Dirk Ziegelmeier
7ba69d875c
Some TFTP cleanups
2018-10-08 11:41:51 +02:00
Ben Wijen
b2713601f0
tftp: Add client functionality
...
* add helper functions
* add tftp_get/tftp_put
* rename files
2018-10-08 09:00:20 +02:00
Dirk Ziegelmeier
4b672a1f3c
Adapt several comments to contrib rep move
2018-10-02 12:42:14 +02:00
Simon Goldschmidt
a044c807f8
altcp_tls: rename altcp_tls_new -> altcp_tls_wrap, add altcp_tls_new
...
The new altcp_tls_new() is a type safe version of altcp_tls_alloc()
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-09-24 22:29:54 +02:00
Simon Goldschmidt
0189e7b02f
mqtt: allow user + pass longer than 255 chars
...
See bug #54655 :
"MQTT brokers such as Google Cloud IoT Core requires MQTT clients
to send JSON Web Token (JWT) as password field of the MQTT Connect
packet. JWT can be more than 255 bytes.
Currently, the MQTT library restricts password to be less than 256
bytes, thus it prevents connectivity to Google Cloud IoT Core."
Fix that by just converting the local variables for these from u8_t
to u16_t.
Suggested-by: Richmond Umagat <richmond.umagat@brtchip.com>
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-09-13 14:59:08 +02:00
Dirk Ziegelmeier
796f98beb2
Fix no newline at end of http_client.c
2018-09-12 22:41:07 +02:00
Simon Goldschmidt
fc24d4139f
altcp_tls_mbedtls: convert #error on too small TCP_WND to warning
...
Many TLS use cases are OK with a small TCP_WND, so don't prevent these
by having a preprocessor check that cannot be disabled.
2018-09-12 22:24:05 +02:00
Dirk Ziegelmeier
cdfa3dfa9d
http_client.c: Fix compile when TCP is disabled
2018-09-12 08:27:43 +02:00
Dirk Ziegelmeier
257dc1d6fd
Fix doxygen warnings in altcp_proxyconnect.c
2018-09-10 13:30:50 +02:00
Simon Goldschmidt
7749088a83
Fix 2way-auth connections for TLS clients
...
TLS clients that need 2-way authentication (e.g. Amazon AWS IoT cloud mqtt)
need to pass a certificate and private key when creating the tls altcp_pcb.
Added a new function altcp_tls_create_config_client_2wayauth() for this that
replaces altcp_tls_create_config_client() for such clients.
See bug #54601 .
2018-09-07 20:59:31 +02:00
Axel Lin
bcd6c8a2d3
apps/sntp: Fix parameter name in doxygen comments
...
Make the parameter name in doxygen comments consistent wit the code.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-08-19 21:41:47 +08:00
Simon Goldschmidt
0674aa60fe
sntp_getservername: fix parameter name in doxygen comments
...
Reported-by: Gisle Vanem <gisle.vanem@gmail.com>
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-08-18 20:23:24 +02:00
Dirk Ziegelmeier
aafc0adfe1
Fix bug #54381 : SNMP RAW_DATA support is broken
2018-07-26 14:16:00 +02:00
Axel Lin
82fc0e8937
apps/netbiosns: Make *netbiosns_pcb static
...
It's only referenced by netbiosns.c, thus make it static.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-07-04 16:51:18 +08:00
Simon Goldschmidt
2d65251c6c
mdns: add config option to use netif ext callback
...
e.g. if the calling stack should not invoke the mdns functions due
to high stack usage, disable the option and trigger it yourself.
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-07-03 21:09:33 +02:00
Axel Lin
9b638e7c05
apps/netbiosns: Convert to use lwip_isupper instead of open-coded
...
Also remove additonal (cname == '\0' || cname == '.') check because
it's covered by !lwip_isupper(cname) test.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-07-03 22:55:59 +08:00
Simon Goldschmidt
cc8995823a
mdns: implement random time for initial probing
2018-06-28 22:10:45 +02:00
Simon Goldschmidt
af2cbad64a
mdns: add 2 RFC constants
2018-06-28 22:07:23 +02:00
Simon Goldschmidt
8090afa4f9
mdns: minor coding style cleanup
2018-06-28 22:04:57 +02:00
Simon Goldschmidt
4506db4331
mdns: fix implicit cast warnings (size_t to u8_t)
2018-06-28 21:58:15 +02:00
Simon Goldschmidt
814341a6ed
mdns: use an u8_t instead of an enum for mdns_hos::probing_state
...
This saves some bytes only, but it is actually more common in lwip code
2018-06-28 21:56:59 +02:00
Simon Goldschmidt
6067edfed3
mdns: add defines for mdns_name_result_cb_t result parameter
2018-06-28 21:52:58 +02:00
Jens Nielsen
9f1196fb53
MDNS send probes to verify domain before use
...
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-06-28 21:41:10 +02:00
Simon Goldschmidt
0610b34372
httpd: fixed duplicate NULL check
...
See bug #54196 .
Reported-by: Andrey Vinogradov <andrey.vinogradov@teplomonitor.ru>
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-06-27 20:53:30 +02:00
Axel Lin
4027a2ae58
Introduce lwip_toupper and use it in netbiosns.c
...
This fixes build error when LWIP_NO_CTYPE_H=1.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Acked-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-06-27 23:16:03 +08:00
Axel Lin
a56e61c942
Fix compiling with LWIP_NOASSERT defined
...
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-06-24 18:18:35 +08:00
Simon Goldschmidt
d80e84864e
httpd deduplicate code in http_send_data_ssi
...
Keep lead-in/lead-out tag in an array
2018-06-22 22:23:26 +02:00
Lucas Vinicius Hartmann
0acf37fd75
Added JavaScript-friendly ssi /*#tag*/.
2018-06-22 22:06:14 +02:00
Simon Goldschmidt
58f928a181
lwiperf: remove the comments that this is IPv4 only
...
IPv6 works (tested against iperf version 2.0.9 on linux)
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-06-22 06:39:04 +02:00
Simon Goldschmidt
b9b74b2d92
lwiperf: make tradeoff client mode work
2018-06-21 22:06:36 +02:00
Simon Goldschmidt
9992b48e90
fix compiling with LWIP_NOASSERT defined
...
See bug #54157
2018-06-20 20:56:20 +02:00
Simon Goldschmidt
871f27628b
lwiperf: fix unused function warning/error
2018-06-18 07:24:42 +02:00
Simon Goldschmidt
58b5a5fc5a
lwiperf: implemented "dual" client mode
2018-06-17 21:04:57 +02:00
Simon Goldschmidt
a057caee45
lwiperf: start implementing iperf client
...
Only the transmission side works for now (todo: dual and tradeoff mode).
Also, only a 10 second timeout mode is implemented for now.
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-06-15 22:26:32 +02:00
Simon Goldschmidt
eb91fdd861
httpd: fix missing null termination when searching for a default file in file system folder
2018-06-12 20:14:04 +02:00
Dirk Ziegelmeier
d996d0f486
Apply patch #9629 : tftp_cleanup() should clean up more
...
By Jens Nielsen
2018-05-21 09:27:31 +02:00
Simon Goldschmidt
0f165ff136
etharp: use generic types in external access to ARP table
...
This should hide the internal type used for access to the ARP table
which currently is s8_t or u8_t, depending on the use case.
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-05-17 21:16:06 +02:00
Axel Lin
ec8c764fcb
apps/smtp: Fix build warning when !(SMTP_SUPPORT_AUTH_PLAIN || SMTP_SUPPORT_AUTH_LOGIN)
...
Fix build warning: ‘smtp_base64_encode’ declared ‘static’ but never defined.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-05-17 19:50:17 +08:00
Axel Lin
795f05c5d3
apps/smtp: Fix build warning when SMTP_CHECK_DATA==0
...
Fix build warning: 'smtp_verify' declared 'static' but never defined.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-05-17 17:06:31 +08:00
goldsimon
a445172661
makefsdata: fix hiding local variable 'i'
2018-05-02 10:05:24 +02:00
goldsimon
b2ef9d9046
netbiosns: fix bug #53747 (need to verify received packet length)
2018-04-25 20:56:34 +02:00
Our Air Quality
373bf8c36d
Quieten a toupper() compiler warning.
...
Gcc complains that an array index is a 'char' when passing a 'char' to
toupper(). Quieten this by coercing to an 'unsigned char'.
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-04-25 20:39:25 +02:00
Jens Nielsen
c34120e855
TFTP server handle retransmit Data packets
...
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-04-25 20:29:31 +02:00
goldsimon
b1fe8cf4b8
netbiosns: check question type before generating an answer
2018-04-18 08:17:10 +02:00
goldsimon
f65911a84b
netbios: fix response length of node status response
2018-04-18 07:28:41 +02:00
Dirk Ziegelmeier
66800925cf
Fix indent in netbiosns.c
2018-04-17 14:08:59 +02:00
Dirk Ziegelmeier
533c97f0c3
Fix bug #53626 : NetBIOS Responder generates malformed packet responding to "*" name
...
Implement corrected answer packet
2018-04-16 10:40:05 +02:00
goldsimon
4cc953d0e3
httpd: fixed compiling makefsdata.c
2018-04-04 21:45:47 +02:00
Ray Abram
b0ae967660
NetBIOS Responder should respond to "*" names
...
See bug #53325
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-04-03 22:19:18 +02:00
Tom Ferrin
82d8f08451
Add "server reachability" register to SNTP
...
Guarded with SNTP_MONITOR_SERVER_REACHABILITY (sntp_opts.h).
See patch 9581
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-04-03 21:56:33 +02:00
Tom Ferrin
e46b9ad4ac
sntp: store server IP address after DNS lookup
...
See patch #9612
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-04-03 21:16:05 +02:00
Giuseppe Modugno
2d4da92eeb
makefsdata: added options to skip and avoid compressing some extensions
...
See patch #9605
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-04-03 21:08:25 +02:00
goldsimon
c974fc9d43
http_client: fix compiling if mem_size_t is smaller than size_t
2018-03-21 09:33:00 +01:00
Axel Lin
600527dde7
apps/http: httpd: Fix unused parameter warning if !LWIP_HTTPD_SUPPORT_V09
...
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-03-21 15:05:33 +08:00
Axel Lin
e19d908f0e
apps/http: Fix httpd_structs.h build error
...
Fixes: bug #53382 : HTTPD_ADDITIONAL_CONTENT_TYPES doesn't compile
Reported-by: Giuseppe Modugno <giuseppe.modugno.loqed@gmail.com>
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-03-19 21:08:17 +08:00
goldsimon
253fcc8dcd
http_client: call tcp_recved for header bytes
...
Without this, closing the connection after successful transfer resulted
in a RST being sent because the window was not fully marked as 'recved'.
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-03-09 11:30:23 +01:00
goldsimon
61a1b98cc9
various IPv6-only compile fixes
2018-03-07 20:55:00 +01:00
goldsimon
b6d9bb6b2a
http_client: check current state when receiving FIN
2018-03-06 21:51:13 +01:00
Axel Lin
53ddb9244b
apps/sntp: Trivial build warning fix
...
Fix below build warning:
../../../../lwip/src/apps/sntp/sntp.c: In function ‘sntp_servermode_dhcp’:
../../../../lwip/src/apps/sntp/sntp.c:726:3: warning: ISO C90 forbids mixed declarations and code [-Wc90-c99-compat]
u8_t new_mode = set_servers_from_dhcp ? 1 : 0;
^~~~
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-03-04 19:18:26 +08:00
goldsimon
0ee0393936
fix compiling http_client and altcp_proxyconnect with gcc
2018-02-22 09:12:51 +01:00
goldsimon
7b9e145fc5
http_client: change user-agent and make it overridable
2018-02-21 20:18:29 +01:00
goldsimon
2753eb1fb1
add an altcp layer for http proxy connect (e.g. to tunnel TLS through a http proxy)
...
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-21 20:18:05 +01:00
goldsimon
a0e900dd02
makefsdata: update usage output to code
2018-02-21 14:42:47 +01:00
goldsimon
325cdf3c0b
altcp_tls_mbedtls: restructure upper callbacks to prevent double-free
...
This fixes bug #53192 : use-after-free in altcp_mbedtls
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-21 14:20:34 +01:00
goldsimon
d66c0e3381
altcp: mbedtls: move freeing state->rx from close to dealloc (catch-all)
2018-02-20 22:12:11 +01:00
goldsimon
842b9f4429
altcp: simplify creating different types by adding an allocator concept
...
This is done with an example in the http_client
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-19 21:41:48 +01:00
Dirk Ziegelmeier
5b33d33e34
Add HTTP client to documentation
2018-02-19 09:01:44 +01:00
goldsimon
ef29f2d401
http_client: httpc_tcp_recv did not return inner_conn's recv return value
...
Signed-off-by: goldsimon <goldsimon@gmx.de>
Reported-by: Our Air Quality <info@ourairquality.org>
2018-02-18 09:02:00 +01:00
goldsimon
2648d30843
altcp_tls_mbedtls.c: tiny function rename
2018-02-16 13:57:38 +01:00
goldsimon
bd656efd64
http client: add https support, fix parsing header with chained pbufs
2018-02-16 12:29:40 +01:00
goldsimon
e87392cc85
http client: fix proxy support
2018-02-16 09:18:35 +01:00
goldsimon
3dafa72ec8
apps: add http client
...
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-15 22:10:29 +01:00
goldsimon
d4c4b0eec5
rename folder 'src/apps/httpd' to 'http'
...
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-15 20:13:25 +01:00
goldsimon
cd1516e2e4
mqtt: rewrote check for topc_len so that coverity is happy...
2018-02-15 09:15:40 +01:00
Axel Lin
5d5b8fbb46
Fix trivial copy & paste mistake for comment in header files
...
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-02-14 22:49:12 +08:00
goldsimon
133bf70ab5
mqtt: slightly change some overflow checks
2018-02-14 12:37:35 +01:00
goldsimon
eea95459c9
mqtt: add more length validity checks in mqtt_message_received
...
This also (but not only) fixes bug #52345 ("MQTT buffer length check seems wrong")
2018-02-14 12:08:15 +01:00
goldsimon
731336223f
mqtt: add comments in mqtt_parse_incoming
2018-02-14 06:54:56 +01:00
goldsimon
e20e9bc3d4
Try to fix issues reported by coverity
2018-02-13 12:09:18 +01:00
goldsimon
010b0210ba
netif: ext_callback: make LWIP_NSC_ defines, not an enum; fix mdns accordingly
...
Re-applied after reverting d6e58d02a6
2018-02-08 12:36:26 +01:00
goldsimon
f201d261b2
Revert "MDNS send probes to verify domain before use"
...
This reverts commit d6e58d02a6
.
Erik seems to have commit this by accident. Let's discuss this first
(see patch #9555 )
2018-02-08 12:28:04 +01:00
goldsimon
3cf906e073
Revert "netif: ext_callback: make LWIP_NSC_ defines, not an enum; fix mdns accordingly"
...
This reverts commit 6934bb4428
.
Need to revert commit d6e58d02a6
first, and that one produced merge conflicts.
2018-02-08 12:26:16 +01:00
goldsimon
f7be3d10ae
httpd: create "connection" and "content-length" headers when file is ready
...
see patch #9500
2018-02-07 21:27:42 +01:00
goldsimon
e8d7e82c8c
httpd: fix simple typo
2018-02-07 21:19:07 +01:00
goldsimon
6934bb4428
netif: ext_callback: make LWIP_NSC_ defines, not an enum; fix mdns accordingly
2018-02-07 20:35:49 +01:00
goldsimon
ea2e628ac3
httpd: get_http_headers: refactor decision for add_content_len
2018-02-03 21:58:45 +01:00
goldsimon
1a75112b47
httpd: ensure hs->keepalive is 0 if content length is not sent
...
Connections for custom files without the persistent flag were not
closed without this change.
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-03 21:53:44 +01:00