]> granicus.if.org Git - strace/commitdiff
xlat: use unsgined type for mount_flags fallback values
authorEugene Syromyatnikov <evgsyr@gmail.com>
Thu, 17 Oct 2019 11:13:45 +0000 (13:13 +0200)
committerEugene Syromyatnikov <evgsyr@gmail.com>
Fri, 18 Oct 2019 19:00:26 +0000 (21:00 +0200)
Reported by cppcheck:

    strace/xlat/mount_flags.h:256: error[shiftTooManyBitsSigned]:
    Shifting signed 32-bit value by 31 bits is undefined behaviour
    #  254|    XLAT(MS_BORN),
    #  255|    XLAT(MS_ACTIVE),
    #  256|->  XLAT(MS_NOUSER),
    #  257|    XLAT_END
    #  258|   };

* xlat/mount_flags.in: Use 1U instead of 1 as a bit shifting operand.

References: https://bugzilla.redhat.com/show_bug.cgi?id=1747524

xlat/mount_flags.in

index e7f3ce183e4cf9df499efa5c7e6136a2187d190b..4d8e4e19d71bbe15f595898f31d1b25112e774a8 100644 (file)
@@ -1,30 +1,30 @@
-MS_RDONLY      1
-MS_NOSUID      2
-MS_NODEV       4
-MS_NOEXEC      8
-MS_SYNCHRONOUS 16
-MS_REMOUNT     32
-MS_MANDLOCK    64
-MS_DIRSYNC     128
-MS_NOATIME     1024
-MS_NODIRATIME  2048
-MS_BIND                4096
-MS_MOVE                8192
-MS_REC         16384
-MS_SILENT      32768
-MS_POSIXACL    (1<<16)
-MS_UNBINDABLE  (1<<17)
-MS_PRIVATE     (1<<18)
-MS_SLAVE       (1<<19)
-MS_SHARED      (1<<20)
-MS_RELATIME    (1<<21)
-MS_KERNMOUNT   (1<<22)
-MS_I_VERSION   (1<<23)
-MS_STRICTATIME (1<<24)
-MS_LAZYTIME    (1<<25)
-MS_SUBMOUNT     (1<<26)
-MS_NOREMOTELOCK        (1<<27)
-MS_NOSEC       (1<<28)
-MS_BORN                (1<<29)
-MS_ACTIVE      (1<<30)
-MS_NOUSER      (1<<31)
+MS_RDONLY      (1U<<0)
+MS_NOSUID      (1U<<1)
+MS_NODEV       (1U<<2)
+MS_NOEXEC      (1U<<3)
+MS_SYNCHRONOUS (1U<<4)
+MS_REMOUNT     (1U<<5)
+MS_MANDLOCK    (1U<<6)
+MS_DIRSYNC     (1U<<7)
+MS_NOATIME     (1U<<10)
+MS_NODIRATIME  (1U<<11)
+MS_BIND                (1U<<12)
+MS_MOVE                (1U<<13)
+MS_REC         (1U<<14)
+MS_SILENT      (1U<<15)
+MS_POSIXACL    (1U<<16)
+MS_UNBINDABLE  (1U<<17)
+MS_PRIVATE     (1U<<18)
+MS_SLAVE       (1U<<19)
+MS_SHARED      (1U<<20)
+MS_RELATIME    (1U<<21)
+MS_KERNMOUNT   (1U<<22)
+MS_I_VERSION   (1U<<23)
+MS_STRICTATIME (1U<<24)
+MS_LAZYTIME    (1U<<25)
+MS_SUBMOUNT     (1U<<26)
+MS_NOREMOTELOCK        (1U<<27)
+MS_NOSEC       (1U<<28)
+MS_BORN                (1U<<29)
+MS_ACTIVE      (1U<<30)
+MS_NOUSER      (1U<<31)