Module Name:    src
Committed By:   kamil
Date:           Wed Jul 25 19:56:56 UTC 2018

Modified Files:
        src/sys/fs/udf: ecma167-udf.h

Log Message:
Avoid undefined behavior in ecma167-udf.h

Define the UDF_EXT_* symbols as unsigned values.
This prevents undefined behavior of altering the signedness bit in a part
of them. Swap the remaining symbols to unsigned values to keep the
consistency.

Required by GCC when building with Undefined Behavior Sanitizer.


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/sys/fs/udf/ecma167-udf.h

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/ecma167-udf.h
diff -u src/sys/fs/udf/ecma167-udf.h:1.14 src/sys/fs/udf/ecma167-udf.h:1.15
--- src/sys/fs/udf/ecma167-udf.h:1.14	Thu Jul  7 17:45:38 2011
+++ src/sys/fs/udf/ecma167-udf.h	Wed Jul 25 19:56:56 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: ecma167-udf.h,v 1.14 2011/07/07 17:45:38 reinoud Exp $ */
+/* $NetBSD: ecma167-udf.h,v 1.15 2018/07/25 19:56:56 kamil Exp $ */
 
 /*-
  * Copyright (c) 2003, 2004, 2005, 2006, 2008, 2009
@@ -203,14 +203,14 @@ union icb {
 
 
 /* short/long/ext extent have flags encoded in length */
-#define UDF_EXT_ALLOCATED              (0<<30)
-#define UDF_EXT_FREED                  (1<<30)
-#define UDF_EXT_ALLOCATED_BUT_NOT_USED (1<<30)
-#define UDF_EXT_FREE                   (2<<30)
-#define UDF_EXT_REDIRECT               (3<<30)
-#define UDF_EXT_FLAGS(len) ((len) & (3<<30))
-#define UDF_EXT_LEN(len)   ((len) & ((1<<30)-1))
-#define UDF_EXT_MAXLEN     ((1<<30)-1)
+#define UDF_EXT_ALLOCATED              (0U<<30)
+#define UDF_EXT_FREED                  (1U<<30)
+#define UDF_EXT_ALLOCATED_BUT_NOT_USED (1U<<30)
+#define UDF_EXT_FREE                   (2U<<30)
+#define UDF_EXT_REDIRECT               (3U<<30)
+#define UDF_EXT_FLAGS(len) ((len) & (3U<<30))
+#define UDF_EXT_LEN(len)   ((len) & ((1U<<30)-1))
+#define UDF_EXT_MAXLEN     ((1U<<30)-1)
 
 
 /* Character set spec [1/7.2.1] */
@@ -832,4 +832,3 @@ union dscrptr {
 
 
 #endif /* !_FS_UDF_ECMA167_UDF_H_ */
-

Reply via email to