mirror of
https://github.com/obgm/libcoap.git
synced 2026-11-12 11:40:39 +03:00
Currently OpenSSL and MBedTLS do not support RFC7250. See https://en.wikipedia.org/wiki/Comparison_of_TLS_implementations#Extensions last column. GnuTLS >= 3.6.6 required. TinyDTLS update required. New option is_rpk_not_cert added to PKI setup structure which is enabled in coap-client and coap-server by the -M option and the use of a PUBLIC KEY instead of a CERTIFICATE in the cert file. If file is EC PRIVATE KEY, then it can be used for both the public and private key files. man/coap-client.txt.in: man/coap-server.txt.in: Document -M option. man/coap_encryption.txt.in: man/coap-server.txt.in: man/coap_context.txt.in: Add in documentation for RPK. examples/client.c: examples/coap-server.c: Add in support for is_rpk_not_cert and -M option. Stop sending ::1 for SNI - use localhost instead. include/coap2/coap_dtls.h: Add in is_rpk_not_cert option. include/coap2/str.h: src/str.c: libcoap-2.map: libcoap-2.sym: Add in coap_new_binary() and coap_delete_binary() functions. src/coap_openssl.c: Report RPK is not supported if invoked. Check that all received data is used up for error recovery. src/coap_mbedtls.c: Report RPK is not supported if invoked. Handle more MbedTLS generated errors. Check that all received data is used up for error recovery. src/coap_gnutls.c: Add in support for RPK. Add in sending Hello Verify if not cookie match in Client Hello Check that all received data is used up for error recovery. src/coap_tinydtls.c: Add in support for RPK. HOWTO.pkcs11: Update for use with RPK. Use .der file for '-C ca_file' definitions as later GnuTLS needs CA to be trusted in HSM.
This README documents the test cases supported for the 1st ETSI CoAP plugtest on March 24/25 in Paris, France. <http://www.etsi.org/plugtests/coap/coap.htm> Legend: [+] full support [o] partial support [-] no support [?] needs check [ ] has open issues Mandatory Tests [+] TD_COAP_CORE_01 Perform GET transaction (CON mode) [+] TD_COAP_CORE_02 Perform POST transaction (CON mode) [+] TD_COAP_CORE_03 Perform PUT transaction (CON mode) [+] TD_COAP_CORE_04 Perform DELETE transaction (CON mode) [+] TD_COAP_CORE_05 Perform GET transaction (NON mode) [+] TD_COAP_CORE_06 Perform POST transaction (NON mode) [+] TD_COAP_CORE_07 Perform PUT transaction (NON mode) [+] TD_COAP_CORE_08 Perform DELETE transaction (NON mode) [+] TD_COAP_CORE_09 Perform GET transaction with delayed response (CON mode, no piggyback) [+] TD_COAP_CORE_10 Handle request containing Token option [+] TD_COAP_CORE_11 Handle request not containing Token option [+] TD_COAP_CORE_12 Handle request containing several Uri-Path options [+] TD_COAP_CORE_13 Handle request containing several Uri-Query options [?] TD_COAP_CORE_14 Interoperate in lossy context (CON mode, piggybacked response) [?] TD_COAP_CORE_15 Interoperate in lossy context (CON mode, delayed response) Optional Tests [ ] TD_COAP_LINK_01 Access to well-known interface for resource discovery [-] TD_COAP_LINK_02 Use filtered requests for limiting discovery results [+] TD_COAP_BLOCK_01 Handle GET blockwise transfer for large resource (early negotiation) [+] TD_COAP_BLOCK_02 Handle GET blockwise transfer for large resource (late negotiation) [-] TD_COAP_BLOCK_03 Handle PUT blockwise transfer for large resource [-] TD_COAP_BLOCK_04 Handle POST blockwise transfer for large resource [-] TD_COAP_OBS_01 Handle resource observation [-] TD_COAP_OBS_02 Stop resource observation [-] TD_COAP_OBS_03 Client detection of deregistration (Max-Age) [-] TD_COAP_OBS_04 Server detection of deregistration (client OFF) [-] TD_COAP_OBS_05 Server detection of deregistration (explicit RST)