summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 42815bc)
raw | patch | inline | side by side (parent: 42815bc)
author | Florian Forster <octo@leeloo.lan.home.verplant.org> | |
Tue, 6 May 2008 14:01:01 +0000 (16:01 +0200) | ||
committer | Florian Forster <octo@leeloo.lan.home.verplant.org> | |
Tue, 6 May 2008 14:01:01 +0000 (16:01 +0200) |
src/powerdns.c | patch | blob | history |
diff --git a/src/powerdns.c b/src/powerdns.c
index ca3f38c1e2f3b0809de70f3c6a28464371ad92b1..51e39ee245e87b2deb4d9e51e706df1147c26a3e 100644 (file)
--- a/src/powerdns.c
+++ b/src/powerdns.c
FUNC_ERROR ("recv");
break;
}
+ buffer_size = status + 1;
status = 0;
} while (0);
if (status != 0)
return (-1);
- buffer_size = status + 1;
+ assert (buffer_size > 0);
buffer = (char *) malloc (buffer_size);
if (buffer == NULL)
{
return (-1);
}
- memcpy (buffer, temp, status);
- buffer[status] = 0;
+ memcpy (buffer, temp, buffer_size - 1);
+ buffer[buffer_size - 1] = 0;
*ret_buffer = buffer;
*ret_buffer_size = buffer_size;
ERROR ("powerdns plugin: powerdns_update_recursor_command failed.");
return (-1);
}
+
+ DEBUG ("powerdns plugin: powerdns_read_recursor: item->command = %s;",
+ item->command);
}
assert (item->command != NULL);
status = powerdns_get_data (item, &buffer, &buffer_size);
if (status != 0)
+ {
+ ERROR ("powerdns plugin: powerdns_get_data failed.");
return (-1);
+ }
keys_list = strdup (item->command);
if (keys_list == NULL)
break;
}
- if (item->command == NULL)
- {
- ERROR ("powerdns plugin: item->command == NULL.");
- status = -1;
- break;
- }
-
item->sockaddr.sun_family = AF_UNIX;
sstrncpy (item->sockaddr.sun_path, socket_temp, UNIX_PATH_MAX);