Hello community,
here is the log from the commit of package hyper-v for openSUSE:Factory checked in at 2013-08-01 17:55:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hyper-v (Old)
and /work/SRC/openSUSE:Factory/.hyper-v.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hyper-v"
Changes:
--------
--- /work/SRC/openSUSE:Factory/hyper-v/hyper-v.changes 2013-08-01 06:54:38.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.hyper-v.new/hyper-v.changes 2013-08-01 17:55:18.000000000 +0200
@@ -1,0 +2,5 @@
+Thu Aug 1 14:21:57 CEST 2013 - ohering@suse.de
+
+- Fix send/recv buffer allocation (bnc#828714)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hyper-v.tools.hv.hv_kvp_daemon.c ++++++
--- /var/tmp/diff_new_pack.Ho4sx4/_old 2013-08-01 17:55:18.000000000 +0200
+++ /var/tmp/diff_new_pack.Ho4sx4/_new 2013-08-01 17:55:18.000000000 +0200
@@ -79,8 +79,6 @@
DNS
};
-static char kvp_send_buffer[4096];
-static char kvp_recv_buffer[4096 * 2];
static struct sockaddr_nl addr;
static int in_hand_shake = 1;
@@ -1437,10 +1435,21 @@
int pool;
char *if_name;
struct hv_kvp_ipaddr_value *kvp_ip_val;
+ char *kvp_send_buffer;
+ char *kvp_recv_buffer;
+ size_t kvp_recv_buffer_len;
daemon(1, 0);
openlog("KVP", 0, LOG_USER);
syslog(LOG_INFO, "KVP starting; pid is:%d", getpid());
+
+ kvp_recv_buffer_len = NLMSG_HDRLEN + sizeof(struct cn_msg) + sizeof(struct hv_kvp_msg);
+ kvp_send_buffer = calloc(1, kvp_recv_buffer_len);
+ kvp_recv_buffer = calloc(1, kvp_recv_buffer_len);
+ if (!(kvp_send_buffer && kvp_recv_buffer)) {
+ syslog(LOG_ERR, "Failed to allocate netlink buffers");
+ exit(EXIT_FAILURE);
+ }
/*
* Retrieve OS release information.
*/
@@ -1514,7 +1523,7 @@
continue;
}
- len = recvfrom(fd, kvp_recv_buffer, sizeof(kvp_recv_buffer), 0,
+ len = recvfrom(fd, kvp_recv_buffer, kvp_recv_buffer_len, 0,
addr_p, &addr_l);
if (len < 0) {
++++++ hyper-v.tools.hv.hv_vss_daemon.c ++++++
--- /var/tmp/diff_new_pack.Ho4sx4/_old 2013-08-01 17:55:18.000000000 +0200
+++ /var/tmp/diff_new_pack.Ho4sx4/_new 2013-08-01 17:55:18.000000000 +0200
@@ -38,8 +38,6 @@
#include