[PATCH] Off-by-one in loop.c

Linux Kernel Mailing List <[email protected]> Tue, 24 May 2005 13:06:54 +0000
Newsgroups gmane.linux.kernel.commits.2-4
Message-ID <[email protected]>
ChangeSet 1.1559, 2005/05/24 10:06:54-03:00, [email protected]

	[PATCH] Off-by-one in loop.c
	
	There is an obvious off by one bug in loop.c in kernel 2.4.



 loop.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


diff -Nru a/drivers/block/loop.c b/drivers/block/loop.c
--- a/drivers/block/loop.c	2005-05-24 14:07:17 -07:00
+++ b/drivers/block/loop.c	2005-05-24 14:07:17 -07:00
@@ -974,7 +974,7 @@
 
 int loop_register_transfer(struct loop_func_table *funcs)
 {
-	if ((unsigned)funcs->number > MAX_LO_CRYPT || xfer_funcs[funcs->number])
+	if ((unsigned)funcs->number >= MAX_LO_CRYPT || xfer_funcs[funcs->number])
 		return -EINVAL;
 	xfer_funcs[funcs->number] = funcs;
 	return 0;