Loading...
Searching...
No Matches
CoAP defines

Generic CoAP values as defined by RFC7252. More...

Detailed Description

Generic CoAP values as defined by RFC7252.

Modules

 CoAP compile configurations
 

Files

file  coap.h
 Generic CoAP values as defined by RFC7252.
 

Macros

#define COAP_PORT   (5683)
 Default CoAP port.
 
#define COAPS_PORT   (5684)
 Default CoAP DTLS port.
 
#define COAP_V1   (1)
 Identifier for CoAP version 1 (RFC 7252)
 
#define COAP_PAYLOAD_MARKER   (0xFF)
 Marks the boundary between header and payload.
 

Enumerations

enum  coap_blksize_t {
  COAP_BLOCKSIZE_16 = 0 , COAP_BLOCKSIZE_32 , COAP_BLOCKSIZE_64 , COAP_BLOCKSIZE_128 ,
  COAP_BLOCKSIZE_256 , COAP_BLOCKSIZE_512 , COAP_BLOCKSIZE_1024
}
 Coap block-wise-transfer size SZX. More...
 

CoAP method codes used in header

enum  coap_method_t {
  COAP_METHOD_GET = 1 , COAP_METHOD_POST = 2 , COAP_METHOD_PUT = 3 , COAP_METHOD_DELETE = 4 ,
  COAP_METHOD_FETCH = 5 , COAP_METHOD_PATCH = 6 , COAP_METHOD_IPATCH = 7
}
 CoAP method codes used in request. More...
 
#define COAP_CLASS_REQ   (0)
 Code Class for Request.
 

CoAP option numbers

#define COAP_OPT_IF_MATCH   (1)
 
#define COAP_OPT_URI_HOST   (3)
 
#define COAP_OPT_ETAG   (4)
 
#define COAP_OPT_IF_NONE_MATCH   (5)
 
#define COAP_OPT_OBSERVE   (6)
 
#define COAP_OPT_LOCATION_PATH   (8)
 
#define COAP_OPT_OSCORE   (9)
 OSCORE option.
 
#define COAP_OPT_URI_PATH   (11)
 
#define COAP_OPT_CONTENT_FORMAT   (12)
 
#define COAP_OPT_MAX_AGE   (14)
 
#define COAP_OPT_URI_QUERY   (15)
 
#define COAP_OPT_HOP_LIMIT   (16)
 Hop-Limit option.
 
#define COAP_OPT_ACCEPT   (17)
 
#define COAP_OPT_Q_BLOCK1   (19)
 Q-Block1 option.
 
#define COAP_OPT_LOCATION_QUERY   (20)
 
#define COAP_OPT_EDHOC   (21)
 EDHOC option.
 
#define COAP_OPT_BLOCK2   (23)
 
#define COAP_OPT_BLOCK1   (27)
 
#define COAP_OPT_SIZE2   (28)
 Size2 option.
 
#define COAP_OPT_Q_BLOCK2   (31)
 Q-Block2 option.
 
#define COAP_OPT_PROXY_URI   (35)
 
#define COAP_OPT_PROXY_SCHEME   (39)
 
#define COAP_OPT_SIZE1   (60)
 Size1 option.
 
#define COAP_OPT_ECHO   (252)
 Echo option.
 
#define COAP_OPT_NO_RESPONSE   (258)
 suppress CoAP response
 
#define COAP_OPT_REQUEST_TAG   (292)
 Request-Tag option.
 

Message types – confirmable, non-confirmable, etc.

#define COAP_TYPE_CON   (0)
 
#define COAP_TYPE_NON   (1)
 
#define COAP_TYPE_ACK   (2)
 
#define COAP_TYPE_RST   (3)
 

Empty CoAP message code

#define COAP_CODE_EMPTY   (0)
 

Response message codes: success

#define COAP_CLASS_SUCCESS   (2)
 
#define COAP_CODE_CREATED   ((2 << 5) | 1)
 
#define COAP_CODE_DELETED   ((2 << 5) | 2)
 
#define COAP_CODE_VALID   ((2 << 5) | 3)
 
#define COAP_CODE_CHANGED   ((2 << 5) | 4)
 
#define COAP_CODE_204   ((2 << 5) | 4)
 
#define COAP_CODE_CONTENT   ((2 << 5) | 5)
 
#define COAP_CODE_205   ((2 << 5) | 5)
 
#define COAP_CODE_CONTINUE   ((2 << 5) | 31)
 
#define COAP_CODE_231   ((2 << 5) | 31)
 

Response message codes: client error

#define COAP_CLASS_CLIENT_FAILURE   (4)
 
#define COAP_CODE_BAD_REQUEST   ((4 << 5) | 0)
 
#define COAP_CODE_UNAUTHORIZED   ((4 << 5) | 1)
 
#define COAP_CODE_BAD_OPTION   ((4 << 5) | 2)
 
#define COAP_CODE_FORBIDDEN   ((4 << 5) | 3)
 
#define COAP_CODE_PATH_NOT_FOUND   ((4 << 5) | 4)
 
#define COAP_CODE_404   ((4 << 5) | 4)
 
#define COAP_CODE_METHOD_NOT_ALLOWED   ((4 << 5) | 5)
 
#define COAP_CODE_NOT_ACCEPTABLE   ((4 << 5) | 6)
 
#define COAP_CODE_REQUEST_ENTITY_INCOMPLETE   ((4 << 5) | 8)
 
#define COAP_CODE_CONFLICT   ((4 << 5) | 9)
 
