qemu-cr16/util
Daniel P. Berrange 94bc0d1978 sockets: ensure we don't accept IPv4 clients when IPv4 is disabled
Currently if you disable listening on IPv4 addresses, via the
CLI flag ipv4=off, we still mistakenly accept IPv4 clients via
the IPv6 listener socket due to IPV6_V6ONLY flag being unset.

We must ensure IPV6_V6ONLY is always set if ipv4=off

This fixes the following scenarios

  -incoming tcp::9000,ipv6=on
  -incoming tcp:[::]:9000,ipv6=on
  -chardev socket,id=cdev0,host=,port=9000,server,nowait,ipv4=off
  -chardev socket,id=cdev0,host=,port=9000,server,nowait,ipv6=on
  -chardev socket,id=cdev0,host=::,port=9000,server,nowait,ipv4=off
  -chardev socket,id=cdev0,host=::,port=9000,server,nowait,ipv6=on

which all mistakenly accepted IPv4 clients

Acked-by: Gerd Hoffmann <kraxel@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-07-14 14:28:29 +01:00
..
acl.c
aio-posix.c
aio-win32.c
aiocb.c
async.c
base64.c
bitmap.c
bitops.c
buffer.c
bufferiszero.c
cacheinfo.c util/cacheinfo: Fix warning generated by clang 2017-07-09 21:10:23 -10:00
compatfd.c
coroutine-sigaltstack.c
coroutine-ucontext.c
coroutine-win32.c
crc32c.c
cutils.c
envlist.c
error.c error: Implement the warn and free Error functions 2017-07-13 13:50:19 +02:00
event_notifier-posix.c
event_notifier-win32.c
fifo8.c
getauxval.c
hbitmap.c qmp: add x-debug-block-dirty-bitmap-sha256 2017-07-11 17:44:59 +02:00
hexdump.c
host-utils.c
id.c
iohandler.c
iov.c
keyval.c
lockcnt.c
log.c
main-loop.c main_loop: Make main_loop_wait() return void 2017-07-04 14:39:28 +02:00
Makefile.objs Queued TCG patches 2017-06-22 10:25:03 +01:00
memfd.c
mmap-alloc.c
module.c
notify.c
osdep.c
oslib-posix.c block: rip out all traces of password prompting 2017-07-11 17:44:56 +02:00
oslib-win32.c block: rip out all traces of password prompting 2017-07-11 17:44:56 +02:00
path.c
qdist.c
qemu-config.c
qemu-coroutine-io.c
qemu-coroutine-lock.c
qemu-coroutine-sleep.c
qemu-coroutine.c
qemu-error.c error: Functions to report warnings and informational messages 2017-07-13 13:49:54 +02:00
qemu-openpty.c
qemu-option.c qapi: merge QInt and QFloat in QNum 2017-06-20 14:31:31 +02:00
qemu-progress.c
qemu-sockets.c sockets: ensure we don't accept IPv4 clients when IPv4 is disabled 2017-07-14 14:28:29 +01:00
qemu-thread-posix.c qemu-thread: Assert locks are initialized before using 2017-07-04 14:39:28 +02:00
qemu-thread-win32.c qemu-thread: Assert locks are initialized before using 2017-07-04 14:39:28 +02:00
qemu-timer-common.c
qemu-timer.c
qht.c
range.c
rcu.c
readline.c
stats64.c util: add stats64 module 2017-06-16 07:55:00 +08:00
systemd.c
thread-pool.c
throttle.c
timed-average.c
trace-events
unicode.c
uri.c
uuid.c