mirror of
https://github.com/NLnetLabs/unbound.git
synced 2026-09-07 02:17:43 +02:00
- For #762: relocate edns_opt_list_append_keepalive.
This commit is contained in:
@@ -941,17 +941,6 @@ parse_packet(sldns_buffer* pkt, struct msg_parse* msg, struct regional* region)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
edns_opt_list_append_keepalive(struct edns_option** list, int msec,
|
||||
struct regional* region)
|
||||
{
|
||||
uint8_t data[2]; /* For keepalive value */
|
||||
data[0] = (uint8_t)((msec >> 8) & 0xff);
|
||||
data[1] = (uint8_t)(msec & 0xff);
|
||||
return edns_opt_list_append(list, LDNS_EDNS_KEEPALIVE, sizeof(data),
|
||||
data, region);
|
||||
}
|
||||
|
||||
/** RFC 1982 comparison, uses unsigned integers, and tries to avoid
|
||||
* compiler optimization (eg. by avoiding a-b<0 comparisons),
|
||||
* this routine matches compare_serial(), for SOA serial number checks */
|
||||
|
||||
@@ -1020,6 +1020,16 @@ int edns_opt_list_append_ede(struct edns_option** list, struct regional* region,
|
||||
return 1;
|
||||
}
|
||||
|
||||
int edns_opt_list_append_keepalive(struct edns_option** list, int msec,
|
||||
struct regional* region)
|
||||
{
|
||||
uint8_t data[2]; /* For keepalive value */
|
||||
data[0] = (uint8_t)((msec >> 8) & 0xff);
|
||||
data[1] = (uint8_t)(msec & 0xff);
|
||||
return edns_opt_list_append(list, LDNS_EDNS_KEEPALIVE, sizeof(data),
|
||||
data, region);
|
||||
}
|
||||
|
||||
int edns_opt_list_append(struct edns_option** list, uint16_t code, size_t len,
|
||||
uint8_t* data, struct regional* region)
|
||||
{
|
||||
|
||||
@@ -567,6 +567,16 @@ int edns_opt_list_append(struct edns_option** list, uint16_t code, size_t len,
|
||||
int edns_opt_list_append_ede(struct edns_option** list, struct regional* region,
|
||||
sldns_ede_code code, const char *txt);
|
||||
|
||||
/**
|
||||
* Append edns keep alive option to edns options list
|
||||
* @param list: the edns option list to append the edns option to.
|
||||
* @param msec: the duration in msecs for the keep alive.
|
||||
* @param region: region to allocate the new edns option.
|
||||
* @return false on failure.
|
||||
*/
|
||||
int edns_opt_list_append_keepalive(struct edns_option** list, int msec,
|
||||
struct regional* region);
|
||||
|
||||
/**
|
||||
* Remove any option found on the edns option list that matches the code.
|
||||
* @param list: the list of edns options.
|
||||
|
||||
Reference in New Issue
Block a user