#define COAP_CODE_PRECONDITION_FAILED   ((4 << 5) | 12)
 
#define COAP_CODE_REQUEST_ENTITY_TOO_LARGE   ((4 << 5) | 13)
 
#define COAP_CODE_UNSUPPORTED_CONTENT_FORMAT   ((4 << 5) | 15)
 
#define COAP_CODE_UNPROCESSABLE_ENTITY   ((4 << 5) | 22)
 
#define COAP_CODE_TOO_MANY_REQUESTS   ((4 << 5) | 29)
 

Response message codes: server error

#define COAP_CLASS_SERVER_FAILURE   (5)
 
#define COAP_CODE_INTERNAL_SERVER_ERROR   ((5 << 5) | 0)
 
#define COAP_CODE_NOT_IMPLEMENTED   ((5 << 5) | 1)
 
#define COAP_CODE_BAD_GATEWAY   ((5 << 5) | 2)
 
#define COAP_CODE_SERVICE_UNAVAILABLE   ((5 << 5) | 3)
 
#define COAP_CODE_GATEWAY_TIMEOUT   ((5 << 5) | 4)
 
#define COAP_CODE_PROXYING_NOT_SUPPORTED   ((5 << 5) | 5)
 

Content-Format option codes

#define COAP_FORMAT_TEXT   (0)
 
#define COAP_FORMAT_COSE_ENCRYPT0   (16)
 Content-Type application/cose; cose-type="cose-encrypt0"
 
#define COAP_FORMAT_COSE_MAC0   (17)
 Content-Type application/cose; cose-type="cose-mac0"
 
#define COAP_FORMAT_COSE_SIGN1   (18)
 Content-Type application/cose; cose-type="cose-sign1"
 
#define COAP_FORMAT_ACE_CBOR   (19)
 Content-Type application/ace+cbor
 
#define COAP_FORMAT_IMAGE_GIF   (21)
 Content-Type image/gif
 
#define COAP_FORMAT_IMAGE_JPEG   (22)
 Content-Type image/jpeg
 
#define COAP_FORMAT_IMAGE_PNG   (23)
 Content-Type image/png
 
#define COAP_FORMAT_LINK   (40)
 
#define COAP_FORMAT_XML   (41)
 
#define COAP_FORMAT_OCTET   (42)
 
#define COAP_FORMAT_EXI   (47)
 
#define COAP_FORMAT_JSON   (50)
 
#define COAP_FORMAT_JSON_PATCH_JSON   (51)
 
#define COAP_FORMAT_MERGE_PATCH_JSON   (52)
 
#define COAP_FORMAT_CBOR   (60)
 
#define COAP_FORMAT_CWT   (61)
 Content-Type application/cwt
 
#define COAP_FORMAT_MULTIPART_CORE   (62)
 Content-Type application/multipart-core
 
#define COAP_FORMAT_CBOR_SEQ   (63)
 Content-Type application/cbor-seq
 
#define COAP_FORMAT_COSE_ENCRYPT   (96)
 Content-Type application/cose; cose-type="cose-encrypt"
 
#define COAP_FORMAT_COSE_MAC   (97)
 Content-Type application/cose; cose-type="cose-mac"
 
#define COAP_FORMAT_COSE_SIGN   (98)
 Content-Type application/cose; cose-type="cose-sign"
 
#define COAP_FORMAT_COSE_KEY   (101)
 Content-Type application/cose-key
 
#define COAP_FORMAT_COSE_KEY_SET   (102)
 Content-Type application/cose-key-set
 
#define COAP_FORMAT_SENML_JSON   (110)
 
#define COAP_FORMAT_SENSML_JSON   (111)
 
#define COAP_FORMAT_SENML_CBOR   (112)
 
#define COAP_FORMAT_SENSML_CBOR   (113)
 
#define COAP_FORMAT_SENML_EXI   (114)
 
#define COAP_FORMAT_SENSML_EXI   (115)
 
#define COAP_FORMAT_YANG_DATA_CBOR_SID   (140)
 Content-Type application/yang-data+cbor; id=sid
 
#define COAP_FORMAT_COAP_GROUP_JSON   (256)
 Content-Type application/coap-group+json
 
#define COAP_FORMAT_PROBLEM_DETAILS_CBOR   (257)
 Content-Type application/concise-problem-details+cbor
 
#define COAP_FORMAT_SWID_CBOR   (258)
 Content-Type application/swid+cbor
 
#define COAP_FORMAT_PKIXCMP   (259)
 Content-Type application/pkixcmp
 
#define COAP_FORMAT_DOTS_CBOR   (271)
 Content-Type application/dots+cbor
 
#define COAP_FORMAT_MISSING_BLOCKS_CBOR_SEQ   (272)
 Content-Type application/missing-blocks+cbor-seq
 
#define COAP_FORMAT_PKCS7_MIME_SERVER_GEN   (280)
 Content-Type application/pkcs7-mime; smime-type=server-generated-key
 
#define COAP_FORMAT_PKCS7_MIME_CERTS_ONLY   (281)
 Content-Type application/pkcs7-mime; smime-type=certs-only
 
#define COAP_FORMAT_PKCS8   (284)
 Content-Type application/pkcs8
 
#define COAP_FORMAT_CSRATTRS   (285)
 Content-Type application/csrattrs
 
#define COAP_FORMAT_PKCS10   (286)
 Content-Type application/pkcs10
 
