ocfs2: Don't snprintf() without a format.
Joel Becker [Fri, 13 Jun 2008 05:39:18 +0000 (22:39 -0700)]
Some system files are per-slot.  Their names include the slot number.
ocfs2_sprintf_system_inode_name() uses the system inode definitions to
fill in the slot number with snprintf().

For global system files, there is no node number, and the name was
printed as a format with no arguments.  -Wformat-nonliteral and
-Wformat-security don't like this.  Instead, use a static "%s" format
and the name as the argument.

Signed-off-by: Joel Becker <joel.becker@oracle.com>

fs/ocfs2/ocfs2_fs.h

index 52c4266..3f19451 100644 (file)
@@ -901,7 +901,7 @@ static inline int ocfs2_sprintf_system_inode_name(char *buf, int len,
          * list has a copy per slot.
          */
        if (type <= OCFS2_LAST_GLOBAL_SYSTEM_INODE)
-               chars = snprintf(buf, len,
+               chars = snprintf(buf, len, "%s",
                                 ocfs2_system_inodes[type].si_name);
        else
                chars = snprintf(buf, len,