net: use qemu_send_packet_raw() in qemu_announce_self()

Use qemu_send_packet_raw to send gratuitous arp. This will ensure that
vnet header is handled properly.

Also, avoid sending the gratuitous packet to the guest. There doesn't
appear to be any reason for doing that and the code will currently just
crash if the NIC is not associated with a vlan.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
1 file changed
tree: 4822966f1d30626059d7a54a0faf21851d4e56f6
  1. audio/
  2. block/
  3. bsd-user/
  4. darwin-user/
  5. default-configs/
  6. fpu/
  7. gdb-xml/
  8. hw/
  9. linux-user/
  10. pc-bios/
  11. roms/
  12. slirp/
  13. target-alpha/
  14. target-arm/
  15. target-cris/
  16. target-i386/
  17. target-m68k/
  18. target-microblaze/
  19. target-mips/
  20. target-ppc/
  21. target-sh4/
  22. target-sparc/
  23. tcg/
  24. tests/
  25. .gitignore
  26. .gitmodules
  27. a.out.h
  28. acl.c
  29. acl.h
  30. aes.c
  31. aes.h
  32. aio.c
  33. alpha-dis.c
  34. alpha.ld
  35. arm-dis.c
  36. arm-semi.c
  37. arm.ld
  38. async.c
  39. balloon.h
  40. block.c
  41. block.h
  42. block_int.h
  43. bswap.h
  44. bt-host.c
  45. bt-host.h
  46. bt-vhci.c
  47. buffered_file.c
  48. buffered_file.h
  49. cache-utils.c
  50. cache-utils.h
  51. Changelog
  52. check-qdict.c
  53. check-qint.c
  54. check-qlist.c
  55. check-qstring.c
  56. cmd.c
  57. cmd.h
  58. cocoa.m
  59. CODING_STYLE
  60. config.h
  61. configure
  62. console.c
  63. console.h
  64. COPYING
  65. COPYING.LIB
  66. cpu-all.h
  67. cpu-common.h
  68. cpu-defs.h
  69. cpu-exec.c
  70. create_config
  71. cris-dis.c
  72. curses.c
  73. curses_keys.h
  74. cutils.c
  75. d3des.c
  76. d3des.h
  77. def-helper.h
  78. device_tree.c
  79. device_tree.h
  80. dis-asm.h
  81. disas.c
  82. disas.h
  83. dma-helpers.c
  84. dma.h
  85. dyngen-exec.h
  86. elf.h
  87. envlist.c
  88. envlist.h
  89. exec-all.h
  90. exec.c
  91. feature_to_c.sh
  92. gdbstub.c
  93. gdbstub.h
  94. gen-icount.h
  95. host-utils.c
  96. host-utils.h
  97. hostregs_helper.h
  98. hpet.h
  99. hppa-dis.c
  100. hppa.ld
  101. hxtool
  102. i386-dis.c
  103. i386.ld
  104. ia64.ld
  105. ioport-user.c
  106. ioport.c
  107. ioport.h
  108. keymaps.c
  109. keymaps.h
  110. kvm-all.c
  111. kvm.h
  112. libfdt_env.h
  113. LICENSE
  114. linux-aio.c
  115. m68k-dis.c
  116. m68k-semi.c
  117. m68k.ld
  118. MAINTAINERS
  119. Makefile
  120. Makefile.hw
  121. Makefile.target
  122. Makefile.user
  123. microblaze-dis.c
  124. migration-exec.c
  125. migration-fd.c
  126. migration-tcp.c
  127. migration-unix.c
  128. migration.c
  129. migration.h
  130. mips-dis.c
  131. mips.ld
  132. module.c
  133. module.h
  134. monitor.c
  135. monitor.h
  136. nbd.c
  137. nbd.h
  138. net-checksum.c
  139. net-queue.c
  140. net-queue.h
  141. net.c
  142. net.h
  143. osdep.c
  144. osdep.h
  145. path.c
  146. pci-ids.txt
  147. posix-aio-compat.c
  148. ppc-dis.c
  149. ppc.ld
  150. ppc64.ld
  151. qdict-test-data.txt
  152. qdict.c
  153. qdict.h
  154. qemu-aio.h
  155. qemu-binfmt-conf.sh
  156. qemu-char.c
  157. qemu-char.h
  158. qemu-common.h
  159. qemu-config.c
  160. qemu-config.h
  161. qemu-doc.texi
  162. qemu-img-cmds.hx
  163. qemu-img.c
  164. qemu-img.texi
  165. qemu-io.c
  166. qemu-lock.h
  167. qemu-log.h
  168. qemu-malloc.c
  169. qemu-monitor.hx
  170. qemu-nbd.c
  171. qemu-nbd.texi
  172. qemu-option.c
  173. qemu-option.h
  174. qemu-options.hx
  175. qemu-queue.h
  176. qemu-sockets.c
  177. qemu-tech.texi
  178. qemu-thread.c
  179. qemu-thread.h
  180. qemu-timer.h
  181. qemu-tool.c
  182. qemu.sasl
  183. qemu_socket.h
  184. qint.c
  185. qint.h
  186. qlist.c
  187. qlist.h
  188. qobject.h
  189. qstring.c
  190. qstring.h
  191. readline.c
  192. readline.h
  193. README
  194. rules.mak
  195. s390-dis.c
  196. s390.ld
  197. savevm.c
  198. sdl.c
  199. sdl_keysym.h
  200. sdl_zoom.c
  201. sdl_zoom.h
  202. sdl_zoom_template.h
  203. sh4-dis.c
  204. softmmu-semi.h
  205. softmmu_defs.h
  206. softmmu_exec.h
  207. softmmu_header.h
  208. softmmu_template.h
  209. sparc-dis.c
  210. sparc.ld
  211. sparc64.ld
  212. sysemu.h
  213. tap-linux.h
  214. tap-win32.c
  215. targphys.h
  216. tcg-runtime.c
  217. texi2pod.pl
  218. thunk.c
  219. thunk.h
  220. TODO
  221. translate-all.c
  222. uboot_image.h
  223. usb-bsd.c
  224. usb-linux.c
  225. usb-stub.c
  226. VERSION
  227. vgafont.h
  228. vl.c
  229. vnc-auth-sasl.c
  230. vnc-auth-sasl.h
  231. vnc-auth-vencrypt.c
  232. vnc-auth-vencrypt.h
  233. vnc-tls.c
  234. vnc-tls.h
  235. vnc.c
  236. vnc.h
  237. vnc_keysym.h
  238. vnchextile.h
  239. x86_64.ld
  240. x_keymap.c
  241. x_keymap.h