#define COAP_FORMAT_PKIX_CERT   (287)
 Content-Type application/pkix-cert
 
#define COAP_FORMAT_AIF_CBOR   (290)
 Content-Type application/aif+cbor
 
#define COAP_FORMAT_AIF_JSON   (291)
 Content-Type application/aif+json
 
#define COAP_FORMAT_SENML_XML   (310)
 
#define COAP_FORMAT_SENSML_XML   (311)
 
#define COAP_FORMAT_SNML_ETCH_JSON   (320)
 Content-Type application/senml-etch+json
 
#define COAP_FORMAT_SNML_ETCH_CBOR   (322)
 Content-Type application/senml-etch+cbor
 
#define COAP_FORMAT_YAML_DATA_CBOR   (340)
 Content-Type application/yang-data+cbor
 
#define COAP_FORMAT_YAML_DATA_CBOR_ID_NAME   (341)
 Content-Type application/yang-data+cbor; id=name
 
#define COAP_FORMAT_TD_JSON   (432)
 Content-Type application/td+json
 
#define COAP_FORMAT_TM_JSON   (433)
 Content-Type application/tm+json
 
#define COAP_FORMAT_DNS_MESSAGE   (553)
 Content-Type application/dns-message
 
#define COAP_FORMAT_VOUCER_COSE_CBOR   (836)
 Content-Type application/voucher-cose+cbor
 
#define COAP_FORMAT_VND_OCF_CBOR   (10000)
 Content-Type application/vnd.ocf+cbor
 
#define COAP_FORMAT_OSCORE   (10001)
 Content-Type application/oscore
 
#define COAP_FORMAT_JAVASCRIPT   (10002)
 Content-Type application/javascript
 
#define COAP_FORMAT_JSON_DEFLATE   (11050)
 Content-Type application/json with Content Coding deflate
 
#define COAP_FORMAT_CBOR_DEFLATE   (11060)
 Content-Type application/cbor with Content Coding deflate
 
#define COAP_FORMAT_VND_OMA_LWM2M_TLV   (11542)
 Content-Type application/vnd.oma.lwm2m+tlv
 
#define COAP_FORMAT_VND_OMA_LWM2M_JSON   (11543)
 Content-Type application/vnd.oma.lwm2m+json
 
#define COAP_FORMAT_VND_OMA_LWM2M_CBOR   (11544)
 Content-Type application/vnd.oma.lwm2m+cbor
 
#define COAP_FORMAT_TEXT_CSS   (20000)
 Content-Type text/css
 
#define COAP_FORMAT_IMAGE_SVG_XML   (30000)
 Content-Type image/svg+xml
 

Observe (RFC 7641) constants

#define COAP_OBS_REGISTER   (0)
 
#define COAP_OBS_DEREGISTER   (1)
 

CoAP message format constants

#define COAP_TOKEN_LENGTH_MAX   (8)
 

CoAP option constants

#define COAP_ETAG_LENGTH_MAX   (8U)
 maximum length of the ETag option
 

Fixed timing parameters

#define COAP_NSTART   (1)
 
#define COAP_DEFAULT_LEISURE   (5)
 

Blockwise transfer (RFC7959)

#define COAP_BLOCKWISE_NUM_OFF   (4)
 
#define COAP_BLOCKWISE_MORE_OFF   (3)
 
#define COAP_BLOCKWISE_SZX_MASK   (0x07)
 
#define COAP_BLOCKWISE_SZX_MAX   (7)
 

Macro Definition Documentation

◆ COAP_BLOCKWISE_MORE_OFF

#define COAP_BLOCKWISE_MORE_OFF   (3)

Definition at line 610 of file coap.h.

◆ COAP_BLOCKWISE_NUM_OFF

#define COAP_BLOCKWISE_NUM_OFF   (4)

Definition at line 609 of file coap.h.

◆ COAP_BLOCKWISE_SZX_MASK

#define COAP_BLOCKWISE_SZX_MASK   (0x07)

Definition at line 611 of file coap.h.

◆ COAP_BLOCKWISE_SZX_MAX

#define COAP_BLOCKWISE_SZX_MAX   (7)

Definition at line 612 of file coap.h.

◆ COAP_CLASS_CLIENT_FAILURE

#define COAP_CLASS_CLIENT_FAILURE   (4)

Definition at line 209 of file coap.h.

◆ COAP_CLASS_REQ

#define COAP_CLASS_REQ   (0)

Code Class for Request.

Definition at line 166 of file coap.h.

◆ COAP_CLASS_SERVER_FAILURE

#define COAP_CLASS_SERVER_FAILURE   (5)

Definition at line 231 of file coap.h.

◆ COAP_CLASS_SUCCESS

#define COAP_CLASS_SUCCESS   (2)

Definition at line 193 of file coap.h.

◆ COAP_CODE_204

#define COAP_CODE_204   ((2 << 5) | 4)

Definition at line 198 of file coap.h.

◆ COAP_CODE_205

#define COAP_CODE_205   ((2 << 5) | 5)

Definition at line 200 of file coap.h.

◆ COAP_CODE_231

#define COAP_CODE_231   ((2 << 5) | 31)

Definition at line 202 of file coap.h.

◆ COAP_CODE_404

#define COAP_CODE_404   ((4 << 5) | 4)

Definition at line 215 of file coap.h.

◆ COAP_CODE_BAD_GATEWAY

#define COAP_CODE_BAD_GATEWAY   ((5 << 5) | 2)

Definition at line 234 of file coap.h.

