1c87c5fbaSopenharmony_ci// -*- mode:doc; -*- 2c87c5fbaSopenharmony_ci// vim: set syntax=asciidoc tw=0 3c87c5fbaSopenharmony_ci 4c87c5fbaSopenharmony_cicoap-client(5) 5c87c5fbaSopenharmony_ci============== 6c87c5fbaSopenharmony_ci:doctype: manpage 7c87c5fbaSopenharmony_ci:man source: coap-client 8c87c5fbaSopenharmony_ci:man version: @PACKAGE_VERSION@ 9c87c5fbaSopenharmony_ci:man manual: coap-client Manual 10c87c5fbaSopenharmony_ci 11c87c5fbaSopenharmony_ciNAME 12c87c5fbaSopenharmony_ci----- 13c87c5fbaSopenharmony_cicoap-client, 14c87c5fbaSopenharmony_cicoap-client-gnutls, 15c87c5fbaSopenharmony_cicoap-client-mbedtls, 16c87c5fbaSopenharmony_cicoap-client-openssl, 17c87c5fbaSopenharmony_cicoap-client-notls 18c87c5fbaSopenharmony_ci- CoAP Client based on libcoap 19c87c5fbaSopenharmony_ci 20c87c5fbaSopenharmony_ciSYNOPSIS 21c87c5fbaSopenharmony_ci-------- 22c87c5fbaSopenharmony_ci*coap-client* [*-a* addr] [*-b* [num,]size] [*-e* text] [*-f* file] [*-l* loss] 23c87c5fbaSopenharmony_ci [*-m* method] [*-o* file] [*-p* port] [*-r*] [*-s duration*] 24c87c5fbaSopenharmony_ci [*-t* type] [*-v* num] [*-w*] [*-A* type] [*-B* seconds] 25c87c5fbaSopenharmony_ci [*-E* oscore_conf_file[,seq_file]] [*-G* count] [*-H* hoplimit] 26c87c5fbaSopenharmony_ci [*-K* interval] [*-L* value] [*-N*] [*-O* num,text] 27c87c5fbaSopenharmony_ci [*-P* scheme://addr[:port]] [*-T* token] [*-U*] [*-V* num] 28c87c5fbaSopenharmony_ci [*-X* size] 29c87c5fbaSopenharmony_ci [[*-h* match_hint_file] [*-k* key] [*-u* user]] 30c87c5fbaSopenharmony_ci [[*-c* certfile] [*-j* keyfile] [*-n*] [*-C* cafile] 31c87c5fbaSopenharmony_ci [*-J* pkcs11_pin] [*-M* rpk_file] [*-R* trust_casfile]] URI 32c87c5fbaSopenharmony_ci 33c87c5fbaSopenharmony_ciFor *coap-client* versions that use libcoap compiled for different 34c87c5fbaSopenharmony_ci(D)TLS libraries, *coap-client-notls*, *coap-client-gnutls*, 35c87c5fbaSopenharmony_ci*coap-client-openssl*, *coap-client-mbedtls* or *coap-client-tinydtls* may be 36c87c5fbaSopenharmony_ciavailable. Otherwise, *coap-client* uses the default libcoap (D)TLS support. 37c87c5fbaSopenharmony_ci 38c87c5fbaSopenharmony_ciDESCRIPTION 39c87c5fbaSopenharmony_ci----------- 40c87c5fbaSopenharmony_ci*coap-client* is a CoAP client to communicate with 6LoWPAN devices via 41c87c5fbaSopenharmony_cithe protocol CoAP (RFC 7252) using the URI given as argument on the 42c87c5fbaSopenharmony_cicommand line. The URI must have the scheme 'coap', 'coap+tcp', 'coaps' or 43c87c5fbaSopenharmony_ci'coaps+tcp'. 44c87c5fbaSopenharmony_ci 45c87c5fbaSopenharmony_ci'coaps' and 'coaps+tcp' are only supported when 46c87c5fbaSopenharmony_cicoap-client is built with support for secure (D)TLS communication. 47c87c5fbaSopenharmony_ci 48c87c5fbaSopenharmony_ciIf 'coaps' or 'coaps+tcp' is being used, provided the CoAP server supports PKI 49c87c5fbaSopenharmony_ciand is configured with a certificate and private key, the coap-client does not 50c87c5fbaSopenharmony_cineed to have a Pre-Shared Key (-k) or certificate (-c) configured. 51c87c5fbaSopenharmony_ci 52c87c5fbaSopenharmony_ciThe URI's host part may be a DNS name, a literal IP address or a Unix domain 53c87c5fbaSopenharmony_ciname. For Unix domain names, %2F is used as the / separator to differentiate 54c87c5fbaSopenharmony_cibetween the host and patch definitions. For IPv6 address references, angle 55c87c5fbaSopenharmony_cibrackets are required (c.f. EXAMPLES) to delimit the host portion of the URI. 56c87c5fbaSopenharmony_ci 57c87c5fbaSopenharmony_ciOPTIONS - General 58c87c5fbaSopenharmony_ci----------------- 59c87c5fbaSopenharmony_ci*-a* addr:: 60c87c5fbaSopenharmony_ci The local address of the interface that has to be used. + 61c87c5fbaSopenharmony_ci Note: Do not use this option if the interface is likely to be transient - 62c87c5fbaSopenharmony_ci i.e. it is a tunnel interface that may come and go, as this is likely to 63c87c5fbaSopenharmony_ci cause "No such device" errors on transmission. 64c87c5fbaSopenharmony_ci 65c87c5fbaSopenharmony_ci*-b* [num,]size:: 66c87c5fbaSopenharmony_ci The block size to be used in GET/PUT/POST requests (value must be a 67c87c5fbaSopenharmony_ci multiple of 16 not larger than 1024 as libcoap uses a fixed maximum 68c87c5fbaSopenharmony_ci PDU size of 1400 bytes). If 'num' is present, the request 69c87c5fbaSopenharmony_ci chain will start at block 'num'. When the server includes a Block2 70c87c5fbaSopenharmony_ci option in its response to a GET request, coap-client will automatically 71c87c5fbaSopenharmony_ci retrieve the subsequent block from the server until there are no more 72c87c5fbaSopenharmony_ci outstanding blocks for the requested content. 73c87c5fbaSopenharmony_ci 74c87c5fbaSopenharmony_ci*-e* text:: 75c87c5fbaSopenharmony_ci Include text as payload (use percent-encoding for non-ASCII characters). 76c87c5fbaSopenharmony_ci 77c87c5fbaSopenharmony_ci*-f* file:: 78c87c5fbaSopenharmony_ci File to send with PUT/POST (use '-' for STDIN). 79c87c5fbaSopenharmony_ci 80c87c5fbaSopenharmony_ci*-l* list:: 81c87c5fbaSopenharmony_ci Fail to send some datagrams specified by a comma separated list of 82c87c5fbaSopenharmony_ci numbers or number ranges (debugging only). 83c87c5fbaSopenharmony_ci 84c87c5fbaSopenharmony_ci*-l* loss%:: 85c87c5fbaSopenharmony_ci Randomly failed to send datagrams with the specified probability - 100% 86c87c5fbaSopenharmony_ci all datagrams, 0% no datagrams (debugging only). 87c87c5fbaSopenharmony_ci 88c87c5fbaSopenharmony_ci*-m* method:: 89c87c5fbaSopenharmony_ci The request method for action (get|put|post|delete), default is 'get'. 90c87c5fbaSopenharmony_ci (Note that the string passed to *-m* is compared case-insensitive.) 91c87c5fbaSopenharmony_ci 92c87c5fbaSopenharmony_ci*-o* file:: 93c87c5fbaSopenharmony_ci A filename to store data retrieved with GET. 94c87c5fbaSopenharmony_ci 95c87c5fbaSopenharmony_ci*-p* port:: 96c87c5fbaSopenharmony_ci The port to send from. 97c87c5fbaSopenharmony_ci 98c87c5fbaSopenharmony_ci*-r*:: 99c87c5fbaSopenharmony_ci Use reliable protocol (TCP or TLS). 100c87c5fbaSopenharmony_ci 101c87c5fbaSopenharmony_ci*-s* duration:: 102c87c5fbaSopenharmony_ci Subscribe to / observe the resource specified by URI for the given 103c87c5fbaSopenharmony_ci 'duration' in seconds. 104c87c5fbaSopenharmony_ci 105c87c5fbaSopenharmony_ci*-t* type:: 106c87c5fbaSopenharmony_ci Content format for given resource for PUT/POST. 'type' must be either 107c87c5fbaSopenharmony_ci a numeric value reflecting a valid CoAP content format or a string 108c87c5fbaSopenharmony_ci describing a registered format. The following registered content format 109c87c5fbaSopenharmony_ci descriptors are supported, with alternative shortcuts given in 110c87c5fbaSopenharmony_ci parentheses: 111c87c5fbaSopenharmony_ci 112c87c5fbaSopenharmony_ci text/plain (plain) 113c87c5fbaSopenharmony_ci application/link-format (link, link-format) 114c87c5fbaSopenharmony_ci application/xml (xml) 115c87c5fbaSopenharmony_ci application/octet-stream (binary, octet-stream) 116c87c5fbaSopenharmony_ci application/exi (exi) 117c87c5fbaSopenharmony_ci application/json (json) 118c87c5fbaSopenharmony_ci application/cbor (cbor) 119c87c5fbaSopenharmony_ci 120c87c5fbaSopenharmony_ci*-v* num:: 121c87c5fbaSopenharmony_ci The verbosity level to use (default 4, maximum is 8) for general 122c87c5fbaSopenharmony_ci CoAP logging. 123c87c5fbaSopenharmony_ci 124c87c5fbaSopenharmony_ci*-w*:: 125c87c5fbaSopenharmony_ci Append a newline to received data. 126c87c5fbaSopenharmony_ci 127c87c5fbaSopenharmony_ci*-A* type:: 128c87c5fbaSopenharmony_ci Accepted media type. 'type' must be either a numeric value reflecting a 129c87c5fbaSopenharmony_ci valid CoAP content format or a string that specifies a registered format as 130c87c5fbaSopenharmony_ci described for option *-t*. 131c87c5fbaSopenharmony_ci 132c87c5fbaSopenharmony_ci*-B* seconds:: 133c87c5fbaSopenharmony_ci Break operation after waiting given seconds (default is 90). 134c87c5fbaSopenharmony_ci 135c87c5fbaSopenharmony_ci*-E* oscore_conf_file[,seq_file]:: 136c87c5fbaSopenharmony_ci 'oscore_conf_file' contains OSCORE configuration. See *coap-oscore-conf*(5) 137c87c5fbaSopenharmony_ci for definitions. Optional 'seq_file' (which is created if needed) is used to 138c87c5fbaSopenharmony_ci save the current transmit sequence number, so on client restart sequence 139c87c5fbaSopenharmony_ci numbers continue to increase and are not reset to prevent anti-replay 140c87c5fbaSopenharmony_ci mechanisms being triggered. 141c87c5fbaSopenharmony_ci 142c87c5fbaSopenharmony_ci*-G* count :: 143c87c5fbaSopenharmony_ci Repeat the Request 'count' times with a second delay between each one. 144c87c5fbaSopenharmony_ci Must have a value between 1 and 255 inclusive. Default is '1'. 145c87c5fbaSopenharmony_ci 146c87c5fbaSopenharmony_ci*-H* hoplimit:: 147c87c5fbaSopenharmony_ci Set the Hop Limit count to hoplimit for proxies. Must have a value between 148c87c5fbaSopenharmony_ci 1 and 255 inclusive. Default is '16'. 149c87c5fbaSopenharmony_ci 150c87c5fbaSopenharmony_ci*-K* interval:: 151c87c5fbaSopenharmony_ci Send a ping after interval seconds of inactivity. 152c87c5fbaSopenharmony_ci If not specified (or 0), keep-alive is disabled (default). 153c87c5fbaSopenharmony_ci 154c87c5fbaSopenharmony_ci*-L* value:: 155c87c5fbaSopenharmony_ci Sum of one or more COAP_BLOCK_* flag values for different block handling 156c87c5fbaSopenharmony_ci methods. Default is 1 (COAP_BLOCK_USE_LIBCOAP). 157c87c5fbaSopenharmony_ci 158c87c5fbaSopenharmony_ci COAP_BLOCK_USE_LIBCOAP 1 159c87c5fbaSopenharmony_ci COAP_BLOCK_SINGLE_BODY 2 160c87c5fbaSopenharmony_ci COAP_BLOCK_TRY_Q_BLOCK 4 161c87c5fbaSopenharmony_ci COAP_BLOCK_USE_M_Q_BLOCK 8 162c87c5fbaSopenharmony_ci COAP_BLOCK_NO_PREEMPTIVE_RTAG 16 163c87c5fbaSopenharmony_ci 164c87c5fbaSopenharmony_ci*-N* :: 165c87c5fbaSopenharmony_ci Send NON-confirmable message. If option *-N* is not specified, a 166c87c5fbaSopenharmony_ci confirmable message will be sent. 167c87c5fbaSopenharmony_ci 168c87c5fbaSopenharmony_ci*-O* num,text:: 169c87c5fbaSopenharmony_ci Add option 'num' with contents of 'text' to the request. If the text begins 170c87c5fbaSopenharmony_ci with 0x, then the hex text (two [0-9a-f] per byte) is converted to binary 171c87c5fbaSopenharmony_ci data. 172c87c5fbaSopenharmony_ci 173c87c5fbaSopenharmony_ci*-P* scheme://addr[:port]:: 174c87c5fbaSopenharmony_ci Scheme, address and optional port to define how to connect to a CoAP proxy 175c87c5fbaSopenharmony_ci (automatically adds Proxy-Uri option to request) to forward the request to. 176c87c5fbaSopenharmony_ci Scheme is one of coap, coaps, coap+tcp and coaps+tcp. 177c87c5fbaSopenharmony_ci 178c87c5fbaSopenharmony_ci*-T* token:: 179c87c5fbaSopenharmony_ci Define the initial starting 'token' for the request (up to 24 characters). 180c87c5fbaSopenharmony_ci 181c87c5fbaSopenharmony_ci*-U* :: 182c87c5fbaSopenharmony_ci Never include Uri-Host or Uri-Port options. 183c87c5fbaSopenharmony_ci 184c87c5fbaSopenharmony_ci*-V* num:: 185c87c5fbaSopenharmony_ci The verbosity level to use (default 3, maximum is 7) for (D)TLS 186c87c5fbaSopenharmony_ci library logging. 187c87c5fbaSopenharmony_ci 188c87c5fbaSopenharmony_ci*-X* size:: 189c87c5fbaSopenharmony_ci Maximum message size to use for TCP based connections (default is 8388864). 190c87c5fbaSopenharmony_ci Maximum value of 2^32 -1. 191c87c5fbaSopenharmony_ci 192c87c5fbaSopenharmony_ciOPTIONS - PSK 193c87c5fbaSopenharmony_ci------------- 194c87c5fbaSopenharmony_ci(If supported by underlying (D)TLS library) 195c87c5fbaSopenharmony_ci 196c87c5fbaSopenharmony_ci*-h* match_hint_file:: 197c87c5fbaSopenharmony_ci This is a file that contains one or more lines of received Identity Hints 198c87c5fbaSopenharmony_ci to match to use different user identity and associated pre-shared key (PSK) 199c87c5fbaSopenharmony_ci (comma separated) instead of the *-k key* and *-u user* options. E.g., per 200c87c5fbaSopenharmony_ci line + 201c87c5fbaSopenharmony_ci hint_to_match,use_user,with_key + 202c87c5fbaSopenharmony_ci A line that starts with # is treated as a comment. + 203c87c5fbaSopenharmony_ci Note: *-k key* and *-u user* still need to be defined for the default case in 204c87c5fbaSopenharmony_ci case there is no match. 205c87c5fbaSopenharmony_ci 206c87c5fbaSopenharmony_ci*-k* key:: 207c87c5fbaSopenharmony_ci Pre-shared key for the specified user identity (*-u* option also required). 208c87c5fbaSopenharmony_ci 209c87c5fbaSopenharmony_ci*-u* user:: 210c87c5fbaSopenharmony_ci User identity to send for pre-shared key mode (*-k* option also required). 211c87c5fbaSopenharmony_ci 212c87c5fbaSopenharmony_ciOPTIONS - PKI 213c87c5fbaSopenharmony_ci------------- 214c87c5fbaSopenharmony_ci(If supported by underlying (D)TLS library) 215c87c5fbaSopenharmony_ci 216c87c5fbaSopenharmony_ci*Note:* If any one of *certfile*, *keyfile* or *cafile* is in PKCS11 URI 217c87c5fbaSopenharmony_cinaming format (pkcs11: prefix), then any remaining non PKCS11 URI file 218c87c5fbaSopenharmony_cidefinitions have to be in DER, not PEM, format. Otherwise all of 219c87c5fbaSopenharmony_ci*certfile*, *keyfile* or *cafile* are in PEM format. 220c87c5fbaSopenharmony_ci 221c87c5fbaSopenharmony_ci*-c* certfile:: 222c87c5fbaSopenharmony_ci PEM file or PKCS11 URI for the certificate. The private key can also be in 223c87c5fbaSopenharmony_ci the PEM file, or has the same PKCS11 URI. If not, the private key is defined 224c87c5fbaSopenharmony_ci by *-j keyfile*. 225c87c5fbaSopenharmony_ci 226c87c5fbaSopenharmony_ci*-j* keyfile:: 227c87c5fbaSopenharmony_ci PEM file or PKCS11 URI for the private key for the certificate in *-c 228c87c5fbaSopenharmony_ci certfile* if the parameter is different from certfile in *-c certfile*. 229c87c5fbaSopenharmony_ci 230c87c5fbaSopenharmony_ci*-n* :: 231c87c5fbaSopenharmony_ci Disable remote peer certificate checking. 232c87c5fbaSopenharmony_ci 233c87c5fbaSopenharmony_ci*-C* cafile:: 234c87c5fbaSopenharmony_ciPEM file or PKCS11 URI for the CA certificate that was used to sign the server 235c87c5fbaSopenharmony_ci certfile. Ideally the client certificate should be signed by the same CA so 236c87c5fbaSopenharmony_ci that mutual authentication can take place. The contents of cafile are added 237c87c5fbaSopenharmony_ci to the trusted store of root CAs. Using the *-C* or *-R* options will trigger 238c87c5fbaSopenharmony_ci the validation of the server certificate unless overridden by the *-n* option. 239c87c5fbaSopenharmony_ci 240c87c5fbaSopenharmony_ci*-J* pkcs11_pin:: 241c87c5fbaSopenharmony_ci The user pin to unlock access to the PKCS11 token. 242c87c5fbaSopenharmony_ci 243c87c5fbaSopenharmony_ci*-M* rpk_file:: 244c87c5fbaSopenharmony_ci Raw Public Key (RPK) PEM file or PKCS11 URI that contains both PUBLIC KEY 245c87c5fbaSopenharmony_ci and PRIVATE KEY or just EC PRIVATE KEY. (GnuTLS and TinyDTLS(PEM) support 246c87c5fbaSopenharmony_ci only). *-C cafile* or *-R trust_casfile* are not required. 247c87c5fbaSopenharmony_ci 248c87c5fbaSopenharmony_ci*-R* trust_casfile:: 249c87c5fbaSopenharmony_ci PEM file containing the set of trusted root CAs that are to be used to 250c87c5fbaSopenharmony_ci validate the server certificate. Alternatively, this can point to a 251c87c5fbaSopenharmony_ci directory containing a set of CA PEM files. The *-C cafile* CA does not have 252c87c5fbaSopenharmony_ci to be in this list and is trusted for the validation. Using 253c87c5fbaSopenharmony_ci *-R trust_casfile* disables common CA mutual authentication which can only 254c87c5fbaSopenharmony_ci be done by using *-C cafile*. Using the *-C* or *-R* options will will 255c87c5fbaSopenharmony_ci trigger the validation of the server certificate unless overridden by the 256c87c5fbaSopenharmony_ci *-n* option. 257c87c5fbaSopenharmony_ci 258c87c5fbaSopenharmony_ciEXAMPLES 259c87c5fbaSopenharmony_ci-------- 260c87c5fbaSopenharmony_ci* Example 261c87c5fbaSopenharmony_ci---- 262c87c5fbaSopenharmony_cicoap-client coap://libcoap.net 263c87c5fbaSopenharmony_ci---- 264c87c5fbaSopenharmony_ciQuery the resource '/' from server 'libcoap.net' (using the GET method). 265c87c5fbaSopenharmony_ci 266c87c5fbaSopenharmony_ci* Example 267c87c5fbaSopenharmony_ci---- 268c87c5fbaSopenharmony_cicoap-client -m get coap://[::1]/ 269c87c5fbaSopenharmony_ci---- 270c87c5fbaSopenharmony_ciQuery the resource '/' on localhost using the 'GET' method to get back the 271c87c5fbaSopenharmony_cisummary information. 272c87c5fbaSopenharmony_ci 273c87c5fbaSopenharmony_ci* Example 274c87c5fbaSopenharmony_ci---- 275c87c5fbaSopenharmony_cicoap-client -m get coap://%2Fsome%2Funix%2Fdomain%2Fpath/time 276c87c5fbaSopenharmony_ci---- 277c87c5fbaSopenharmony_ciQuery the resource '/time' on server listening on datagram Unix domain 278c87c5fbaSopenharmony_ci'/some/unix/domain/path' using the 'GET' method to get back the 279c87c5fbaSopenharmony_cicurrent time. The %2F is the hex encoding for / and indicates 280c87c5fbaSopenharmony_ciwhich is the 'host' definition separator and the simple / is for the path 281c87c5fbaSopenharmony_cidefinition separator. 282c87c5fbaSopenharmony_ci 283c87c5fbaSopenharmony_ci* Example 284c87c5fbaSopenharmony_ci---- 285c87c5fbaSopenharmony_cicoap-client -m get coap://[::1]/.well-known/core 286c87c5fbaSopenharmony_ci---- 287c87c5fbaSopenharmony_ciQuery on the resource '.well-known/core' on localhost to get back a list of 288c87c5fbaSopenharmony_cithe known resources along with their attribute definitions. 289c87c5fbaSopenharmony_ci 290c87c5fbaSopenharmony_ci* Example 291c87c5fbaSopenharmony_ci---- 292c87c5fbaSopenharmony_ciecho -n "mode=on" | coap-client -m put \ 293c87c5fbaSopenharmony_cicoap://[2001:db8:c001:f00d:221:2eff:ff00:2704]:5683/actuators/leds?color=r -f- 294c87c5fbaSopenharmony_ci---- 295c87c5fbaSopenharmony_ciSend text 'mode=on' to resource 'actuators/leds?color=r' on the endpoint with 296c87c5fbaSopenharmony_ciaddress '2001:db8:c001:f00d:221:2eff:ff00:2704' and port '5683'. Note that the 297c87c5fbaSopenharmony_ciport '5683' is the default port and isn't actually required in this instance. 298c87c5fbaSopenharmony_ci 299c87c5fbaSopenharmony_ci* Example 300c87c5fbaSopenharmony_ci---- 301c87c5fbaSopenharmony_cicoap-client -m put coap://[fec0::3]/ck -T 3a -t binary -f to_upload 302c87c5fbaSopenharmony_ci---- 303c87c5fbaSopenharmony_ciPut the contents of file 'to_upload' with content type 'binary' (i.e. 304c87c5fbaSopenharmony_ciapplication/octet-stream) into resource 'ck' on 'fec0::3' using a token of 305c87c5fbaSopenharmony_ci'3a' via the 'PUT' method. 306c87c5fbaSopenharmony_ci 307c87c5fbaSopenharmony_ciFILES 308c87c5fbaSopenharmony_ci------ 309c87c5fbaSopenharmony_ciThere are no configuration files. 310c87c5fbaSopenharmony_ci 311c87c5fbaSopenharmony_ciEXIT STATUS 312c87c5fbaSopenharmony_ci----------- 313c87c5fbaSopenharmony_ci*0*:: 314c87c5fbaSopenharmony_ci Success 315c87c5fbaSopenharmony_ci 316c87c5fbaSopenharmony_ci*1*:: 317c87c5fbaSopenharmony_ci Failure (syntax or usage error; configuration error; document 318c87c5fbaSopenharmony_ci processing failure; unexpected error) 319c87c5fbaSopenharmony_ci 320c87c5fbaSopenharmony_ciSEE ALSO 321c87c5fbaSopenharmony_ci-------- 322c87c5fbaSopenharmony_ci 323c87c5fbaSopenharmony_ci*coap-server*(5) and *coap-oscore-conf*(5) 324c87c5fbaSopenharmony_ci 325c87c5fbaSopenharmony_ciBUGS 326c87c5fbaSopenharmony_ci----- 327c87c5fbaSopenharmony_ciPlease report bugs on the mailing list for libcoap: 328c87c5fbaSopenharmony_cilibcoap-developers@lists.sourceforge.net or raise an issue on GitHub at 329c87c5fbaSopenharmony_cihttps://github.com/obgm/libcoap/issues 330c87c5fbaSopenharmony_ci 331c87c5fbaSopenharmony_ciAUTHORS 332c87c5fbaSopenharmony_ci------- 333c87c5fbaSopenharmony_ciThe libcoap project <libcoap-developers@lists.sourceforge.net> 334