summaryrefslogtreecommitdiffstats
path: root/linux-user/syscall.c
diff options
context:
space:
mode:
authorPhilippe Mathieu-Daudé2017-07-27 04:42:18 +0200
committerMichael Tokarev2017-07-31 12:06:39 +0200
commit6860710cc3864382a898c847d722f950b5e01a6e (patch)
tree0983297b681c27070cf7aedb84a4af648260486c /linux-user/syscall.c
parentsyscall: fix dereference of undefined pointer (diff)
downloadqemu-6860710cc3864382a898c847d722f950b5e01a6e.tar.gz
qemu-6860710cc3864382a898c847d722f950b5e01a6e.tar.xz
qemu-6860710cc3864382a898c847d722f950b5e01a6e.zip
syscall: fix use of uninitialized values
linux-user/syscall.c:1627:35: warning: 1st function call argument is an uninitialized value target_saddr->sa_family = tswap16(addr->sa_family); ^~~~~~~~~~~~~~~~~~~~~~~~ linux-user/syscall.c:1629:25: warning: The left operand of '==' is a garbage value if (addr->sa_family == AF_NETLINK && len >= sizeof(struct sockaddr_nl)) { ~~~~~~~~~~~~~~~ ^ Reported-by: Clang Static Analyzer Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Diffstat (limited to 'linux-user/syscall.c')
-rw-r--r--linux-user/syscall.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 71d45a9963..81f52f7483 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -1622,6 +1622,7 @@ static inline abi_long host_to_target_sockaddr(abi_ulong target_addr,
if (len == 0) {
return 0;
}
+ assert(addr);
target_saddr = lock_user(VERIFY_WRITE, target_addr, len, 0);
if (!target_saddr)