jbeuhler-flexelint-fun-with-printf-20031128
authorJeffrey Altman <jaltman@grand.central.org>
Sat, 29 Nov 2003 21:37:50 +0000 (21:37 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Sat, 29 Nov 2003 21:37:50 +0000 (21:37 +0000)
commit21ca23297494f1cf8e578fd848bfcd0be2c360cd
treee2918cc35ae49df145891dcca53da1dfb708164c
parente5a76ae386e909f151b6bde140a727520bffeee1
jbeuhler-flexelint-fun-with-printf-20031128

This patch addresses a number of problems with printf-like functions.

Most of them are %x formats applied to pointers (which could be a
problem depending on the architecture I would assume).  There is a
%p format for pointers on many machines but I don't know if it
applies to all supported OpenAFS platforms so I didn't go that route.

There is a buffer overflow fix to ktime.c

There are a couple places where incorrect format characters were used.

One call had two arguments swapped.

Other fixes include the use of PrintInode() and %s formats for
printing inode numbers.  The code was inconsistent in this regard -- sometimes
PrintInode() was used, sometimes it was side-stepped.

There is one place where a local shadowed another variable, so I renamed
the local.

The last segment points out that an fdset need not be anything printable
with an integer format.
--
Joe Buehler

Comments - The fdset comment relates to a WinSock only file on which
the size is a pointer to int.  Modified the source to use a %p instead
of %x as it is supported on Windows.

Added an assert(p != NULL) to src/rx/rx_packet.c
20 files changed:
src/WINNT/afsd/afsd_init.c
src/WINNT/afsd/smb.c
src/WINNT/afsd/smb3.c
src/WINNT/talocale/tal_alloc.cpp
src/budb/ol_verify.c
src/butc/tcmain.c
src/butm/test_ftm.c
src/config/util_cr.c
src/dir/salvage.c
src/kauth/user_nt.c
src/libadmin/test/bos.c
src/libadmin/test/kas.c
src/rx/rx_packet.c
src/util/ktime.c
src/vlserver/vldb_check.c
src/vlserver/vlprocs.c
src/vol/vnode.c
src/vol/vol-info.c
src/vol/vutil.c
src/volser/vsprocs.c