◆ COAP_CODE_BAD_OPTION

#define COAP_CODE_BAD_OPTION   ((4 << 5) | 2)

Definition at line 212 of file coap.h.

◆ COAP_CODE_BAD_REQUEST

#define COAP_CODE_BAD_REQUEST   ((4 << 5) | 0)

Definition at line 210 of file coap.h.

◆ COAP_CODE_CHANGED

#define COAP_CODE_CHANGED   ((2 << 5) | 4)

Definition at line 197 of file coap.h.

◆ COAP_CODE_CONFLICT

#define COAP_CODE_CONFLICT   ((4 << 5) | 9)

Definition at line 219 of file coap.h.

◆ COAP_CODE_CONTENT

#define COAP_CODE_CONTENT   ((2 << 5) | 5)

Definition at line 199 of file coap.h.

◆ COAP_CODE_CONTINUE

#define COAP_CODE_CONTINUE   ((2 << 5) | 31)

Definition at line 201 of file coap.h.

◆ COAP_CODE_CREATED

#define COAP_CODE_CREATED   ((2 << 5) | 1)

Definition at line 194 of file coap.h.

◆ COAP_CODE_DELETED

#define COAP_CODE_DELETED   ((2 << 5) | 2)

Definition at line 195 of file coap.h.

◆ COAP_CODE_EMPTY

#define COAP_CODE_EMPTY   (0)

Definition at line 186 of file coap.h.

◆ COAP_CODE_FORBIDDEN

#define COAP_CODE_FORBIDDEN   ((4 << 5) | 3)

Definition at line 213 of file coap.h.

◆ COAP_CODE_GATEWAY_TIMEOUT

#define COAP_CODE_GATEWAY_TIMEOUT   ((5 << 5) | 4)

Definition at line 236 of file coap.h.

◆ COAP_CODE_INTERNAL_SERVER_ERROR

#define COAP_CODE_INTERNAL_SERVER_ERROR   ((5 << 5) | 0)

Definition at line 232 of file coap.h.

◆ COAP_CODE_METHOD_NOT_ALLOWED

#define COAP_CODE_METHOD_NOT_ALLOWED   ((4 << 5) | 5)

Definition at line 216 of file coap.h.

◆ COAP_CODE_NOT_ACCEPTABLE

#define COAP_CODE_NOT_ACCEPTABLE   ((4 << 5) | 6)

Definition at line 217 of file coap.h.

◆ COAP_CODE_NOT_IMPLEMENTED

#define COAP_CODE_NOT_IMPLEMENTED   ((5 << 5) | 1)

Definition at line 233 of file coap.h.

◆ COAP_CODE_PATH_NOT_FOUND

#define COAP_CODE_PATH_NOT_FOUND   ((4 << 5) | 4)

Definition at line 214 of file coap.h.

◆ COAP_CODE_PRECONDITION_FAILED

#define COAP_CODE_PRECONDITION_FAILED   ((4 << 5) | 12)

Definition at line 220 of file coap.h.

◆ COAP_CODE_PROXYING_NOT_SUPPORTED

#define COAP_CODE_PROXYING_NOT_SUPPORTED   ((5 << 5) | 5)

Definition at line 237 of file coap.h.

◆ COAP_CODE_REQUEST_ENTITY_INCOMPLETE

#define COAP_CODE_REQUEST_ENTITY_INCOMPLETE   ((4 << 5) | 8)

Definition at line 218 of file coap.h.

◆ COAP_CODE_REQUEST_ENTITY_TOO_LARGE

#define COAP_CODE_REQUEST_ENTITY_TOO_LARGE   ((4 << 5) | 13)

Definition at line 221 of file coap.h.

◆ COAP_CODE_SERVICE_UNAVAILABLE

#define COAP_CODE_SERVICE_UNAVAILABLE   ((5 << 5) | 3)

Definition at line 235 of file coap.h.

◆ COAP_CODE_TOO_MANY_REQUESTS

#define COAP_CODE_TOO_MANY_REQUESTS   ((4 << 5) | 29)

Definition at line 224 of file coap.h.

◆ COAP_CODE_UNAUTHORIZED

#define COAP_CODE_UNAUTHORIZED   ((4 << 5) | 1)

Definition at line 211 of file coap.h.

◆ COAP_CODE_UNPROCESSABLE_ENTITY

#define COAP_CODE_UNPROCESSABLE_ENTITY   ((4 << 5) | 22)

Definition at line 223 of file coap.h.

◆ COAP_CODE_UNSUPPORTED_CONTENT_FORMAT

#define COAP_CODE_UNSUPPORTED_CONTENT_FORMAT   ((4 << 5) | 15)

Definition at line 222 of file coap.h.

◆ COAP_CODE_VALID

#define COAP_CODE_VALID   ((2 << 5) | 3)

Definition at line 196 of file coap.h.

◆ COAP_DEFAULT_LEISURE

#define COAP_DEFAULT_LEISURE   (5)

Definition at line 602 of file coap.h.

◆ COAP_ETAG_LENGTH_MAX

#define COAP_ETAG_LENGTH_MAX   (8U)

maximum length of the ETag option

Definition at line 535 of file coap.h.

◆ COAP_FORMAT_ACE_CBOR

#define COAP_FORMAT_ACE_CBOR   (19)

Content-Type application/ace+cbor

See also
RFC 9200

Definition at line 265 of file coap.h.

◆ COAP_FORMAT_AIF_CBOR

