X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=linux_module%2Fiface-console.c;h=9e1354673e033c87b7f63c9029cd3c14457ca69b;hb=ef34565873989f5b0240f7f9911c3666a69587c9;hp=02d97613c97d08479f54fbcfdec48d1ea3230f87;hpb=276cfa264720edddc1677e35c6a300596965de7d;p=palacios-OLD.git diff --git a/linux_module/iface-console.c b/linux_module/iface-console.c index 02d9761..9e13546 100644 --- a/linux_module/iface-console.c +++ b/linux_module/iface-console.c @@ -140,7 +140,7 @@ console_write(struct file * filp, const char __user * buf, size_t size, loff_t * for (i = 0; i < size; i++) { - if (copy_from_user(&(event.scan_code), buf, 1)) { + if (copy_from_user(&(event.scan_code), buf + i, 1)) { printk("Console Write fault\n"); return -EFAULT; } @@ -217,7 +217,7 @@ static int console_connect(struct v3_guest * guest, unsigned int cmd, spin_lock_irqsave(&(cons->lock), flags); - cons_fd = anon_inode_getfd("v3-cons", &cons_fops, cons, 0); + cons_fd = anon_inode_getfd("v3-cons", &cons_fops, cons, O_RDWR); if (cons_fd < 0) { printk("Error creating console inode\n");