Hello community, here is the log from the commit of package hyper-v for openSUSE:Factory checked in at 2012-05-22 08:15:53 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/hyper-v (Old) and /work/SRC/openSUSE:Factory/.hyper-v.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hyper-v", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/hyper-v/hyper-v.changes 2012-05-08 11:14:45.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.hyper-v.new/hyper-v.changes 2012-05-22 08:15:55.000000000 +0200 @@ -1,0 +2,5 @@ +Wed May 16 20:44:36 CEST 2012 - [email protected] + +- check origin of netlink messages, use recvfrom() [bnc#761200] + +------------------------------------------------------------------- @@ -15,0 +21,6 @@ + +------------------------------------------------------------------- +Thu Dec 8 17:46:21 CET 2011 - [email protected] + +- do not package modprobe.conf rule in main package + prevents loading of ata_piix which is required for cdrom access New: ---- hyper-v.tools.hv.hv_kvp_daemon.c.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ hyper-v.spec ++++++ --- /var/tmp/diff_new_pack.EbAgvQ/_old 2012-05-22 08:15:57.000000000 +0200 +++ /var/tmp/diff_new_pack.EbAgvQ/_new 2012-05-22 08:15:57.000000000 +0200 @@ -17,6 +17,7 @@ %define with_kmp 0 +%define with_modprobe 0 %if %{with_kmp} %define with_drivers_in_kmp 0 %endif @@ -49,6 +50,7 @@ Source9: hyper-v.include.linux.hyperv.h Source10: hyper-v.tools.hv.hv_kvp_daemon.c Source11: hyper-v.init.sh +Patch761200: hyper-v.tools.hv.hv_kvp_daemon.c.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %if %{with_kmp} %if %{with_drivers_in_kmp} @@ -82,11 +84,14 @@ cp -avL %{S:5} kvptest.ps1.txt cp -vL %{S:9} %{hv_kvp_daemon}.h cp -vL %{S:10} %{hv_kvp_daemon}.c -sed -i~ '/#include <linux.hyperv.h>/d' %{hv_kvp_daemon}.c +%patch761200 -p0 %build +sed -i~ '/#include <linux.hyperv.h>/d' %{hv_kvp_daemon}.c gcc \ $RPM_OPT_FLAGS \ + -Wno-unused-variable \ + -Wno-pointer-sign \ -g \ %{hv_kvp_daemon}.c \ -include %{hv_kvp_daemon}.h \ @@ -123,16 +128,20 @@ mkdir -p $RPM_BUILD_ROOT/etc/init.d install -m755 %{S:11} $RPM_BUILD_ROOT/etc/init.d/%{hv_kvp_daemon} ln -sfvbn ../../etc/init.d/%{hv_kvp_daemon} $RPM_BUILD_ROOT/usr/sbin/rc%{hv_kvp_daemon} +%if %{with_modprobe} mkdir -p $RPM_BUILD_ROOT/etc/modprobe.d install -m644 %SOURCE1 $RPM_BUILD_ROOT/etc/modprobe.d/hyperv_pvdrivers.conf +%endif %files %defattr (-,root,root) %doc kvptest.ps1.txt +%if %{with_modprobe} %if !%{with_kmp} %dir /etc/modprobe.d %config /etc/modprobe.d/hyperv_pvdrivers.conf %endif +%endif /etc/init.d/%{hv_kvp_daemon} /usr/sbin/rc%{hv_kvp_daemon} /usr/sbin/%{hv_kvp_daemon} ++++++ hyper-v.tools.hv.hv_kvp_daemon.c.patch ++++++ --- hv_kvp_daemon.c.orig 2012-05-16 20:11:10.000000000 +0200 +++ hv_kvp_daemon.c 2012-05-16 20:40:08.000000000 +0200 @@ -701,14 +701,16 @@ int main(void) pfd.fd = fd; while (1) { + struct sockaddr *addr_p = (struct sockaddr *) &addr; + socklen_t addr_l = sizeof(addr); pfd.events = POLLIN; pfd.revents = 0; poll(&pfd, 1, -1); - len = recv(fd, kvp_recv_buffer, sizeof(kvp_recv_buffer), 0); + len = recvfrom(fd, kvp_recv_buffer, sizeof(kvp_recv_buffer), 0, addr_p, &addr_l); - if (len < 0) { - syslog(LOG_ERR, "recv failed; error:%d", len); + if (len < 0 || addr.nl_pid) { + syslog(LOG_ERR, "recvfrom failed; pid:%u error:%d %s", addr.nl_pid, errno, strerror(errno)); close(fd); return -1; } -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