#define COAP_FORMAT_AIF_CBOR   (290)

Content-Type application/aif+cbor

See also
RFC 9237

Definition at line 414 of file coap.h.

◆ COAP_FORMAT_AIF_JSON

#define COAP_FORMAT_AIF_JSON   (291)

Content-Type application/aif+json

See also
RFC 9237

Definition at line 419 of file coap.h.

◆ COAP_FORMAT_CBOR

#define COAP_FORMAT_CBOR   (60)

Definition at line 288 of file coap.h.

◆ COAP_FORMAT_CBOR_DEFLATE

#define COAP_FORMAT_CBOR_DEFLATE   (11060)

Content-Type application/cbor with Content Coding deflate

See also
RFC 8949
RFC 9110, Section 8.4.1.2

Definition at line 488 of file coap.h.

◆ COAP_FORMAT_CBOR_SEQ

#define COAP_FORMAT_CBOR_SEQ   (63)

Content-Type application/cbor-seq

See also
RFC 8742

Definition at line 303 of file coap.h.

◆ COAP_FORMAT_COAP_GROUP_JSON

#define COAP_FORMAT_COAP_GROUP_JSON   (256)

Content-Type application/coap-group+json

See also
RFC 7390

Definition at line 344 of file coap.h.

◆ COAP_FORMAT_COSE_ENCRYPT

#define COAP_FORMAT_COSE_ENCRYPT   (96)

Content-Type application/cose; cose-type="cose-encrypt"

See also
RFC 9052

Definition at line 308 of file coap.h.

◆ COAP_FORMAT_COSE_ENCRYPT0

#define COAP_FORMAT_COSE_ENCRYPT0   (16)

Content-Type application/cose; cose-type="cose-encrypt0"

See also
RFC 9052

Definition at line 250 of file coap.h.

◆ COAP_FORMAT_COSE_KEY

#define COAP_FORMAT_COSE_KEY   (101)

Content-Type application/cose-key

See also
RFC 9052

Definition at line 323 of file coap.h.

◆ COAP_FORMAT_COSE_KEY_SET

#define COAP_FORMAT_COSE_KEY_SET   (102)

Content-Type application/cose-key-set

See also
RFC 9052

Definition at line 328 of file coap.h.

◆ COAP_FORMAT_COSE_MAC

#define COAP_FORMAT_COSE_MAC   (97)

Content-Type application/cose; cose-type="cose-mac"

See also
RFC 9052

Definition at line 313 of file coap.h.

◆ COAP_FORMAT_COSE_MAC0

#define COAP_FORMAT_COSE_MAC0   (17)

Content-Type application/cose; cose-type="cose-mac0"

See also
RFC 9052

Definition at line 255 of file coap.h.

◆ COAP_FORMAT_COSE_SIGN

#define COAP_FORMAT_COSE_SIGN   (98)

Content-Type application/cose; cose-type="cose-sign"

See also
RFC 9052

Definition at line 318 of file coap.h.

◆ COAP_FORMAT_COSE_SIGN1

#define COAP_FORMAT_COSE_SIGN1   (18)

Content-Type application/cose; cose-type="cose-sign1"

See also
RFC 9052

Definition at line 260 of file coap.h.

◆ COAP_FORMAT_CSRATTRS

#define COAP_FORMAT_CSRATTRS   (285)

Content-Type application/csrattrs

See also
RFC 7030
RFC 9148

Definition at line 396 of file coap.h.

◆ COAP_FORMAT_CWT

#define COAP_FORMAT_CWT   (61)

Content-Type application/cwt

See also
RFC 8392

Definition at line 293 of file coap.h.

◆ COAP_FORMAT_DNS_MESSAGE

#define COAP_FORMAT_DNS_MESSAGE   (553)

Content-Type application/dns-message

See also
draft-ietf-core-dns-over-coap

Definition at line 456 of file coap.h.

◆ COAP_FORMAT_DOTS_CBOR

#define COAP_FORMAT_DOTS_CBOR   (271)

Content-Type application/dots+cbor

See also
RFC 9132

Definition at line 365 of file coap.h.

◆ COAP_FORMAT_EXI

#define COAP_FORMAT_EXI   (47)

Definition at line 284 of file coap.h.

◆ COAP_FORMAT_IMAGE_GIF

#define COAP_FORMAT_IMAGE_GIF   (21)

Content-Type image/gif

See also
https://www.w3.org/Graphics/GIF/spec-gif89a.txt

Definition at line 270 of file coap.h.

◆ COAP_FORMAT_IMAGE_JPEG

#define COAP_FORMAT_IMAGE_JPEG   (22)

Content-Type image/jpeg

See also
ISO/IEC 10918-5

Definition at line 275 of file coap.h.

◆ COAP_FORMAT_IMAGE_PNG

#define COAP_FORMAT_IMAGE_PNG   (23)

Content-Type image/png

See also
RFC 2083

Definition at line 280 of file coap.h.

◆ COAP_FORMAT_IMAGE_SVG_XML

#define COAP_FORMAT_IMAGE_SVG_XML   (30000)

Content-Type image/svg+xml

See also
RFC 2318

Definition at line 513 of file coap.h.

◆ COAP_FORMAT_JAVASCRIPT

#define COAP_FORMAT_JAVASCRIPT   (10002)

Content-Type application/javascript

See also
RFC 4329

Definition at line 476 of file coap.h.

◆ COAP_FORMAT_JSON

#define COAP_FORMAT_JSON   (50)

