summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
authorThomas Markwalder <tmark@isc.org>2017-12-18 13:50:03 -0500
committerThomas Markwalder <tmark@isc.org>2017-12-18 13:50:03 -0500
commite8b058cfa5bc027201f8d9924e419964e5c1e0ac (patch)
tree79a0aaf6aced72cf93abde9bbbac54bab3b83e4d /server
parent1e80a731f0b8755b527b37a3e7e5a96938188273 (diff)
downloadisc-dhcp-e8b058cfa5bc027201f8d9924e419964e5c1e0ac.tar.gz
[master] Fixes minor coverity issues
Merges in rt46836
Diffstat (limited to 'server')
-rw-r--r--server/ddns.c6
-rw-r--r--server/dhcpv6.c2
2 files changed, 5 insertions, 3 deletions
diff --git a/server/ddns.c b/server/ddns.c
index 396eda5d..6ac79839 100644
--- a/server/ddns.c
+++ b/server/ddns.c
@@ -1577,7 +1577,7 @@ ddns_fwd_srv_add3(dhcp_ddns_cb_t *ddns_cb,
{
isc_result_t result;
const char *logstr = NULL;
- char ddns_address[MAX_ADDRESS_STRING_LEN];
+ char ddns_address[MAX_ADDRESS_STRING_LEN+1];
#if defined (DEBUG_DNS_UPDATES)
log_info ("DDNS: ddns_fwd_srv_add3: %s eresult: %d",
@@ -1585,7 +1585,9 @@ ddns_fwd_srv_add3(dhcp_ddns_cb_t *ddns_cb,
#endif
/* Construct a printable form of the address for logging */
- strcpy(ddns_address, piaddr(ddns_cb->address));
+ memset(ddns_address, 0x0, sizeof(ddns_address));
+ strncpy(ddns_address, piaddr(ddns_cb->address),
+ sizeof(ddns_address) - 1);
switch(eresult) {
case ISC_R_SUCCESS:
diff --git a/server/dhcpv6.c b/server/dhcpv6.c
index bb613a74..4fdb2ceb 100644
--- a/server/dhcpv6.c
+++ b/server/dhcpv6.c
@@ -3295,7 +3295,7 @@ void shorten_lifetimes(struct reply_state *reply, struct iasubopt *lease,
/* If address matches (and for PDs the prefix len matches)
* we assume this is our subopt, so update the lifetimes */
if (!memcmp(oc->data.data + addr_offset, &lease->addr, 16) &&
- (subopt_type != D6O_IA_PD ||
+ (subopt_type != D6O_IAPREFIX ||
(oc->data.data[IASUBOPT_PD_PREFLEN_OFFSET] ==
lease->plen))) {
u_int32_t pref_life = getULong(oc->data.data +