Module Name:    src
Committed By:   reinoud
Date:           Tue May 19 15:07:20 UTC 2009

Modified Files:
        src/sys/fs/udf: udf_allocation.c

Log Message:
A descriptor's CRC lenth is 16 bit so use udf_rw16() on tag.desc_crc_len.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/fs/udf/udf_allocation.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/fs/udf/udf_allocation.c
diff -u src/sys/fs/udf/udf_allocation.c:1.21 src/sys/fs/udf/udf_allocation.c:1.22
--- src/sys/fs/udf/udf_allocation.c:1.21	Tue Apr 21 16:19:00 2009
+++ src/sys/fs/udf/udf_allocation.c	Tue May 19 15:07:20 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: udf_allocation.c,v 1.21 2009/04/21 16:19:00 reinoud Exp $ */
+/* $NetBSD: udf_allocation.c,v 1.22 2009/05/19 15:07:20 reinoud Exp $ */
 
 /*
  * Copyright (c) 2006, 2008 Reinoud Zandijk
@@ -28,7 +28,7 @@
 
 #include <sys/cdefs.h>
 #ifndef lint
-__KERNEL_RCSID(0, "$NetBSD: udf_allocation.c,v 1.21 2009/04/21 16:19:00 reinoud Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udf_allocation.c,v 1.22 2009/05/19 15:07:20 reinoud Exp $");
 #endif /* not lint */
 
 
@@ -1325,11 +1325,11 @@
 	if (fe) {
 		fe->l_ad         = udf_rw32(0);
 		fe->logblks_rec  = udf_rw64(0);
-		fe->tag.desc_crc_len = udf_rw32(crclen);
+		fe->tag.desc_crc_len = udf_rw16(crclen);
 	} else {
 		efe->l_ad        = udf_rw32(0);
 		efe->logblks_rec = udf_rw64(0);
-		efe->tag.desc_crc_len = udf_rw32(crclen);
+		efe->tag.desc_crc_len = udf_rw16(crclen);
 	}
 
 	/* wipe all allocation extent entries */
@@ -1342,7 +1342,7 @@
 		ext->l_ad = udf_rw32(0);
 
 		crclen = dscr_size - UDF_DESC_TAG_LENGTH;
-		ext->tag.desc_crc_len = udf_rw32(crclen);
+		ext->tag.desc_crc_len = udf_rw16(crclen);
 	}
 	udf_node->i_flags |= IN_NODE_REBUILD;
 }
@@ -1568,7 +1568,7 @@
 
 	/* offset is offset within the current (E)FE/AED */
 	l_ad   = udf_rw32(*l_ad_p);
-	crclen = udf_rw32(dscr->tag.desc_crc_len);
+	crclen = udf_rw16(dscr->tag.desc_crc_len);
 	logblks_rec = udf_rw64(*logblks_rec_p);
 
 	/* overwriting old piece? */
@@ -1630,7 +1630,7 @@
 			memset(ext->data, 0, max_l_ad);
 			ext->l_ad = udf_rw32(0);
 			ext->tag.desc_crc_len =
-				udf_rw32(dscr_size - UDF_DESC_TAG_LENGTH);
+				udf_rw16(dscr_size - UDF_DESC_TAG_LENGTH);
 
 			/* declare aed */
 			udf_node->num_extensions++;
@@ -1648,7 +1648,7 @@
 		}
 		l_ad   += adlen;
 		crclen += adlen;
-		dscr->tag.desc_crc_len = udf_rw32(crclen);
+		dscr->tag.desc_crc_len = udf_rw16(crclen);
 		*l_ad_p = udf_rw32(l_ad);
 
 		/* advance to the new extension */
@@ -1660,7 +1660,7 @@
 
 		l_ad_p = &ext->l_ad;
 		l_ad   = udf_rw32(*l_ad_p);
-		crclen = udf_rw32(dscr->tag.desc_crc_len);
+		crclen = udf_rw16(dscr->tag.desc_crc_len);
 		offset = 0;
 
 		/* adjust callees slot count for link insert */
@@ -1691,7 +1691,7 @@
 	if (offset >= l_ad) {
 		l_ad   += adlen;
 		crclen += adlen;
-		dscr->tag.desc_crc_len = udf_rw32(crclen);
+		dscr->tag.desc_crc_len = udf_rw16(crclen);
 		*l_ad_p = udf_rw32(l_ad);
 	}
 
@@ -2201,12 +2201,12 @@
 			if (fe) {
 				fe->inf_len   = udf_rw64(inflen);
 				fe->l_ad      = udf_rw32(l_ad);
-				fe->tag.desc_crc_len = udf_rw32(crclen);
+				fe->tag.desc_crc_len = udf_rw16(crclen);
 			} else {
 				efe->inf_len  = udf_rw64(inflen);
 				efe->obj_size = udf_rw64(objsize);
 				efe->l_ad     = udf_rw32(l_ad);
-				efe->tag.desc_crc_len = udf_rw32(crclen);
+				efe->tag.desc_crc_len = udf_rw16(crclen);
 			}
 			error = 0;
 
@@ -2474,12 +2474,12 @@
 		if (fe) {
 			fe->inf_len   = udf_rw64(inflen);
 			fe->l_ad      = udf_rw32(l_ad);
-			fe->tag.desc_crc_len = udf_rw32(crclen);
+			fe->tag.desc_crc_len = udf_rw16(crclen);
 		} else {
 			efe->inf_len  = udf_rw64(inflen);
 			efe->obj_size = udf_rw64(objsize);
 			efe->l_ad     = udf_rw32(l_ad);
-			efe->tag.desc_crc_len = udf_rw32(crclen);
+			efe->tag.desc_crc_len = udf_rw16(crclen);
 		}
 		error = 0;
 
@@ -2635,12 +2635,12 @@
 			if (fe) {
 				fe->inf_len   = udf_rw64(inflen);
 				fe->l_ad      = udf_rw32(l_ad);
-				fe->tag.desc_crc_len = udf_rw32(crclen);
+				fe->tag.desc_crc_len = udf_rw16(crclen);
 			} else {
 				efe->inf_len  = udf_rw64(inflen);
 				efe->obj_size = udf_rw64(objsize);
 				efe->l_ad     = udf_rw32(l_ad);
-				efe->tag.desc_crc_len = udf_rw32(crclen);
+				efe->tag.desc_crc_len = udf_rw16(crclen);
 			}
 			/* eventually copy in evacuated piece */
 			/* set new size for uvm */

Reply via email to