Definition at line 285 of file coap.h.

◆ COAP_FORMAT_JSON_DEFLATE

#define COAP_FORMAT_JSON_DEFLATE   (11050)

Content-Type application/json with Content Coding deflate

See also
RFC 8259
RFC 9110, Section 8.4.1.2

Definition at line 482 of file coap.h.

◆ COAP_FORMAT_JSON_PATCH_JSON

#define COAP_FORMAT_JSON_PATCH_JSON   (51)

Definition at line 286 of file coap.h.

◆ COAP_FORMAT_LINK

#define COAP_FORMAT_LINK   (40)

Definition at line 281 of file coap.h.

◆ COAP_FORMAT_MERGE_PATCH_JSON

#define COAP_FORMAT_MERGE_PATCH_JSON   (52)

Definition at line 287 of file coap.h.

◆ COAP_FORMAT_MISSING_BLOCKS_CBOR_SEQ

#define COAP_FORMAT_MISSING_BLOCKS_CBOR_SEQ   (272)

Content-Type application/missing-blocks+cbor-seq

See also
RFC 9177

Definition at line 370 of file coap.h.

◆ COAP_FORMAT_MULTIPART_CORE

#define COAP_FORMAT_MULTIPART_CORE   (62)

Content-Type application/multipart-core

See also
RFC 8710

Definition at line 298 of file coap.h.

◆ COAP_FORMAT_OCTET

#define COAP_FORMAT_OCTET   (42)

Definition at line 283 of file coap.h.

◆ COAP_FORMAT_OSCORE

#define COAP_FORMAT_OSCORE   (10001)

Content-Type application/oscore

See also
RFC 8613

Definition at line 471 of file coap.h.

◆ COAP_FORMAT_PKCS10

#define COAP_FORMAT_PKCS10   (286)

Content-Type application/pkcs10

See also
RFC 5967
RFC 8551
RFC 9148

Definition at line 403 of file coap.h.

◆ COAP_FORMAT_PKCS7_MIME_CERTS_ONLY

#define COAP_FORMAT_PKCS7_MIME_CERTS_ONLY   (281)

Content-Type application/pkcs7-mime; smime-type=certs-only

See also
RFC 8551
RFC 9148

Definition at line 383 of file coap.h.

◆ COAP_FORMAT_PKCS7_MIME_SERVER_GEN

#define COAP_FORMAT_PKCS7_MIME_SERVER_GEN   (280)

Content-Type application/pkcs7-mime; smime-type=server-generated-key

See also
RFC 7030
RFC 8551
RFC 9148

Definition at line 377 of file coap.h.

◆ COAP_FORMAT_PKCS8

#define COAP_FORMAT_PKCS8   (284)

Content-Type application/pkcs8

See also
RFC 5958
RFC 8551
RFC 9148

Definition at line 390 of file coap.h.

◆ COAP_FORMAT_PKIX_CERT

#define COAP_FORMAT_PKIX_CERT   (287)

Content-Type application/pkix-cert

See also
RFC 2585
RFC 9148

Definition at line 409 of file coap.h.

◆ COAP_FORMAT_PKIXCMP

#define COAP_FORMAT_PKIXCMP   (259)

Content-Type application/pkixcmp

See also
draft-ietf-ace-cmpv2-coap-transport
RFC 4210

Definition at line 360 of file coap.h.

◆ COAP_FORMAT_PROBLEM_DETAILS_CBOR

#define COAP_FORMAT_PROBLEM_DETAILS_CBOR   (257)

Content-Type application/concise-problem-details+cbor

See also
RFC 9290

Definition at line 349 of file coap.h.

◆ COAP_FORMAT_SENML_CBOR

#define COAP_FORMAT_SENML_CBOR   (112)

Definition at line 331 of file coap.h.

◆ COAP_FORMAT_SENML_EXI

#define COAP_FORMAT_SENML_EXI   (114)

Definition at line 333 of file coap.h.

◆ COAP_FORMAT_SENML_JSON

#define COAP_FORMAT_SENML_JSON   (110)

Definition at line 329 of file coap.h.

◆ COAP_FORMAT_SENML_XML

#define COAP_FORMAT_SENML_XML   (310)

Definition at line 420 of file coap.h.

◆ COAP_FORMAT_SENSML_CBOR

#define COAP_FORMAT_SENSML_CBOR   (113)

Definition at line 332 of file coap.h.

◆ COAP_FORMAT_SENSML_EXI

#define COAP_FORMAT_SENSML_EXI   (115)

Definition at line 334 of file coap.h.

◆ COAP_FORMAT_SENSML_JSON

#define COAP_FORMAT_SENSML_JSON   (111)

Definition at line 330 of file coap.h.

◆ COAP_FORMAT_SENSML_XML

#define COAP_FORMAT_SENSML_XML   (311)

Definition at line 421 of file coap.h.

◆ COAP_FORMAT_SNML_ETCH_CBOR

#define COAP_FORMAT_SNML_ETCH_CBOR   (322)

Content-Type application/senml-etch+cbor

See also
RFC 8790

Definition at line 431 of file coap.h.

◆ COAP_FORMAT_SNML_ETCH_JSON

#define COAP_FORMAT_SNML_ETCH_JSON   (320)

Content-Type application/senml-etch+json

See also
RFC 8790

Definition at line 426 of file coap.h.

◆ COAP_FORMAT_SWID_CBOR

#define COAP_FORMAT_SWID_CBOR   (258)

