#include "config.h"
#include <assert.h>
#include <stdio.h>
#include <string.h>
#include "option.h"
#include "debug.h"
Go to the source code of this file.
|
| coap_opt_t * | options_start (coap_pdu_t *pdu) |
| | Calculates the beginning of the PDU's option section. More...
|
| |
| size_t | coap_opt_parse (const coap_opt_t *opt, size_t length, coap_option_t *result) |
| | Parses the option pointed to by opt into result. More...
|
| |
| coap_opt_iterator_t * | coap_option_iterator_init (coap_pdu_t *pdu, coap_opt_iterator_t *oi, const coap_opt_filter_t filter) |
| | Initializes the given option iterator oi to point to the beginning of the pdu's option list. More...
|
| |
| static int | opt_finished (coap_opt_iterator_t *oi) |
| |
| coap_opt_t * | coap_option_next (coap_opt_iterator_t *oi) |
| | Updates the iterator oi to point to the next option. More...
|
| |
| coap_opt_t * | coap_check_option (coap_pdu_t *pdu, unsigned char type, coap_opt_iterator_t *oi) |
| | Retrieves the first option of type type from pdu. More...
|
| |
| unsigned short | coap_opt_delta (const coap_opt_t *opt) |
| | Decodes the delta value of the next option. More...
|
| |
| unsigned short | coap_opt_length (const coap_opt_t *opt) |
| | Returns the length of the given option. More...
|
| |
| unsigned char * | coap_opt_value (coap_opt_t *opt) |
| | Returns a pointer to the value of the given option. More...
|
| |
| size_t | coap_opt_size (const coap_opt_t *opt) |
| | Returns the size of the given option, taking into account a possible option jump. More...
|
| |
| size_t | coap_opt_setheader (coap_opt_t *opt, size_t maxlen, unsigned short delta, size_t length) |
| | Encodes the given delta and length values into opt. More...
|
| |
| size_t | coap_opt_encode (coap_opt_t *opt, size_t maxlen, unsigned short delta, const unsigned char *val, size_t length) |
| | Encodes option with given delta into opt. More...
|
| |
| #define ADVANCE_OPT |
( |
|
o, |
|
|
|
e, |
|
|
|
step |
|
) |
| |
Value:
debug(
"cannot advance opt past end\n"); \
return 0; \
} else { \
(e) -= step; \
(o) = ((unsigned char *)(o)) + step; \
}
Parses the option pointed to by opt into result.
This function returns the number of bytes that have been parsed, or 0 on error. An error is signaled when illegal delta or length values are encountered or when option parsing would result in reading past the option (i.e. beyond opt + length).
- Parameters
-
| opt | The beginning of the option to parse. |
| length | The maximum length of opt. |
| result | A pointer to the coap_option_t structure that is filled with actual values iff coap_opt_parse() > 0. |
- Returns
- The number of bytes parsed or
0 on error.
Definition at line 38 of file option.c.
Returns the size of the given option, taking into account a possible option jump.
- Parameters
-
| opt | An option jump or the beginning of the option. |
- Returns
- The number of bytes between
opt and the end of the option starting at opt. In case of an error, this function returns 0 as options need at least one byte storage space.
Definition at line 319 of file option.c.
Calculates the beginning of the PDU's option section.
- Parameters
-
| pdu | The PDU containing the options. |
- Returns
- A pointer to the first option if available, or
NULL otherwise.
Definition at line 24 of file option.c.