patch-2.4.0-test9 linux/drivers/net/wan/sdla.c

Next file: linux/drivers/net/winbond-840.c
Previous file: linux/drivers/net/wan/cosa.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test8/linux/drivers/net/wan/sdla.c linux/drivers/net/wan/sdla.c
@@ -1203,7 +1203,10 @@
 			return(-ENOMEM);
 		sdla_read(dev, mem.addr, temp, mem.len);
 		if(copy_to_user(mem.data, temp, mem.len))
+		{
+			kfree(temp);
 			return -EFAULT;
+		}
 		kfree(temp);
 	}
 	else
@@ -1212,7 +1215,10 @@
 		if (!temp)
 			return(-ENOMEM);
 		if(copy_from_user(temp, mem.data, mem.len))
+		{
+			kfree(temp);
 			return -EFAULT;
+		}
 		sdla_write(dev, mem.addr, temp, mem.len);
 		kfree(temp);
 	}

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)