guest->img_size = user_image.size;
DEBUG("Palacios: Allocating kernel memory for guest image (%llu bytes)\n", user_image.size);
+ // overflow possible here, but only if guest image is probably to large for kernel anyway...
guest->img = palacios_valloc(guest->img_size);
if (!guest->img) {
goto out_err2;
}
- strncpy(guest->name, user_image.name, 127);
+ strncpy(guest->name, user_image.name, 128);
+ guest->name[127] = 0;
INIT_LIST_HEAD(&(guest->exts));
unsigned long vm_idx = arg;
struct v3_guest * guest;
- if (vm_idx > MAX_VMS) {
+ if (vm_idx >= MAX_VMS) {
ERROR("Invalid VM index: %ld\n", vm_idx);
return -1;
}
out:
- if (mem) { palacios_vfree(mem); }
+ if (mem) { palacios_vfree(mem); } // dead code but kept for clarity
if (core) { palacios_vfree(core); }
if (base) { palacios_vfree(base); }