#include "qemu/osdep.h"
#include <glib/gprintf.h>
#include <utime.h>
-#include <sys/uio.h>
#include "9p-iov-marshal.h"
#include "qemu/bswap.h"
str->data = g_malloc(str->size + 1);
copied = v9fs_unpack(str->data, out_sg, out_num, offset,
str->size);
- if (copied > 0) {
+ if (copied >= 0) {
str->data[str->size] = 0;
} else {
v9fs_string_free(str);
break;
}
default:
- break;
+ g_assert_not_reached();
}
if (copied < 0) {
return copied;
break;
}
case 'w': {
- uint16_t val;
+ uint16_t val = va_arg(ap, int);
if (bswap) {
- cpu_to_le16w(&val, va_arg(ap, int));
- } else {
- val = va_arg(ap, int);
+ val = cpu_to_le16(val);
}
copied = v9fs_pack(in_sg, in_num, offset, &val, sizeof(val));
break;
}
case 'd': {
- uint32_t val;
+ uint32_t val = va_arg(ap, uint32_t);
if (bswap) {
- cpu_to_le32w(&val, va_arg(ap, uint32_t));
- } else {
- val = va_arg(ap, uint32_t);
+ val = cpu_to_le32(val);
}
copied = v9fs_pack(in_sg, in_num, offset, &val, sizeof(val));
break;
}
case 'q': {
- uint64_t val;
+ uint64_t val = va_arg(ap, uint64_t);
if (bswap) {
- cpu_to_le64w(&val, va_arg(ap, uint64_t));
- } else {
- val = va_arg(ap, uint64_t);
+ val = cpu_to_le64(val);
}
copied = v9fs_pack(in_sg, in_num, offset, &val, sizeof(val));
break;
break;
}
default:
- break;
+ g_assert_not_reached();
}
if (copied < 0) {
return copied;