Content-Type application/swid+cbor

See also
RFC 9393

Definition at line 354 of file coap.h.

◆ COAP_FORMAT_TD_JSON

#define COAP_FORMAT_TD_JSON   (432)

Content-Type application/td+json

See also
Web of Things (WoT) Thing Description 1.1

Definition at line 446 of file coap.h.

◆ COAP_FORMAT_TEXT

#define COAP_FORMAT_TEXT   (0)

Definition at line 245 of file coap.h.

◆ COAP_FORMAT_TEXT_CSS

#define COAP_FORMAT_TEXT_CSS   (20000)

Content-Type text/css

See also
https://datatracker.ietf.org/doc/html/rfc2318

Definition at line 508 of file coap.h.

◆ COAP_FORMAT_TM_JSON

#define COAP_FORMAT_TM_JSON   (433)

Content-Type application/tm+json

See also
Web of Things (WoT) Thing Description 1.1

Definition at line 451 of file coap.h.

◆ COAP_FORMAT_VND_OCF_CBOR

#define COAP_FORMAT_VND_OCF_CBOR   (10000)

Content-Type application/vnd.ocf+cbor

Definition at line 466 of file coap.h.

◆ COAP_FORMAT_VND_OMA_LWM2M_CBOR

#define COAP_FORMAT_VND_OMA_LWM2M_CBOR   (11544)

Content-Type application/vnd.oma.lwm2m+cbor

See also
OMA-TS-LightweightM2M-V1_2

Definition at line 503 of file coap.h.

◆ COAP_FORMAT_VND_OMA_LWM2M_JSON

#define COAP_FORMAT_VND_OMA_LWM2M_JSON   (11543)

Content-Type application/vnd.oma.lwm2m+json

See also
OMA-TS-LightweightM2M-V1_0

Definition at line 498 of file coap.h.

◆ COAP_FORMAT_VND_OMA_LWM2M_TLV

#define COAP_FORMAT_VND_OMA_LWM2M_TLV   (11542)

Content-Type application/vnd.oma.lwm2m+tlv

See also
OMA-TS-LightweightM2M-V1_0

Definition at line 493 of file coap.h.

◆ COAP_FORMAT_VOUCER_COSE_CBOR

#define COAP_FORMAT_VOUCER_COSE_CBOR   (836)

Content-Type application/voucher-cose+cbor

See also
draft-ietf-anima-constrained-voucher
Note
Temporary registration until April 12, 2024.

Definition at line 462 of file coap.h.

◆ COAP_FORMAT_XML

#define COAP_FORMAT_XML   (41)

Definition at line 282 of file coap.h.

◆ COAP_FORMAT_YAML_DATA_CBOR

#define COAP_FORMAT_YAML_DATA_CBOR   (340)

Content-Type application/yang-data+cbor

See also
RFC 9254

Definition at line 436 of file coap.h.

◆ COAP_FORMAT_YAML_DATA_CBOR_ID_NAME

#define COAP_FORMAT_YAML_DATA_CBOR_ID_NAME   (341)

Content-Type application/yang-data+cbor; id=name

See also
RFC 9254

Definition at line 441 of file coap.h.

◆ COAP_FORMAT_YANG_DATA_CBOR_SID

#define COAP_FORMAT_YANG_DATA_CBOR_SID   (140)

Content-Type application/yang-data+cbor; id=sid

See also
RFC 9254

Definition at line 339 of file coap.h.

◆ COAP_NSTART

#define COAP_NSTART   (1)

Definition at line 601 of file coap.h.

◆ COAP_OBS_DEREGISTER

#define COAP_OBS_DEREGISTER   (1)

Definition at line 521 of file coap.h.

◆ COAP_OBS_REGISTER

#define COAP_OBS_REGISTER   (0)

Definition at line 520 of file coap.h.

◆ COAP_OPT_ACCEPT

#define COAP_OPT_ACCEPT   (17)

Definition at line 72 of file coap.h.

◆ COAP_OPT_BLOCK1

#define COAP_OPT_BLOCK1   (27)

Definition at line 92 of file coap.h.

◆ COAP_OPT_BLOCK2

#define COAP_OPT_BLOCK2   (23)

Definition at line 91 of file coap.h.

◆ COAP_OPT_CONTENT_FORMAT

#define COAP_OPT_CONTENT_FORMAT   (12)

Definition at line 61 of file coap.h.

◆ COAP_OPT_ECHO

#define COAP_OPT_ECHO   (252)

Echo option.

Enables a CoAP server to verify the freshness of a request or to force a client to demonstrate reachability at its claimed network address.

See also
RFC 9175

Definition at line 135 of file coap.h.

◆ COAP_OPT_EDHOC

#define COAP_OPT_EDHOC   (21)

EDHOC option.

Used in a CoAP request to signal that the request payload conveys both an EDHOC message_3 and OSCORE protected data, combined together.

See also
draft-ietf-core-oscore-edhoc-02

Definition at line 90 of file coap.h.

◆ COAP_OPT_ETAG

#define COAP_OPT_ETAG   (4)

Definition at line 47 of file coap.h.

◆ COAP_OPT_HOP_LIMIT

#define COAP_OPT_HOP_LIMIT   (16)

Hop-Limit option.

Used to prevent infinite loops when communicating over multiple proxies.

See also
RFC 8768

Definition at line 71 of file coap.h.

◆ COAP_OPT_IF_MATCH

#define COAP_OPT_IF_MATCH   (1)

