memset bugs.

Dave Jones davej at redhat.com
Wed Nov 25 18:43:13 UTC 2009


There's some obvious bugs below in a bunch of packages.
The 2nd and 3rd arguments to memset calls are the wrong way around.
I found these after grepping through a make prep'd devel/ tree.

15 hits out of 100G of source code isn't that bad, but we can do better!

	Dave

Checking ./afflib/afflib-3.5.2/lib/s3_glue.cpp
Found memset with swapped arguments.
303:    memset(b64str,sizeof(b64str),0);

Checking ./afflib/afflib-3.5.2/lib/vnode_s3.cpp
Found memset with swapped arguments.
205:    memset(segname,segname_len,0);

Checking ./afflib/afflib-3.5.2/lib/crypto.cpp
Found memset with swapped arguments.
975:		memset(decrypted,total_encrypted_bytes,0); // overwrite our temp buffer

Checking ./panoglview/panoglview-0.2.2/src/panocanvas.cpp
Found memset with swapped arguments.
160:  memset(tmp,m_maxsize*m_maxsize,0);

Checking ./condor/condor-7.2.4/src/condor_c++_util/read_user_log_state.cpp
Found memset with swapped arguments.
497:		memset( istate->m_base_path, sizeof(istate->m_base_path), 0 );

Checking ./milkytracker/milkytracker-0.90.80/src/milkyplay/LoaderPSM.cpp
Found memset with swapped arguments.
999:		memset(packed,size-4+5,0);

Checking ./sim/sim/sim/sockfactory.cpp
Found memset with swapped arguments.
546:    memset(&addr, sizeof(addr), 0);

Checking ./commoncpp2/commoncpp2-1.7.3/src/thread.cpp
Found memset with swapped arguments.
525:		memset(&act, sizeof(act), 0);

Checking ./commoncpp2/commoncpp2-1.7.3/src/socket.cpp
Found memset with swapped arguments.
1571:	memset(&group, sizeof(group), 0);

Checking ./celestia/celestia-1.5.1/src/celestia/winmain.cpp
Found memset with swapped arguments.
2181:    memset(&info, sizeof(info), 0);

Checking ./scummvm/scummvm-0.13.1/engines/tinsel/scene.cpp
Found memset with swapped arguments.
132:	memset(&tempStruc, sizeof(SCENE_STRUC), 0);

Checking ./aqsis/aqsis-1.6.0/tools/displays/sdcWin32/d_sdcWin32.cpp
Found memset with swapped arguments.
250:	memset(&g_Data, sizeof(AppData), 0);

Checking ./aqsis/aqsis-1.6.0/tools/displays/sdcBMP/d_sdcBMP.cpp
Found memset with swapped arguments.
172:	memset(&g_Data, sizeof(AppData), 0);

Checking ./arm4/arm4-0.8.2/src/libarm4db/berkeleydb/BerkeleyDB_report.cpp
Found memset with swapped arguments.
1603:	memset (summary_ptr, sizeof (*summary_ptr), 0);

Checking ./arm4/arm4-0.8.2/src/libarm4db/Arm4dbDaemonSharedMemory.cpp
Found memset with swapped arguments.
558:	memset (stats_ptr, sizeof (*stats_ptr), 0);





More information about the fedora-devel-list mailing list