patch-2.4.27 linux-2.4.27/drivers/char/nvram.c
Next file: linux-2.4.27/drivers/char/nwflash.c
Previous file: linux-2.4.27/drivers/char/mem.c
Back to the patch index
Back to the overall index
- Lines: 31
- Date:
2004-08-07 16:26:04.716349325 -0700
- Orig file:
linux-2.4.26/drivers/char/nvram.c
- Orig date:
2003-06-13 07:51:33.000000000 -0700
diff -urN linux-2.4.26/drivers/char/nvram.c linux-2.4.27/drivers/char/nvram.c
@@ -252,9 +252,13 @@
nvram_read(struct file *file, char *buf, size_t count, loff_t *ppos)
{
unsigned char contents[NVRAM_BYTES];
- unsigned i = *ppos;
+ loff_t n = *ppos;
+ unsigned i = n;
unsigned char *tmp;
+ if (i != n || i >= NVRAM_BYTES)
+ return 0;
+
spin_lock_irq(&rtc_lock);
if (!__nvram_check_checksum())
@@ -281,10 +285,14 @@
nvram_write(struct file *file, const char *buf, size_t count, loff_t *ppos)
{
unsigned char contents[NVRAM_BYTES];
- unsigned i = *ppos;
+ loff_t n = *ppos;
+ unsigned i = n;
unsigned char *tmp;
int len;
+ if (i != n || i >= NVRAM_BYTES)
+ return 0;
+
len = (NVRAM_BYTES - i) < count ? (NVRAM_BYTES - i) : count;
if (copy_from_user(contents, buf, len))
return -EFAULT;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)