Definition at line 45 of file coap.h.

◆ COAP_OPT_IF_NONE_MATCH

#define COAP_OPT_IF_NONE_MATCH   (5)

Definition at line 48 of file coap.h.

◆ COAP_OPT_LOCATION_PATH

#define COAP_OPT_LOCATION_PATH   (8)

Definition at line 50 of file coap.h.

◆ COAP_OPT_LOCATION_QUERY

#define COAP_OPT_LOCATION_QUERY   (20)

Definition at line 81 of file coap.h.

◆ COAP_OPT_MAX_AGE

#define COAP_OPT_MAX_AGE   (14)

Definition at line 62 of file coap.h.

◆ COAP_OPT_NO_RESPONSE

#define COAP_OPT_NO_RESPONSE   (258)

suppress CoAP response

See also
RFC 7968

Definition at line 140 of file coap.h.

◆ COAP_OPT_OBSERVE

#define COAP_OPT_OBSERVE   (6)

Definition at line 49 of file coap.h.

◆ COAP_OPT_OSCORE

#define COAP_OPT_OSCORE   (9)

OSCORE option.

Indicates that the CoAP message is an OSCORE message and that it contains a compressed COSE object.

See also
RFC 8613

Definition at line 59 of file coap.h.

◆ COAP_OPT_PROXY_SCHEME

#define COAP_OPT_PROXY_SCHEME   (39)

Definition at line 113 of file coap.h.

◆ COAP_OPT_PROXY_URI

#define COAP_OPT_PROXY_URI   (35)

Definition at line 112 of file coap.h.

◆ COAP_OPT_Q_BLOCK1

#define COAP_OPT_Q_BLOCK1   (19)

Q-Block1 option.

Used for block-wise transfer supporting robust transmission in requests.

See also
RFC 9177

Definition at line 80 of file coap.h.

◆ COAP_OPT_Q_BLOCK2

#define COAP_OPT_Q_BLOCK2   (31)

Q-Block2 option.

Used for block-wise transfer supporting robust transmission in responses.

See also
RFC 9177

Definition at line 111 of file coap.h.

◆ COAP_OPT_REQUEST_TAG

#define COAP_OPT_REQUEST_TAG   (292)

Request-Tag option.

Allows a CoAP server to match block-wise message fragments belonging to the same request.

See also
RFC 9175

Definition at line 149 of file coap.h.

◆ COAP_OPT_SIZE1

#define COAP_OPT_SIZE1   (60)

Size1 option.

Used by clients to give servers an estimate of the total request payload size during block-wise server and by servers to indicate the maximum acceptable payload size in a 4.13 ("Request Entity Too Large") response.

See also
RFC 7252
RFC 7959
RFC 8613

Definition at line 126 of file coap.h.

◆ COAP_OPT_SIZE2

#define COAP_OPT_SIZE2   (28)

Size2 option.

Used by clients to request an estimate of a resource's total size from a server during block-wise transfer and by servers to inform clients about the size.

See also
RFC 7959
RFC 8613

Definition at line 103 of file coap.h.

◆ COAP_OPT_URI_HOST

#define COAP_OPT_URI_HOST   (3)

Definition at line 46 of file coap.h.

◆ COAP_OPT_URI_PATH

#define COAP_OPT_URI_PATH   (11)

Definition at line 60 of file coap.h.

◆ COAP_OPT_URI_QUERY

#define COAP_OPT_URI_QUERY   (15)

Definition at line 63 of file coap.h.

◆ COAP_PAYLOAD_MARKER

#define COAP_PAYLOAD_MARKER   (0xFF)

Marks the boundary between header and payload.

Definition at line 541 of file coap.h.

◆ COAP_PORT

#define COAP_PORT   (5683)

Default CoAP port.

Definition at line 32 of file coap.h.

◆ COAP_TOKEN_LENGTH_MAX

#define COAP_TOKEN_LENGTH_MAX   (8)

Definition at line 528 of file coap.h.

◆ COAP_TYPE_ACK

#define COAP_TYPE_ACK   (2)

Definition at line 158 of file coap.h.

◆ COAP_TYPE_CON

#define COAP_TYPE_CON   (0)

Definition at line 156 of file coap.h.

◆ COAP_TYPE_NON

#define COAP_TYPE_NON   (1)

Definition at line 157 of file coap.h.

◆ COAP_TYPE_RST

#define COAP_TYPE_RST   (3)

Definition at line 159 of file coap.h.

◆ COAP_V1

#define COAP_V1   (1)

Identifier for CoAP version 1 (RFC 7252)

Definition at line 39 of file coap.h.

◆ COAPS_PORT

#define COAPS_PORT   (5684)

Default CoAP DTLS port.

Definition at line 37 of file coap.h.

Enumeration Type Documentation

◆ coap_blksize_t

Coap block-wise-transfer size SZX.

Definition at line 618 of file coap.h.

◆ coap_method_t

CoAP method codes used in request.

Enumerator
COAP_METHOD_GET 

GET request (no paylod)

COAP_METHOD_POST 

POST request (resource processes payload)

COAP_METHOD_PUT 

PUT request (update resource with payload)

COAP_METHOD_DELETE 

DELETE request (no payload, remove resource)

COAP_METHOD_FETCH 

FETCH request (RFC 8132)

COAP_METHOD_PATCH 

PATCH request (RFC 8132)

COAP_METHOD_IPATCH 

iPATCH request (RFC 8132)

Definition at line 171 of file coap.h.