Flawfinder version 2.0.10, (C) 2001-2019 David A. Wheeler. Number of rules (primarily dangerous function names) in C/C++ ruleset: 223 Examining data/ngspice-33+ds/contrib/mslib/inc_main.c Examining data/ngspice-33+ds/contrib/mslib/inc_LSD.c Examining data/ngspice-33+ds/contrib/mslib/inc_inp.c Examining data/ngspice-33+ds/contrib/mslib/datadef.h Examining data/ngspice-33+ds/examples/transient-noise/noilib-demo.h Examining data/ngspice-33+ds/src/conf.h Examining data/ngspice-33+ds/src/ngproc2mod.c Examining data/ngspice-33+ds/src/include/ngspice/mobdefs.h Examining data/ngspice-33+ds/src/include/ngspice/onedev.h Examining data/ngspice-33+ds/src/include/ngspice/tskdefs.h Examining data/ngspice-33+ds/src/include/ngspice/stringutil.h Examining data/ngspice-33+ds/src/include/ngspice/multi_line.h Examining data/ngspice-33+ds/src/include/ngspice/material.h Examining data/ngspice-33+ds/src/include/ngspice/mifdefs.h Examining data/ngspice-33+ds/src/include/ngspice/elctdefs.h Examining data/ngspice-33+ds/src/include/ngspice/miftypes.h Examining data/ngspice-33+ds/src/include/ngspice/trandefs.h Examining data/ngspice-33+ds/src/include/ngspice/smpdefs.h Examining data/ngspice-33+ds/src/include/ngspice/lsort.h Examining data/ngspice-33+ds/src/include/ngspice/ftedebug.h Examining data/ngspice-33+ds/src/include/ngspice/numconst.h Examining data/ngspice-33+ds/src/include/ngspice/ftedbgra.h Examining data/ngspice-33+ds/src/include/ngspice/pnode.h Examining data/ngspice-33+ds/src/include/ngspice/jobdefs.h Examining data/ngspice-33+ds/src/include/ngspice/ftedev.h Examining data/ngspice-33+ds/src/include/ngspice/evt.h Examining data/ngspice-33+ds/src/include/ngspice/complex.h Examining data/ngspice-33+ds/src/include/ngspice/bool.h Examining data/ngspice-33+ds/src/include/ngspice/optdefs.h Examining data/ngspice-33+ds/src/include/ngspice/noisedef.h Examining data/ngspice-33+ds/src/include/ngspice/cm.h Examining data/ngspice-33+ds/src/include/ngspice/ipcproto.h Examining data/ngspice-33+ds/src/include/ngspice/pssdefs.h Examining data/ngspice-33+ds/src/include/ngspice/wincolornames.h Examining data/ngspice-33+ds/src/include/ngspice/gendev.h Examining data/ngspice-33+ds/src/include/ngspice/twomesh.h Examining data/ngspice-33+ds/src/include/ngspice/sensdefs.h Examining data/ngspice-33+ds/src/include/ngspice/wstdio.h Examining data/ngspice-33+ds/src/include/ngspice/suffix.h Examining data/ngspice-33+ds/src/include/ngspice/mifparse.h Examining data/ngspice-33+ds/src/include/ngspice/tclspice.h Examining data/ngspice-33+ds/src/include/ngspice/compatmode.h Examining data/ngspice-33+ds/src/include/ngspice/cidersupt.h Examining data/ngspice-33+ds/src/include/ngspice/onemesh.h Examining data/ngspice-33+ds/src/include/ngspice/acdefs.h Examining data/ngspice-33+ds/src/include/ngspice/cpextern.h Examining data/ngspice-33+ds/src/include/ngspice/enh.h Examining data/ngspice-33+ds/src/include/ngspice/dllitf.h Examining data/ngspice-33+ds/src/include/ngspice/iferrmsg.h Examining data/ngspice-33+ds/src/include/ngspice/typedefs.h Examining data/ngspice-33+ds/src/include/ngspice/fteext.h Examining data/ngspice-33+ds/src/include/ngspice/memory.h Examining data/ngspice-33+ds/src/include/ngspice/meshdefs.h Examining data/ngspice-33+ds/src/include/ngspice/cmproto.h Examining data/ngspice-33+ds/src/include/ngspice/randnumb.h Examining data/ngspice-33+ds/src/include/ngspice/mifcmdat.h Examining data/ngspice-33+ds/src/include/ngspice/wordlist.h Examining data/ngspice-33+ds/src/include/ngspice/sharedspice.h Examining data/ngspice-33+ds/src/include/ngspice/fteinp.h Examining data/ngspice-33+ds/src/include/ngspice/devdefs.h Examining data/ngspice-33+ds/src/include/ngspice/outpdefs.h Examining data/ngspice-33+ds/src/include/ngspice/dgen.h Examining data/ngspice-33+ds/src/include/ngspice/cpstd.h Examining data/ngspice-33+ds/src/include/ngspice/dopdefs.h Examining data/ngspice-33+ds/src/include/ngspice/swec.h Examining data/ngspice-33+ds/src/include/ngspice/trcvdefs.h Examining data/ngspice-33+ds/src/include/ngspice/wallace.h Examining data/ngspice-33+ds/src/include/ngspice/domndefs.h Examining data/ngspice-33+ds/src/include/ngspice/numcards.h Examining data/ngspice-33+ds/src/include/ngspice/twodev.h Examining data/ngspice-33+ds/src/include/ngspice/cktdefs.h Examining data/ngspice-33+ds/src/include/ngspice/bdrydefs.h Examining data/ngspice-33+ds/src/include/ngspice/stringskip.h Examining data/ngspice-33+ds/src/include/ngspice/hlpdefs.h Examining data/ngspice-33+ds/src/include/ngspice/sperror.h Examining data/ngspice-33+ds/src/include/ngspice/mifproto.h Examining data/ngspice-33+ds/src/include/ngspice/dvec.h Examining data/ngspice-33+ds/src/include/ngspice/spmatrix.h Examining data/ngspice-33+ds/src/include/ngspice/inpmacs.h Examining data/ngspice-33+ds/src/include/ngspice/meshext.h Examining data/ngspice-33+ds/src/include/ngspice/carddefs.h Examining data/ngspice-33+ds/src/include/ngspice/contdefs.h Examining data/ngspice-33+ds/src/include/ngspice/FastNorm3.h Examining data/ngspice-33+ds/src/include/ngspice/ipctiein.h Examining data/ngspice-33+ds/src/include/ngspice/matldefs.h Examining data/ngspice-33+ds/src/include/ngspice/gendefs.h Examining data/ngspice-33+ds/src/include/ngspice/enhtypes.h Examining data/ngspice-33+ds/src/include/ngspice/evtudn.h Examining data/ngspice-33+ds/src/include/ngspice/inpptree.h Examining data/ngspice-33+ds/src/include/ngspice/tfdefs.h Examining data/ngspice-33+ds/src/include/ngspice/numgen.h Examining data/ngspice-33+ds/src/include/ngspice/cmconstants.h Examining data/ngspice-33+ds/src/include/ngspice/evtproto.h Examining data/ngspice-33+ds/src/include/ngspice/inpdefs.h Examining data/ngspice-33+ds/src/include/ngspice/defines.h Examining data/ngspice-33+ds/src/include/ngspice/missing_math.h Examining data/ngspice-33+ds/src/include/ngspice/ciderinp.h Examining data/ngspice-33+ds/src/include/ngspice/ipc.h Examining data/ngspice-33+ds/src/include/ngspice/plot.h Examining data/ngspice-33+ds/src/include/ngspice/1-f-code.h Examining data/ngspice-33+ds/src/include/ngspice/evtshared.h Examining data/ngspice-33+ds/src/include/ngspice/fteoptdefs.h Examining data/ngspice-33+ds/src/include/ngspice/hash.h Examining data/ngspice-33+ds/src/include/ngspice/ngspice.h Examining data/ngspice-33+ds/src/include/ngspice/methdefs.h Examining data/ngspice-33+ds/src/include/ngspice/optndefs.h Examining data/ngspice-33+ds/src/include/ngspice/ifsim.h Examining data/ngspice-33+ds/src/include/ngspice/numglobs.h Examining data/ngspice-33+ds/src/include/ngspice/distodef.h Examining data/ngspice-33+ds/src/include/ngspice/const.h Examining data/ngspice-33+ds/src/include/ngspice/modldefs.h Examining data/ngspice-33+ds/src/include/ngspice/opdefs.h Examining data/ngspice-33+ds/src/include/ngspice/graph.h Examining data/ngspice-33+ds/src/include/ngspice/mif.h Examining data/ngspice-33+ds/src/include/ngspice/cluster.h Examining data/ngspice-33+ds/src/include/ngspice/macros.h Examining data/ngspice-33+ds/src/include/ngspice/cpdefs.h Examining data/ngspice-33+ds/src/include/ngspice/fteparse.h Examining data/ngspice-33+ds/src/include/ngspice/ftedefs.h Examining data/ngspice-33+ds/src/include/ngspice/dstring.h Examining data/ngspice-33+ds/src/include/ngspice/numenum.h Examining data/ngspice-33+ds/src/include/ngspice/sim.h Examining data/ngspice-33+ds/src/include/ngspice/evttypes.h Examining data/ngspice-33+ds/src/include/ngspice/sensgen.h Examining data/ngspice-33+ds/src/include/ngspice/fteinput.h Examining data/ngspice-33+ds/src/include/ngspice/pzdefs.h Examining data/ngspice-33+ds/src/include/ngspice/grid.h Examining data/ngspice-33+ds/src/include/ngspice/cmtypes.h Examining data/ngspice-33+ds/src/include/ngspice/fftext.h Examining data/ngspice-33+ds/src/include/ngspice/profile.h Examining data/ngspice-33+ds/src/include/ngspice/sen2defs.h Examining data/ngspice-33+ds/src/ngspice.c Examining data/ngspice-33+ds/src/nghelp.c Examining data/ngspice-33+ds/src/hist_info.c Examining data/ngspice-33+ds/src/xspice/xspice.c Examining data/ngspice-33+ds/src/xspice/enh/enhtrans.c Examining data/ngspice-33+ds/src/xspice/enh/enh.c Examining data/ngspice-33+ds/src/xspice/evt/evtshared.c Examining data/ngspice-33+ds/src/xspice/evt/evtcall_hybrids.c Examining data/ngspice-33+ds/src/xspice/evt/evtplot.c Examining data/ngspice-33+ds/src/xspice/evt/evtdest.c Examining data/ngspice-33+ds/src/xspice/evt/evtdump.c Examining data/ngspice-33+ds/src/xspice/evt/evtbackup.c Examining data/ngspice-33+ds/src/xspice/evt/evtop.c Examining data/ngspice-33+ds/src/xspice/evt/evtnode_copy.c Examining data/ngspice-33+ds/src/xspice/evt/evtprint.c Examining data/ngspice-33+ds/src/xspice/evt/evtiter.c Examining data/ngspice-33+ds/src/xspice/evt/evtnext_time.c Examining data/ngspice-33+ds/src/xspice/evt/evttermi.c Examining data/ngspice-33+ds/src/xspice/evt/evtdeque.c Examining data/ngspice-33+ds/src/xspice/evt/evtqueue.c Examining data/ngspice-33+ds/src/xspice/evt/evtaccept.c Examining data/ngspice-33+ds/src/xspice/evt/evtsetup.c Examining data/ngspice-33+ds/src/xspice/evt/evtload.c Examining data/ngspice-33+ds/src/xspice/evt/evtinit.c Examining data/ngspice-33+ds/src/xspice/cm/cmutil.c Examining data/ngspice-33+ds/src/xspice/cm/cmevt.c Examining data/ngspice-33+ds/src/xspice/cm/cmmeters.c Examining data/ngspice-33+ds/src/xspice/cm/cmexport.c Examining data/ngspice-33+ds/src/xspice/cm/cm.c Examining data/ngspice-33+ds/src/xspice/mif/mifgetmod.c Examining data/ngspice-33+ds/src/xspice/mif/mifdelete.c Examining data/ngspice-33+ds/src/xspice/mif/mif_inp2.c Examining data/ngspice-33+ds/src/xspice/mif/mifmask.c Examining data/ngspice-33+ds/src/xspice/mif/mifsetup.c Examining data/ngspice-33+ds/src/xspice/mif/miftrunc.c Examining data/ngspice-33+ds/src/xspice/mif/mifmpara.c Examining data/ngspice-33+ds/src/xspice/mif/mifdestr.c Examining data/ngspice-33+ds/src/xspice/mif/mifload.c Examining data/ngspice-33+ds/src/xspice/mif/mif.c Examining data/ngspice-33+ds/src/xspice/mif/mifgetvalue.c Examining data/ngspice-33+ds/src/xspice/mif/mifconvt.c Examining data/ngspice-33+ds/src/xspice/mif/mifutil.c Examining data/ngspice-33+ds/src/xspice/mif/mifask.c Examining data/ngspice-33+ds/src/xspice/mif/mifmdelete.c Examining data/ngspice-33+ds/src/xspice/cmpp/util.c Examining data/ngspice-33+ds/src/xspice/cmpp/mod_yacc_y.h Examining data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.h Examining data/ngspice-33+ds/src/xspice/cmpp/cmpp.h Examining data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c Examining data/ngspice-33+ds/src/xspice/cmpp/ifs_lex.c Examining data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c Examining data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.h Examining data/ngspice-33+ds/src/xspice/cmpp/file_buffer.c Examining data/ngspice-33+ds/src/xspice/cmpp/pp_ifs.c Examining data/ngspice-33+ds/src/xspice/cmpp/read_ifs.c Examining data/ngspice-33+ds/src/xspice/cmpp/pp_mod.c Examining data/ngspice-33+ds/src/xspice/cmpp/mod_lex.c Examining data/ngspice-33+ds/src/xspice/cmpp/file_buffer.h Examining data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c Examining data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc_y.h Examining data/ngspice-33+ds/src/xspice/cmpp/main.c Examining data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c Examining data/ngspice-33+ds/src/xspice/ipc/ipctiein.c Examining data/ngspice-33+ds/src/xspice/ipc/ipc.c Examining data/ngspice-33+ds/src/xspice/ipc/ipcaegis.c Examining data/ngspice-33+ds/src/xspice/ipc/ipcsockets.c Examining data/ngspice-33+ds/src/xspice/ipc/ipcstdio.c Examining data/ngspice-33+ds/src/xspice/icm/analog/hyst/cm_hyst.h Examining data/ngspice-33+ds/src/xspice/icm/analog/s_xfer/s_xfer.h Examining data/ngspice-33+ds/src/xspice/icm/analog/slew/slew.h Examining data/ngspice-33+ds/src/xspice/icm/analog/int/int.h Examining data/ngspice-33+ds/src/xspice/icm/analog/oneshot/oneshot.h Examining data/ngspice-33+ds/src/xspice/icm/table/support/gettokens.c Examining data/ngspice-33+ds/src/xspice/icm/table/support/gettokens.h Examining data/ngspice-33+ds/src/xspice/icm/table/support/table_util.h Examining data/ngspice-33+ds/src/xspice/icm/table/support/interp.c Examining data/ngspice-33+ds/src/xspice/icm/table/mada/eno2.c Examining data/ngspice-33+ds/src/xspice/icm/table/mada/eno.c Examining data/ngspice-33+ds/src/xspice/icm/table/mada/eno3.h Examining data/ngspice-33+ds/src/xspice/icm/table/mada/alloc.h Examining data/ngspice-33+ds/src/xspice/icm/table/mada/eno3.c Examining data/ngspice-33+ds/src/xspice/icm/table/mada/eno2.h Examining data/ngspice-33+ds/src/xspice/icm/table/mada/eno.h Examining data/ngspice-33+ds/src/xspice/icm/table/mada/alloc.c Examining data/ngspice-33+ds/src/xspice/icm/digital/d_source/d_source.h Examining data/ngspice-33+ds/src/xspice/icm/digital/d_state/d_state.h Examining data/ngspice-33+ds/src/xspice/icm/digital/d_osc/d_osc.h Examining data/ngspice-33+ds/src/xspice/icm/xtraevt/int/udnfunc.c Examining data/ngspice-33+ds/src/xspice/icm/xtraevt/real/udnfunc.c Examining data/ngspice-33+ds/src/xspice/icm/dlmain.h Examining data/ngspice-33+ds/src/xspice/icm/dlmain.c Examining data/ngspice-33+ds/src/xspice/idn/idndig.c Examining data/ngspice-33+ds/src/winmain.h Examining data/ngspice-33+ds/src/maths/ni/niditer.c Examining data/ngspice-33+ds/src/maths/ni/nipred.c Examining data/ngspice-33+ds/src/maths/ni/niaciter.c Examining data/ngspice-33+ds/src/maths/ni/nipzmeth.c Examining data/ngspice-33+ds/src/maths/ni/niinteg.c Examining data/ngspice-33+ds/src/maths/ni/nireinit.c Examining data/ngspice-33+ds/src/maths/ni/nisenre.c Examining data/ngspice-33+ds/src/maths/ni/niniter.c Examining data/ngspice-33+ds/src/maths/ni/nicomcof.c Examining data/ngspice-33+ds/src/maths/ni/niinit.c Examining data/ngspice-33+ds/src/maths/ni/niconv.c Examining data/ngspice-33+ds/src/maths/ni/niiter.c Examining data/ngspice-33+ds/src/maths/ni/nidest.c Examining data/ngspice-33+ds/src/maths/deriv/expderiv.c Examining data/ngspice-33+ds/src/maths/deriv/cosderiv.c Examining data/ngspice-33+ds/src/maths/deriv/divderiv.c Examining data/ngspice-33+ds/src/maths/deriv/plusder.c Examining data/ngspice-33+ds/src/maths/deriv/multder.c Examining data/ngspice-33+ds/src/maths/deriv/atander.c Examining data/ngspice-33+ds/src/maths/deriv/tanderiv.c Examining data/ngspice-33+ds/src/maths/deriv/powderiv.c Examining data/ngspice-33+ds/src/maths/deriv/sqrtder.c Examining data/ngspice-33+ds/src/maths/deriv/invderiv.c Examining data/ngspice-33+ds/src/maths/deriv/cubeder.c Examining data/ngspice-33+ds/src/maths/deriv/timesder.c Examining data/ngspice-33+ds/src/maths/deriv/equalder.c Examining data/ngspice-33+ds/src/maths/poly/polyfit.c Examining data/ngspice-33+ds/src/maths/poly/polyeval.c Examining data/ngspice-33+ds/src/maths/poly/polyderiv.h Examining data/ngspice-33+ds/src/maths/poly/polyeval.h Examining data/ngspice-33+ds/src/maths/poly/polyfit.h Examining data/ngspice-33+ds/src/maths/poly/interpolate.c Examining data/ngspice-33+ds/src/maths/poly/polyderiv.c Examining data/ngspice-33+ds/src/maths/poly/poly.h Examining data/ngspice-33+ds/src/maths/poly/interpolate.h Examining data/ngspice-33+ds/src/maths/fft/fftlib.c Examining data/ngspice-33+ds/src/maths/fft/fftext.c Examining data/ngspice-33+ds/src/maths/fft/matlib.c Examining data/ngspice-33+ds/src/maths/fft/matlib.h Examining data/ngspice-33+ds/src/maths/fft/fftlib.h Examining data/ngspice-33+ds/src/maths/cmaths/cmath3.h Examining data/ngspice-33+ds/src/maths/cmaths/test_cx_ph.c Examining data/ngspice-33+ds/src/maths/cmaths/cmath4.c Examining data/ngspice-33+ds/src/maths/cmaths/cmath2.h Examining data/ngspice-33+ds/src/maths/cmaths/test_cx_mag.c Examining data/ngspice-33+ds/src/maths/cmaths/test_cx_j.c Examining data/ngspice-33+ds/src/maths/cmaths/cmath3.c Examining data/ngspice-33+ds/src/maths/cmaths/cmath1.c Examining data/ngspice-33+ds/src/maths/cmaths/test_cx_cph.c Examining data/ngspice-33+ds/src/maths/cmaths/cmath2.c Examining data/ngspice-33+ds/src/maths/cmaths/cmath.h Examining data/ngspice-33+ds/src/maths/cmaths/cmath1.h Examining data/ngspice-33+ds/src/maths/cmaths/cmath4.h Examining data/ngspice-33+ds/src/maths/sparse/spextra.c Examining data/ngspice-33+ds/src/maths/sparse/spdefs.h Examining data/ngspice-33+ds/src/maths/sparse/spconfig.h Examining data/ngspice-33+ds/src/maths/sparse/spoutput.c Examining data/ngspice-33+ds/src/maths/sparse/spsolve.c Examining data/ngspice-33+ds/src/maths/sparse/spfactor.c Examining data/ngspice-33+ds/src/maths/sparse/sputils.c Examining data/ngspice-33+ds/src/maths/sparse/spalloc.c Examining data/ngspice-33+ds/src/maths/sparse/spsmp.c Examining data/ngspice-33+ds/src/maths/sparse/spbuild.c Examining data/ngspice-33+ds/src/maths/misc/isnan.c Examining data/ngspice-33+ds/src/maths/misc/norm.c Examining data/ngspice-33+ds/src/maths/misc/randnumb.c Examining data/ngspice-33+ds/src/maths/misc/test_accuracy.c Examining data/ngspice-33+ds/src/maths/misc/accuracy.c Examining data/ngspice-33+ds/src/maths/misc/norm.h Examining data/ngspice-33+ds/src/maths/misc/equality.c Examining data/ngspice-33+ds/src/maths/misc/accuracy.h Examining data/ngspice-33+ds/src/maths/misc/bernoull.h Examining data/ngspice-33+ds/src/maths/misc/bernoull.c Examining data/ngspice-33+ds/src/maths/misc/logb.c Examining data/ngspice-33+ds/src/maths/misc/isinf.c Examining data/ngspice-33+ds/src/maths/misc/scalb.c Examining data/ngspice-33+ds/src/sharedspice.c Examining data/ngspice-33+ds/src/ciderlib/input/boundary.c Examining data/ngspice-33+ds/src/ciderlib/input/method.c Examining data/ngspice-33+ds/src/ciderlib/input/contact.c Examining data/ngspice-33+ds/src/ciderlib/input/elctset.c Examining data/ngspice-33+ds/src/ciderlib/input/cards.c Examining data/ngspice-33+ds/src/ciderlib/input/dopset.c Examining data/ngspice-33+ds/src/ciderlib/input/output.c Examining data/ngspice-33+ds/src/ciderlib/input/doping.c Examining data/ngspice-33+ds/src/ciderlib/input/outpset.c Examining data/ngspice-33+ds/src/ciderlib/input/optionsc.c Examining data/ngspice-33+ds/src/ciderlib/input/mobset.c Examining data/ngspice-33+ds/src/ciderlib/input/bdryset.c Examining data/ngspice-33+ds/src/ciderlib/input/material.c Examining data/ngspice-33+ds/src/ciderlib/input/contset.c Examining data/ngspice-33+ds/src/ciderlib/input/models.c Examining data/ngspice-33+ds/src/ciderlib/input/mobility.c Examining data/ngspice-33+ds/src/ciderlib/input/electrod.c Examining data/ngspice-33+ds/src/ciderlib/input/domain.c Examining data/ngspice-33+ds/src/ciderlib/input/domnset.c Examining data/ngspice-33+ds/src/ciderlib/input/meshset.c Examining data/ngspice-33+ds/src/ciderlib/input/matlset.c Examining data/ngspice-33+ds/src/ciderlib/input/mesh.c Examining data/ngspice-33+ds/src/ciderlib/input/modlset.c Examining data/ngspice-33+ds/src/ciderlib/twod/twocurr.c Examining data/ngspice-33+ds/src/ciderlib/twod/twocont.c Examining data/ngspice-33+ds/src/ciderlib/twod/twosolve.c Examining data/ngspice-33+ds/src/ciderlib/twod/twomobdv.c Examining data/ngspice-33+ds/src/ciderlib/twod/twoncont.c Examining data/ngspice-33+ds/src/ciderlib/twod/twopoiss.c Examining data/ngspice-33+ds/src/ciderlib/twod/twoprint.c Examining data/ngspice-33+ds/src/ciderlib/twod/twoadmit.c Examining data/ngspice-33+ds/src/ciderlib/twod/twoelect.c Examining data/ngspice-33+ds/src/ciderlib/twod/twodext.h Examining data/ngspice-33+ds/src/ciderlib/twod/tworead.c Examining data/ngspice-33+ds/src/ciderlib/twod/twoaval.c Examining data/ngspice-33+ds/src/ciderlib/twod/twoproj.c Examining data/ngspice-33+ds/src/ciderlib/twod/twosetbc.c Examining data/ngspice-33+ds/src/ciderlib/twod/twomobfn.c Examining data/ngspice-33+ds/src/ciderlib/twod/twomobil.c Examining data/ngspice-33+ds/src/ciderlib/twod/twocond.c Examining data/ngspice-33+ds/src/ciderlib/twod/twosetup.c Examining data/ngspice-33+ds/src/ciderlib/twod/twodest.c Examining data/ngspice-33+ds/src/ciderlib/twod/twofield.c Examining data/ngspice-33+ds/src/ciderlib/twod/twodopng.c Examining data/ngspice-33+ds/src/ciderlib/twod/twomesh.c Examining data/ngspice-33+ds/src/ciderlib/twod/twopcont.c Examining data/ngspice-33+ds/src/ciderlib/twod/twoddefs.h Examining data/ngspice-33+ds/src/ciderlib/support/database.c Examining data/ngspice-33+ds/src/ciderlib/support/mater.c Examining data/ngspice-33+ds/src/ciderlib/support/geominfo.c Examining data/ngspice-33+ds/src/ciderlib/support/misc.c Examining data/ngspice-33+ds/src/ciderlib/support/mobil.c Examining data/ngspice-33+ds/src/ciderlib/support/logfile.c Examining data/ngspice-33+ds/src/ciderlib/support/suprmitf.c Examining data/ngspice-33+ds/src/ciderlib/support/recomb.c Examining data/ngspice-33+ds/src/ciderlib/support/globals.c Examining data/ngspice-33+ds/src/ciderlib/support/integuse.c Examining data/ngspice-33+ds/src/ciderlib/support/suprem.c Examining data/ngspice-33+ds/src/ciderlib/support/integset.c Examining data/ngspice-33+ds/src/ciderlib/support/devprint.c Examining data/ngspice-33+ds/src/ciderlib/oned/onefreez.c Examining data/ngspice-33+ds/src/ciderlib/oned/onedext.h Examining data/ngspice-33+ds/src/ciderlib/oned/onecont.c Examining data/ngspice-33+ds/src/ciderlib/oned/oneprint.c Examining data/ngspice-33+ds/src/ciderlib/oned/oneadmit.c Examining data/ngspice-33+ds/src/ciderlib/oned/oneddefs.h Examining data/ngspice-33+ds/src/ciderlib/oned/oneaval.c Examining data/ngspice-33+ds/src/ciderlib/oned/oneproj.c Examining data/ngspice-33+ds/src/ciderlib/oned/onedopng.c Examining data/ngspice-33+ds/src/ciderlib/oned/onemesh.c Examining data/ngspice-33+ds/src/ciderlib/oned/oneread.c Examining data/ngspice-33+ds/src/ciderlib/oned/onecond.c Examining data/ngspice-33+ds/src/ciderlib/oned/onesolve.c Examining data/ngspice-33+ds/src/ciderlib/oned/onesetup.c Examining data/ngspice-33+ds/src/ciderlib/oned/onedest.c Examining data/ngspice-33+ds/src/ciderlib/oned/onepoiss.c Examining data/ngspice-33+ds/src/spicelib/parser/inpgtok.c Examining data/ngspice-33+ds/src/spicelib/parser/inperrc.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2q.c Examining data/ngspice-33+ds/src/spicelib/parser/inperror.c Examining data/ngspice-33+ds/src/spicelib/parser/inppas3.h Examining data/ngspice-33+ds/src/spicelib/parser/inpgval.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2p.c Examining data/ngspice-33+ds/src/spicelib/parser/inpdoopt.c Examining data/ngspice-33+ds/src/spicelib/parser/inpptree.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2t.c Examining data/ngspice-33+ds/src/spicelib/parser/inpgmod.c Examining data/ngspice-33+ds/src/spicelib/parser/inpcfix.c Examining data/ngspice-33+ds/src/spicelib/parser/inppname.c Examining data/ngspice-33+ds/src/spicelib/parser/inpgstr.c Examining data/ngspice-33+ds/src/spicelib/parser/inppas3.c Examining data/ngspice-33+ds/src/spicelib/parser/inpfindv.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2m.c Examining data/ngspice-33+ds/src/spicelib/parser/inpmktmp.c Examining data/ngspice-33+ds/src/spicelib/parser/inppas2.h Examining data/ngspice-33+ds/src/spicelib/parser/inp2c.c Examining data/ngspice-33+ds/src/spicelib/parser/ifnewuid.c Examining data/ngspice-33+ds/src/spicelib/parser/inpgtitl.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2e.c Examining data/ngspice-33+ds/src/spicelib/parser/inppas1.h Examining data/ngspice-33+ds/src/spicelib/parser/inpptree-parser.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2z.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2w.c Examining data/ngspice-33+ds/src/spicelib/parser/ifeval.c Examining data/ngspice-33+ds/src/spicelib/parser/inplist.c Examining data/ngspice-33+ds/src/spicelib/parser/inpsymt.c Examining data/ngspice-33+ds/src/spicelib/parser/inptyplk.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2s.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2d.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2k.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2o.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2n.c Examining data/ngspice-33+ds/src/spicelib/parser/inplkmod.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2r.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2i.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2h.c Examining data/ngspice-33+ds/src/spicelib/parser/inpapnam.c Examining data/ngspice-33+ds/src/spicelib/parser/sperror.c Examining data/ngspice-33+ds/src/spicelib/parser/ptfuncs.c Examining data/ngspice-33+ds/src/spicelib/parser/inpptree-parser-y.h Examining data/ngspice-33+ds/src/spicelib/parser/inpptree-parser.h Examining data/ngspice-33+ds/src/spicelib/parser/inp2f.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2g.c Examining data/ngspice-33+ds/src/spicelib/parser/inpkmods.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2l.c Examining data/ngspice-33+ds/src/spicelib/parser/inpeval.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2j.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2b.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2u.c Examining data/ngspice-33+ds/src/spicelib/parser/inpaname.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2dot.c Examining data/ngspice-33+ds/src/spicelib/parser/inppas2.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2v.c Examining data/ngspice-33+ds/src/spicelib/parser/inpfindl.c Examining data/ngspice-33+ds/src/spicelib/parser/inppas1.c Examining data/ngspice-33+ds/src/spicelib/parser/inpdomod.c Examining data/ngspice-33+ds/src/spicelib/parser/inpdpar.c Examining data/ngspice-33+ds/src/spicelib/parser/inpxx.h Examining data/ngspice-33+ds/src/spicelib/parser/inpmkmod.c Examining data/ngspice-33+ds/src/spicelib/parser/inp2y.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktpzset.c Examining data/ngspice-33+ds/src/spicelib/analysis/analysis.h Examining data/ngspice-33+ds/src/spicelib/analysis/ckttrunc.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktneweq.c Examining data/ngspice-33+ds/src/spicelib/analysis/ckti2nod.c Examining data/ngspice-33+ds/src/spicelib/analysis/dcop.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktdltn.c Examining data/ngspice-33+ds/src/spicelib/analysis/pssinit.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktfbran.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktfnode.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktfnda.c Examining data/ngspice-33+ds/src/spicelib/analysis/dcosetp.c Examining data/ngspice-33+ds/src/spicelib/analysis/dctaskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktpzstr.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktmapn.c Examining data/ngspice-33+ds/src/spicelib/analysis/acan.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktmknod.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktntask.c Examining data/ngspice-33+ds/src/spicelib/analysis/pssaskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/traninit.c Examining data/ngspice-33+ds/src/spicelib/analysis/dsetparm.c Examining data/ngspice-33+ds/src/spicelib/analysis/dcpss.c Examining data/ngspice-33+ds/src/spicelib/analysis/dctrcurv.c Examining data/ngspice-33+ds/src/spicelib/analysis/dloadfns.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktbkdum.c Examining data/ngspice-33+ds/src/spicelib/analysis/dctran.c Examining data/ngspice-33+ds/src/spicelib/analysis/pzaskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktic.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktdlti.c Examining data/ngspice-33+ds/src/spicelib/analysis/dkerproc.c Examining data/ngspice-33+ds/src/spicelib/analysis/daskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktsetnp.c Examining data/ngspice-33+ds/src/spicelib/analysis/distoan.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktdltm.c Examining data/ngspice-33+ds/src/spicelib/analysis/senssetp.c Examining data/ngspice-33+ds/src/spicelib/analysis/ninteg.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktnum2n.c Examining data/ngspice-33+ds/src/spicelib/analysis/analysis.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktparam.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktclrbk.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktdump.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktsetap.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktnames.c Examining data/ngspice-33+ds/src/spicelib/analysis/pzan.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktnoise.c Examining data/ngspice-33+ds/src/spicelib/analysis/tranaskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/acsetp.c Examining data/ngspice-33+ds/src/spicelib/analysis/nevalsrc.c Examining data/ngspice-33+ds/src/spicelib/analysis/tfanal.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktsgen.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktnodn.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktsopt.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktlnkeq.c Examining data/ngspice-33+ds/src/spicelib/analysis/naskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktdest.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktmpar.c Examining data/ngspice-33+ds/src/spicelib/analysis/nsetparm.c Examining data/ngspice-33+ds/src/spicelib/analysis/tfsetp.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktncdump.c Examining data/ngspice-33+ds/src/spicelib/analysis/cluster.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktop.c Examining data/ngspice-33+ds/src/spicelib/analysis/psssetp.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktdisto.c Examining data/ngspice-33+ds/src/spicelib/analysis/sensaskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktpname.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktacdum.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktgrnd.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktdelt.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktload.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktmcrt.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktftask.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktasknq.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktmkvol.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktacct.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktaskaq.c Examining data/ngspice-33+ds/src/spicelib/analysis/tfaskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktdojob.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktmask.c Examining data/ngspice-33+ds/src/spicelib/analysis/transetp.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktpzld.c Examining data/ngspice-33+ds/src/spicelib/analysis/acaskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktnewan.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktsetup.c Examining data/ngspice-33+ds/src/spicelib/analysis/ckttemp.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktmkcur.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktsetbk.c Examining data/ngspice-33+ds/src/spicelib/analysis/pzsetp.c Examining data/ngspice-33+ds/src/spicelib/analysis/dcoaskq.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktsens.c Examining data/ngspice-33+ds/src/spicelib/analysis/dctsetp.c Examining data/ngspice-33+ds/src/spicelib/analysis/noisean.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktpmnam.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktfndm.c Examining data/ngspice-33+ds/src/spicelib/analysis/ckttyplk.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktnewn.c Examining data/ngspice-33+ds/src/spicelib/analysis/cktterr.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/bsim4v7init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/bsim4v7ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7mdel.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7acld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7noi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/bsim4v7def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/bsim4v7itf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/bsim4v7init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7soachk.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7geo.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7set.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7check.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcdel.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcconv.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcpar.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcset.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcinit.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcitf.h Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcload.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrc.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrctemp.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcfbr.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcdest.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcask.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcext.h Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcacld.c Examining data/ngspice-33+ds/src/spicelib/devices/asrc/asrcinit.h Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcload.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcset.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcfbr.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcacct.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcitf.h Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrc.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcext.h Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcinit.h Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrctemp.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcacld.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcdel.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcpzs.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcpar.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcask.c Examining data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcinit.c Examining data/ngspice-33+ds/src/spicelib/devices/cktbindnode.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlload.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlask.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlinit.h Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlinit.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlext.h Examining data/ngspice-33+ds/src/spicelib/devices/txl/txldefs.h Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlmask.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlfbr.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlacct.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlitf.h Examining data/ngspice-33+ds/src/spicelib/devices/txl/txl.c Examining data/ngspice-33+ds/src/spicelib/devices/txl/txlparam.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccssprt.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccsinit.h Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccspar.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccsset.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccsitf.h Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccsinit.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccs.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccssacl.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccsload.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccssset.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccsext.h Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccsask.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccssld.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccspzld.c Examining data/ngspice-33+ds/src/spicelib/devices/cccs/cccsdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesload.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesitf.h Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesext.h Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesask.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/mes/mestemp.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesinit.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesacl.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesgetic.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mes.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesdisto.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mespzld.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mestrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesmask.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesinit.h Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesdset.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/messetup.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesnoise.c Examining data/ngspice-33+ds/src/spicelib/devices/mes/mesparam.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2pzl.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2defs.h Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2init.h Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2setup.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2load.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2init.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2temp.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2mask.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2ask.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2param.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2acl.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2itf.h Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2ext.h Examining data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/bsim4v5def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5soachk.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5check.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/bsim4v5itf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5geo.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5noi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5acld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5mdel.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/bsim4v5init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/bsim4v5init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/bsim4v5ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5set.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2del.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbjt2def.h Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2load.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2trun.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2init.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2parm.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2set.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2temp.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbjt2ext.h Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbjt2itf.h Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2ask.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2init.h Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2acld.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2dump.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capsoachk.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capsupd.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capparam.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/cap/capmask.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/captemp.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capsprt.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capinit.h Examining data/ngspice-33+ds/src/spicelib/devices/cap/capask.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capsload.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capload.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capacld.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/captrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capgetic.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capitf.h Examining data/ngspice-33+ds/src/spicelib/devices/cap/capsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/cap.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capext.h Examining data/ngspice-33+ds/src/spicelib/devices/cap/capsacl.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capinit.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/cappzld.c Examining data/ngspice-33+ds/src/spicelib/devices/cap/capsset.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/csw.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswparam.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswacld.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswnoise.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswitf.h Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswask.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswinit.h Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswinit.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswext.h Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswload.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswmask.c Examining data/ngspice-33+ds/src/spicelib/devices/csw/cswtrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvspzld.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsinit.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsinit.h Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsset.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvssacl.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsext.h Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsitf.h Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsask.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvssprt.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsfbr.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvssld.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvspar.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvs.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvssset.c Examining data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsload.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesamask.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesadefs.h Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesatrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesaload.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesainit.h Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesa.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesaext.h Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesapzl.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesaparam.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesatemp.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesaitf.h Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesaask.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesamparam.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesainit.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesasetup.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesagetic.c Examining data/ngspice-33+ds/src/spicelib/devices/mesa/mesaacl.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosask.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosdist.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosconv.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosdset.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosset.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmospar.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmostrun.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosinit.h Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosic.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmossoachk.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosmask.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmostemp.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosext.h Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosinit.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosnoi.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmospzld.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosload.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmos.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmositf.h Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosacld.c Examining data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/cktinit.c Examining data/ngspice-33+ds/src/spicelib/devices/cktfinddev.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0acld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/bsim3v0init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/bsim3v0itf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/bsim3v0init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/bsim3v0ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0noi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/bsim3v0def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0set.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicconv.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicinit.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicmask.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicparam.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicgetic.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicinit.h Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbic.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbictemp.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbictrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicsoachk.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicask.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicext.h Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicitf.h Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicnoise.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicacld.c Examining data/ngspice-33+ds/src/spicelib/devices/vbic/vbicload.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4check.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4geo.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/bsim4def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4acld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/bsim4itf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/bsim4init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4soachk.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/bsim4init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4mdel.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/bsim4ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4noi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4set.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4/b4.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/numd2itf.h Examining data/ngspice-33+ds/src/spicelib/devices/numd2/numd2init.h Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2load.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2temp.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/numd2def.h Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2set.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2ask.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/numd2ext.h Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2acld.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2del.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2parm.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2trun.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2dump.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/nud2mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/numd2/numd2init.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diomask.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/dioload.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diosacl.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diotemp.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/dioext.h Examining data/ngspice-33+ds/src/spicelib/devices/dio/diosload.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diodefs.h Examining data/ngspice-33+ds/src/spicelib/devices/dio/dio.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/dioitf.h Examining data/ngspice-33+ds/src/spicelib/devices/dio/dioacld.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diosupd.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diotrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diosprt.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/dioinit.h Examining data/ngspice-33+ds/src/spicelib/devices/dio/dioinit.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diodisto.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diopzld.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diompar.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diosoachk.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diosetup.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/dionoise.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diosset.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/dioconv.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diogetic.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/dioask.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/dioparam.c Examining data/ngspice-33+ds/src/spicelib/devices/dio/diodset.c Examining data/ngspice-33+ds/src/spicelib/devices/cktsoachk.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9set.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9dist.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9sprt.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9mask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9init.h Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9trun.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9dset.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9par.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9del.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9supd.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9acld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9noi.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9temp.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ic.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ext.h Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9sld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9sset.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9sacl.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9itf.h Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9defs.h Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9conv.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9init.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9load.c Examining data/ngspice-33+ds/src/spicelib/devices/mos9/mos9.c Examining data/ngspice-33+ds/src/spicelib/devices/cktaccept.c Examining data/ngspice-33+ds/src/spicelib/devices/cktcrte.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3acld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3trun.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3temp.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3noi.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3init.h Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3mask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3supd.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3dset.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3dist.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3init.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3sset.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3par.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3itf.h Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3sld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3load.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3sprt.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3set.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3sacl.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3defs.h Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ext.h Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3del.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3conv.c Examining data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ic.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummparm.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummdump.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/numosinit.h Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummload.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummset.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/numm.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/numositf.h Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummacld.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/numosext.h Examining data/ngspice-33+ds/src/spicelib/devices/numos/numosdef.h Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummdel.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummask.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/numosinit.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummtrun.c Examining data/ngspice-33+ds/src/spicelib/devices/numos/nummtemp.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2set.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2soachk.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hisim2.h Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2ext.h Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2init.h Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2mask.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2getic.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2init.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2par.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2itf.h Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2noi.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2evalenv.h Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2def.h Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2mdel.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2temp.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2eval_dep.h Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2ld.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2eval.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2acld.c Examining data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2ask.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetask.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfettrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfet.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetinit.h Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfettemp.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetmask.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetitf.h Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetacl.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetext.h Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetparam.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetinit.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetgetic.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetpzl.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetload.c Examining data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevtemp.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevmdel.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevset.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevtrun.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevaccept.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevload.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevinit.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndev.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevparm.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevitf.h Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevdump.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevask.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevacld.c Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevexch.h Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevinit.h Examining data/ngspice-33+ds/src/spicelib/devices/ndev/ndevext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdcheck.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipddef.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdset.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipditf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdinit.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdcvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdgetic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdacld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdinit.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdtemp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipd.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdnoi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdmask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdtrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/res/respzld.c Examining data/ngspice-33+ds/src/spicelib/devices/res/ressacl.c Examining data/ngspice-33+ds/src/spicelib/devices/res/resask.c Examining data/ngspice-33+ds/src/spicelib/devices/res/ressset.c Examining data/ngspice-33+ds/src/spicelib/devices/res/resdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/res/resinit.h Examining data/ngspice-33+ds/src/spicelib/devices/res/resparam.c Examining data/ngspice-33+ds/src/spicelib/devices/res/resload.c Examining data/ngspice-33+ds/src/spicelib/devices/res/ressoachk.c Examining data/ngspice-33+ds/src/spicelib/devices/res/resmask.c Examining data/ngspice-33+ds/src/spicelib/devices/res/ressload.c Examining data/ngspice-33+ds/src/spicelib/devices/res/ressetup.c Examining data/ngspice-33+ds/src/spicelib/devices/res/res.c Examining data/ngspice-33+ds/src/spicelib/devices/res/resinit.c Examining data/ngspice-33+ds/src/spicelib/devices/res/resitf.h Examining data/ngspice-33+ds/src/spicelib/devices/res/resext.h Examining data/ngspice-33+ds/src/spicelib/devices/res/resmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/res/ressprt.c Examining data/ngspice-33+ds/src/spicelib/devices/res/resnoise.c Examining data/ngspice-33+ds/src/spicelib/devices/res/restemp.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccssld.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccspar.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccsload.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccssset.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccspzld.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccsask.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccsitf.h Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccssacl.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccsext.h Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccsdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccssprt.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccsinit.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccsinit.h Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccs.c Examining data/ngspice-33+ds/src/spicelib/devices/vccs/vccsset.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvset.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvld_info_eval.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvgetic.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvinit.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvmask.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvitf.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhveval_qover.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvinit.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhveval.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvdef.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvtemp.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvext.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvsoachk.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvcvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvpar.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvnoi.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvask.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvld.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hisimhv.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhv.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvevalenv.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvacld.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvtemp_eval.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvtrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddinit.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddset.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddtrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddcvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddmask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddnoi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddacld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddcheck.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddtemp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddinit.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soidd.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddgetic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soidddef.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soidditf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32soachk.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/bsim3v32init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/bsim3v32def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/bsim3v32ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32mdel.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32acld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32check.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32set.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/bsim3v32itf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/bsim3v32init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32noi.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swinit.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swacload.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swnoise.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swtrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/switf.h Examining data/ngspice-33+ds/src/spicelib/devices/sw/swinit.h Examining data/ngspice-33+ds/src/spicelib/devices/sw/swsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/sw/swask.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swparam.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swmask.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swmparam.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swext.h Examining data/ngspice-33+ds/src/spicelib/devices/sw/swpzload.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/swload.c Examining data/ngspice-33+ds/src/spicelib/devices/sw/sw.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6soachk.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6acld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/bsim4v6ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/bsim4v6init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/bsim4v6itf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/bsim4v6init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6geo.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6mdel.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6noi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/bsim4v6def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6set.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6check.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/traload.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/traitf.h Examining data/ngspice-33+ds/src/spicelib/devices/tra/traask.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/tratemp.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/traacct.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/trainit.h Examining data/ngspice-33+ds/src/spicelib/devices/tra/traparam.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/tradefs.h Examining data/ngspice-33+ds/src/spicelib/devices/tra/traacld.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/tra.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/trasetup.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/tratrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/tra/traext.h Examining data/ngspice-33+ds/src/spicelib/devices/tra/trainit.c Examining data/ngspice-33+ds/src/spicelib/devices/dev.c Examining data/ngspice-33+ds/src/spicelib/devices/limit.c Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplask.c Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplparam.c Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplmask.c Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplinit.c Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cpl.c Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplinit.h Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplload.c Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplext.h Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplitf.h Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cplmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/cpl/cpldefs.h Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soiset.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soicvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soimpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soiinit.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soicheck.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soigetic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soiext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soiacld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soipar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soipzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soisoachk.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soiask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soidef.h Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soiitf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soimdel.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soild.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soitemp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soiinit.h Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soinoi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soitrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soimask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soi.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2sld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2acld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2supd.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2noi.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2set.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2itf.h Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ic.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2conv.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2mask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2temp.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2dset.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2del.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2par.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2init.h Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2sprt.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2trun.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2defs.h Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2dist.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2sacl.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ext.h Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2load.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2sset.c Examining data/ngspice-33+ds/src/spicelib/devices/mos2/mos2init.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtload.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdump.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtask.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtinit.h Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtitf.h Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtext.h Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjttrun.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtacld.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjttemp.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjt.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtparm.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtset.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtinit.c Examining data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdel.c Examining data/ngspice-33+ds/src/spicelib/devices/cktaccept.h Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetinit.h Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetdist.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetic.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetnoi.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetmask.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetask.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetinit.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfet.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetitf.h Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetload.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetdset.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetpar.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfettrun.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetset.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfettemp.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetacld.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetext.h Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet/jfetdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/devsup.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2init.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2set.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2par.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2acld.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2defs.h Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2temp.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2itf.h Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/psmodel.h Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2mask.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2noi.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2ext.h Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2load.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2trun.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2ic.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2ask.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/psmodel.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2parm.h Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2.c Examining data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2init.h Examining data/ngspice-33+ds/src/spicelib/devices/dev.h Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcmask.c Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/urc/urc.c Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcext.h Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcinit.c Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcparam.c Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcitf.h Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcask.c Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/urc/urcinit.h Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcinit.c Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcitf.h Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcpar.c Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcinit.h Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrc.c Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcacct.c Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrctemp.c Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcask.c Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcdel.c Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcext.h Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcload.c Examining data/ngspice-33+ds/src/spicelib/devices/isrc/isrcacld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/bsim1init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1set.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1disto.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/bsim1init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1moscap.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/bsim1def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1eval.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1dset.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/bsim1itf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/bsim1ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1acld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim1/b1noi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3mdel.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3noi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3check.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/bsim3ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/bsim3itf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/bsim3def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/bsim3init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3set.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/bsim3init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3soachk.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3/b3acld.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numditf.h Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdload.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numd.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdask.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdacld.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numddump.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdtrun.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdparm.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdtemp.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numddefs.h Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdset.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numddel.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdinit.h Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdext.h Examining data/ngspice-33+ds/src/spicelib/devices/numd/numdinit.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2evalenv.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2ext.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2temp_eval.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2eval_rdrift.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2temp.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2eval_qover.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hisimhv2.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2init.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2acld.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2soachk.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2temp_eval_dio.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2noi.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2eval_dio.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2mask.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2par.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2ask.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2itf.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2temp_eval_rdri.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2set.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2init.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2eval.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2ld_info_eval.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2getic.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2def.h Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2ld.c Examining data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2eval_dep.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/bsim3v1def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/bsim3v1itf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1set.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1check.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1noi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/bsim3v1init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/bsim3v1init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1acld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/bsim3v1ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ext.h Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1sprt.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1acld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1sld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1sset.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1defs.h Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1supd.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1temp.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1par.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1dset.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1sacl.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1trun.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1load.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1itf.h Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ic.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1init.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1dist.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1noi.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1set.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1conv.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1init.h Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1mask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos1/mos1del.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3itf.h Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3set.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3par.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3temp.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3ic.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3defs.h Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3trun.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3ask.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3acld.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3init.h Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3mask.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3init.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3nois.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3load.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3conv.c Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3ext.h Examining data/ngspice-33+ds/src/spicelib/devices/soi3/soi3cap.c Examining data/ngspice-33+ds/src/spicelib/devices/cktask.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indsacl.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indtemp.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indinit.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indtrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/mutsset.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/mutsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indparam.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/mutacld.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/inditf.h Examining data/ngspice-33+ds/src/spicelib/devices/ind/mutask.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indext.h Examining data/ngspice-33+ds/src/spicelib/devices/ind/inddefs.h Examining data/ngspice-33+ds/src/spicelib/devices/ind/indinit.h Examining data/ngspice-33+ds/src/spicelib/devices/ind/ind.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/mutparam.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indask.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indsset.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indacld.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/mutpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/mutsprt.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indmask.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indsload.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indload.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indsupd.c Examining data/ngspice-33+ds/src/spicelib/devices/ind/indsprt.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltrainit.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltraacct.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltraacld.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltrapar.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltratemp.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltratrun.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltrampar.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltra.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltraload.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltramask.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltraask.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltramisc.c Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltraitf.h Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltraext.h Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltradefs.h Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltrainit.h Examining data/ngspice-33+ds/src/spicelib/devices/ltra/ltraset.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtparam.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtmask.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtsupd.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtload.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtgetic.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjt.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtconv.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtask.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjttrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtsacl.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtsprt.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtdset.h Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtitf.h Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtdel.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtdisto.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtnoise.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtext.h Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtsload.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtinit.h Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtsetup.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjttemp.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtsset.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtacld.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtinit.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtdset.c Examining data/ngspice-33+ds/src/spicelib/devices/bjt/bjtsoachk.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvssacl.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsinit.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvssset.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsask.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsload.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsinit.h Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsitf.h Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsdefs.h Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvspar.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsext.h Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsset.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvssprt.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvs.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsfbr.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvspzld.c Examining data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvssld.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6defs.h Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ext.h Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6load.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6init.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6conv.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6mask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6set.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6trun.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6itf.h Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ask.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ic.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6del.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6par.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6temp.c Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6init.h Examining data/ngspice-33+ds/src/spicelib/devices/mos6/mos6.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdcvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdinit.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifditf.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdset.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdtrunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifddef.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdacld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdpzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdmask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdcheck.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdinit.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifd.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdmpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdgetic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdnoi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdtemp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2ask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2noi.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2ld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2pzld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2cvtest.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2par.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2trunc.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/bsim2init.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2temp.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/bsim2ext.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2getic.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2mask.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2acld.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2moscap.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/bsim2init.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2eval.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2mpar.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/bsim2def.h Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/b2set.c Examining data/ngspice-33+ds/src/spicelib/devices/bsim2/bsim2itf.h Examining data/ngspice-33+ds/src/winmain.c Examining data/ngspice-33+ds/src/tclspice.c Examining data/ngspice-33+ds/src/frontend/rawfile.h Examining data/ngspice-33+ds/src/frontend/subckt.h Examining data/ngspice-33+ds/src/frontend/com_help.h Examining data/ngspice-33+ds/src/frontend/resource.c Examining data/ngspice-33+ds/src/frontend/parser/lexical.h Examining data/ngspice-33+ds/src/frontend/parser/numparse.c Examining data/ngspice-33+ds/src/frontend/parser/cshpar.h Examining data/ngspice-33+ds/src/frontend/parser/glob.h Examining data/ngspice-33+ds/src/frontend/parser/complete.c Examining data/ngspice-33+ds/src/frontend/parser/numparse.h Examining data/ngspice-33+ds/src/frontend/parser/input.h Examining data/ngspice-33+ds/src/frontend/parser/backq.c Examining data/ngspice-33+ds/src/frontend/parser/backq.h Examining data/ngspice-33+ds/src/frontend/parser/cshpar.c Examining data/ngspice-33+ds/src/frontend/parser/glob.c Examining data/ngspice-33+ds/src/frontend/parser/unixcom.h Examining data/ngspice-33+ds/src/frontend/parser/lexical.c Examining data/ngspice-33+ds/src/frontend/parser/unixcom.c Examining data/ngspice-33+ds/src/frontend/parser/input.c Examining data/ngspice-33+ds/src/frontend/parser/std.c Examining data/ngspice-33+ds/src/frontend/parser/complete.h Examining data/ngspice-33+ds/src/frontend/com_cdump.c Examining data/ngspice-33+ds/src/frontend/misccoms.c Examining data/ngspice-33+ds/src/frontend/dotcards.c Examining data/ngspice-33+ds/src/frontend/com_strcmp.h Examining data/ngspice-33+ds/src/frontend/com_dl.h Examining data/ngspice-33+ds/src/frontend/terminal.c Examining data/ngspice-33+ds/src/frontend/inpcom.h Examining data/ngspice-33+ds/src/frontend/circuits.h Examining data/ngspice-33+ds/src/frontend/newcoms.c Examining data/ngspice-33+ds/src/frontend/com_rehash.c Examining data/ngspice-33+ds/src/frontend/error.c Examining data/ngspice-33+ds/src/frontend/com_state.c Examining data/ngspice-33+ds/src/frontend/com_fft.c Examining data/ngspice-33+ds/src/frontend/device.h Examining data/ngspice-33+ds/src/frontend/where.c Examining data/ngspice-33+ds/src/frontend/com_set.h Examining data/ngspice-33+ds/src/frontend/com_display.h Examining data/ngspice-33+ds/src/frontend/breakp.h Examining data/ngspice-33+ds/src/frontend/gens.h Examining data/ngspice-33+ds/src/frontend/com_history.c Examining data/ngspice-33+ds/src/frontend/numparam/general.h Examining data/ngspice-33+ds/src/frontend/numparam/numpaif.h Examining data/ngspice-33+ds/src/frontend/numparam/mystring.c Examining data/ngspice-33+ds/src/frontend/numparam/spicenum.c Examining data/ngspice-33+ds/src/frontend/numparam/xpressn.c Examining data/ngspice-33+ds/src/frontend/numparam/numparam.h Examining data/ngspice-33+ds/src/frontend/points.c Examining data/ngspice-33+ds/src/frontend/get_avail_mem_size.c Examining data/ngspice-33+ds/src/frontend/options.h Examining data/ngspice-33+ds/src/frontend/com_strcmp.c Examining data/ngspice-33+ds/src/frontend/arg.c Examining data/ngspice-33+ds/src/frontend/parse-bison.c Examining data/ngspice-33+ds/src/frontend/vectors.h Examining data/ngspice-33+ds/src/frontend/evaluate.c Examining data/ngspice-33+ds/src/frontend/breakp2.h Examining data/ngspice-33+ds/src/frontend/commands.h Examining data/ngspice-33+ds/src/frontend/mw_coms.c Examining data/ngspice-33+ds/src/frontend/wdisp/windisp.h Examining data/ngspice-33+ds/src/frontend/wdisp/ftegraf.h Examining data/ngspice-33+ds/src/frontend/wdisp/wincolor.c Examining data/ngspice-33+ds/src/frontend/wdisp/windisp.c Examining data/ngspice-33+ds/src/frontend/wdisp/winprint.c Examining data/ngspice-33+ds/src/frontend/wdisp/winprint.h Examining data/ngspice-33+ds/src/frontend/com_measure2.h Examining data/ngspice-33+ds/src/frontend/ftehelp.h Examining data/ngspice-33+ds/src/frontend/com_cdump.h Examining data/ngspice-33+ds/src/frontend/com_dl.c Examining data/ngspice-33+ds/src/frontend/com_ahelp.h Examining data/ngspice-33+ds/src/frontend/terminal.h Examining data/ngspice-33+ds/src/frontend/breakp2.c Examining data/ngspice-33+ds/src/frontend/shyu.h Examining data/ngspice-33+ds/src/frontend/resource.h Examining data/ngspice-33+ds/src/frontend/spiceif.h Examining data/ngspice-33+ds/src/frontend/postsc.c Examining data/ngspice-33+ds/src/frontend/get_phys_mem_size.c Examining data/ngspice-33+ds/src/frontend/breakp.c Examining data/ngspice-33+ds/src/frontend/misccoms.h Examining data/ngspice-33+ds/src/frontend/define.h Examining data/ngspice-33+ds/src/frontend/evaluate.h Examining data/ngspice-33+ds/src/frontend/com_setscale.h Examining data/ngspice-33+ds/src/frontend/completion.h Examining data/ngspice-33+ds/src/frontend/com_gnuplot.c Examining data/ngspice-33+ds/src/frontend/spec.c Examining data/ngspice-33+ds/src/frontend/subckt.c Examining data/ngspice-33+ds/src/frontend/rawfile.c Examining data/ngspice-33+ds/src/frontend/control.h Examining data/ngspice-33+ds/src/frontend/com_echo.h Examining data/ngspice-33+ds/src/frontend/com_echo.c Examining data/ngspice-33+ds/src/frontend/vectors.c Examining data/ngspice-33+ds/src/frontend/runcoms.h Examining data/ngspice-33+ds/src/frontend/nutmegif.c Examining data/ngspice-33+ds/src/frontend/com_measure2.c Examining data/ngspice-33+ds/src/frontend/outitf.h Examining data/ngspice-33+ds/src/frontend/signal_handler.c Examining data/ngspice-33+ds/src/frontend/com_unset.h Examining data/ngspice-33+ds/src/frontend/miscvars.c Examining data/ngspice-33+ds/src/frontend/com_shift.h Examining data/ngspice-33+ds/src/frontend/com_chdir.h Examining data/ngspice-33+ds/src/frontend/define.c Examining data/ngspice-33+ds/src/frontend/com_let.h Examining data/ngspice-33+ds/src/frontend/display.h Examining data/ngspice-33+ds/src/frontend/signal_handler.h Examining data/ngspice-33+ds/src/frontend/plotting/grid.c Examining data/ngspice-33+ds/src/frontend/plotting/clip.h Examining data/ngspice-33+ds/src/frontend/plotting/graphdb.c Examining data/ngspice-33+ds/src/frontend/plotting/x11.h Examining data/ngspice-33+ds/src/frontend/plotting/plot5.c Examining data/ngspice-33+ds/src/frontend/plotting/clip.c Examining data/ngspice-33+ds/src/frontend/plotting/pvec.h Examining data/ngspice-33+ds/src/frontend/plotting/plotting.c Examining data/ngspice-33+ds/src/frontend/plotting/graf.c Examining data/ngspice-33+ds/src/frontend/plotting/graf.h Examining data/ngspice-33+ds/src/frontend/plotting/agraf.h Examining data/ngspice-33+ds/src/frontend/plotting/gnuplot.h Examining data/ngspice-33+ds/src/frontend/plotting/plotit.c Examining data/ngspice-33+ds/src/frontend/plotting/x11.c Examining data/ngspice-33+ds/src/frontend/plotting/plot5.h Examining data/ngspice-33+ds/src/frontend/plotting/plotcurv.h Examining data/ngspice-33+ds/src/frontend/plotting/gnuplot.c Examining data/ngspice-33+ds/src/frontend/plotting/agraf.c Examining data/ngspice-33+ds/src/frontend/plotting/pvec.c Examining data/ngspice-33+ds/src/frontend/plotting/plotit.h Examining data/ngspice-33+ds/src/frontend/plotting/plotcurv.c Examining data/ngspice-33+ds/src/frontend/plotting/graphdb.h Examining data/ngspice-33+ds/src/frontend/plotting/plotting.h Examining data/ngspice-33+ds/src/frontend/nutinp.c Examining data/ngspice-33+ds/src/frontend/com_asciiplot.c Examining data/ngspice-33+ds/src/frontend/commands.c Examining data/ngspice-33+ds/src/frontend/ftesopt.c Examining data/ngspice-33+ds/src/frontend/parse.h Examining data/ngspice-33+ds/src/frontend/inventory.c Examining data/ngspice-33+ds/src/frontend/parse.c Examining data/ngspice-33+ds/src/frontend/com_alias.h Examining data/ngspice-33+ds/src/frontend/typesdef.h Examining data/ngspice-33+ds/src/frontend/mw_coms.h Examining data/ngspice-33+ds/src/frontend/com_display.c Examining data/ngspice-33+ds/src/frontend/dimens.h Examining data/ngspice-33+ds/src/frontend/aspice.h Examining data/ngspice-33+ds/src/frontend/inp.c Examining data/ngspice-33+ds/src/frontend/com_help.c Examining data/ngspice-33+ds/src/frontend/com_alias.c Examining data/ngspice-33+ds/src/frontend/spiceif.c Examining data/ngspice-33+ds/src/frontend/runcoms.c Examining data/ngspice-33+ds/src/frontend/quote.c Examining data/ngspice-33+ds/src/frontend/postcoms.c Examining data/ngspice-33+ds/src/frontend/com_set.c Examining data/ngspice-33+ds/src/frontend/com_hardcopy.h Examining data/ngspice-33+ds/src/frontend/diff.h Examining data/ngspice-33+ds/src/frontend/miscvars.h Examining data/ngspice-33+ds/src/frontend/com_unset.c Examining data/ngspice-33+ds/src/frontend/testcommands.c Examining data/ngspice-33+ds/src/frontend/com_dump.c Examining data/ngspice-33+ds/src/frontend/fourier.h Examining data/ngspice-33+ds/src/frontend/nutmegif.h Examining data/ngspice-33+ds/src/frontend/parse-bison.h Examining data/ngspice-33+ds/src/frontend/com_commands.h Examining data/ngspice-33+ds/src/frontend/com_dump.h Examining data/ngspice-33+ds/src/frontend/com_shift.c Examining data/ngspice-33+ds/src/frontend/com_fft.h Examining data/ngspice-33+ds/src/frontend/arg.h Examining data/ngspice-33+ds/src/frontend/variable.c Examining data/ngspice-33+ds/src/frontend/variable.h Examining data/ngspice-33+ds/src/frontend/cpitf.h Examining data/ngspice-33+ds/src/frontend/linear.h Examining data/ngspice-33+ds/src/frontend/linear.c Examining data/ngspice-33+ds/src/frontend/nutinp.h Examining data/ngspice-33+ds/src/frontend/postsc.h Examining data/ngspice-33+ds/src/frontend/measure.c Examining data/ngspice-33+ds/src/frontend/shyu.c Examining data/ngspice-33+ds/src/frontend/streams.h Examining data/ngspice-33+ds/src/frontend/postcoms.h Examining data/ngspice-33+ds/src/frontend/dvec.c Examining data/ngspice-33+ds/src/frontend/aspice.c Examining data/ngspice-33+ds/src/frontend/com_rehash.h Examining data/ngspice-33+ds/src/frontend/trannoise/FastNorm3.c Examining data/ngspice-33+ds/src/frontend/trannoise/1-f-code.c Examining data/ngspice-33+ds/src/frontend/trannoise/wallace.c Examining data/ngspice-33+ds/src/frontend/points.h Examining data/ngspice-33+ds/src/frontend/display.c Examining data/ngspice-33+ds/src/frontend/interp.h Examining data/ngspice-33+ds/src/frontend/spec.h Examining data/ngspice-33+ds/src/frontend/init.c Examining data/ngspice-33+ds/src/frontend/dimens.c Examining data/ngspice-33+ds/src/frontend/get_resident_set_size.c Examining data/ngspice-33+ds/src/frontend/circuits.c Examining data/ngspice-33+ds/src/frontend/com_ahelp.c Examining data/ngspice-33+ds/src/frontend/com_hardcopy.c Examining data/ngspice-33+ds/src/frontend/dotcards.h Examining data/ngspice-33+ds/src/frontend/control.c Examining data/ngspice-33+ds/src/frontend/com_setscale.c Examining data/ngspice-33+ds/src/frontend/cpitf.c Examining data/ngspice-33+ds/src/frontend/com_compose.c Examining data/ngspice-33+ds/src/frontend/hcomp.h Examining data/ngspice-33+ds/src/frontend/hpgl.c Examining data/ngspice-33+ds/src/frontend/inp.h Examining data/ngspice-33+ds/src/frontend/interp.c Examining data/ngspice-33+ds/src/frontend/com_shell.h Examining data/ngspice-33+ds/src/frontend/com_plot.c Examining data/ngspice-33+ds/src/frontend/com_ghelp.h Examining data/ngspice-33+ds/src/frontend/hpgl.h Examining data/ngspice-33+ds/src/frontend/com_asciiplot.h Examining data/ngspice-33+ds/src/frontend/com_option.h Examining data/ngspice-33+ds/src/frontend/quote.h Examining data/ngspice-33+ds/src/frontend/parse-bison-y.h Examining data/ngspice-33+ds/src/frontend/com_gnuplot.h Examining data/ngspice-33+ds/src/frontend/com_let.c Examining data/ngspice-33+ds/src/frontend/hcomp.c Examining data/ngspice-33+ds/src/frontend/typesdef.c Examining data/ngspice-33+ds/src/frontend/init.h Examining data/ngspice-33+ds/src/frontend/diff.c Examining data/ngspice-33+ds/src/frontend/com_ghelp.c Examining data/ngspice-33+ds/src/frontend/where.h Examining data/ngspice-33+ds/src/frontend/newcoms.h Examining data/ngspice-33+ds/src/frontend/com_chdir.c Examining data/ngspice-33+ds/src/frontend/com_compose.h Examining data/ngspice-33+ds/src/frontend/com_sysinfo.c Examining data/ngspice-33+ds/src/frontend/com_history.h Examining data/ngspice-33+ds/src/frontend/com_plot.h Examining data/ngspice-33+ds/src/frontend/fourier.c Examining data/ngspice-33+ds/src/frontend/streams.c Examining data/ngspice-33+ds/src/frontend/com_shell.c Examining data/ngspice-33+ds/src/frontend/help/help.c Examining data/ngspice-33+ds/src/frontend/help/readhelp.c Examining data/ngspice-33+ds/src/frontend/help/textdisp.c Examining data/ngspice-33+ds/src/frontend/help/provide.c Examining data/ngspice-33+ds/src/frontend/help/xdisplay.c Examining data/ngspice-33+ds/src/frontend/help/x11disp.c Examining data/ngspice-33+ds/src/frontend/options.c Examining data/ngspice-33+ds/src/frontend/com_state.h Examining data/ngspice-33+ds/src/frontend/runcoms2.c Examining data/ngspice-33+ds/src/frontend/device.c Examining data/ngspice-33+ds/src/frontend/com_option.c Examining data/ngspice-33+ds/src/frontend/runcoms2.h Examining data/ngspice-33+ds/src/frontend/outitf.c Examining data/ngspice-33+ds/src/frontend/gens.c Examining data/ngspice-33+ds/src/frontend/inpcom.c Examining data/ngspice-33+ds/src/ngmultidec.c Examining data/ngspice-33+ds/src/makeidx.c Examining data/ngspice-33+ds/src/conf.c Examining data/ngspice-33+ds/src/ngnutmeg.c Examining data/ngspice-33+ds/src/ngsconvert.c Examining data/ngspice-33+ds/src/hist_info.h Examining data/ngspice-33+ds/src/unsupported/sen2setp.c Examining data/ngspice-33+ds/src/unsupported/sen2dest.c Examining data/ngspice-33+ds/src/unsupported/cktsndct.c Examining data/ngspice-33+ds/src/unsupported/cktsenup.c Examining data/ngspice-33+ds/src/unsupported/cktsncom.c Examining data/ngspice-33+ds/src/unsupported/spiced.c Examining data/ngspice-33+ds/src/unsupported/cktsenac.c Examining data/ngspice-33+ds/src/unsupported/cktsnld.c Examining data/ngspice-33+ds/src/unsupported/cktsnset.c Examining data/ngspice-33+ds/src/unsupported/snstart.c Examining data/ngspice-33+ds/src/unsupported/snaskq.c Examining data/ngspice-33+ds/src/unsupported/cktsnprt.c Examining data/ngspice-33+ds/src/main.c Examining data/ngspice-33+ds/src/misc/misc_time.h Examining data/ngspice-33+ds/src/misc/util.c Examining data/ngspice-33+ds/src/misc/mktemp.h Examining data/ngspice-33+ds/src/misc/ivars.h Examining data/ngspice-33+ds/src/misc/hash.c Examining data/ngspice-33+ds/src/misc/misc_time.c Examining data/ngspice-33+ds/src/misc/util.h Examining data/ngspice-33+ds/src/misc/wlist.c Examining data/ngspice-33+ds/src/misc/printnum.h Examining data/ngspice-33+ds/src/misc/ivars.c Examining data/ngspice-33+ds/src/misc/alloc.h Examining data/ngspice-33+ds/src/misc/dup2.c Examining data/ngspice-33+ds/src/misc/printnum.c Examining data/ngspice-33+ds/src/misc/tilde.h Examining data/ngspice-33+ds/src/misc/dstring.c Examining data/ngspice-33+ds/src/misc/mktemp.c Examining data/ngspice-33+ds/src/misc/tilde.c Examining data/ngspice-33+ds/src/misc/alloc.c Examining data/ngspice-33+ds/src/misc/string.c Examining data/ngspice-33+ds/src/misc/getopt_bsd.h Examining data/ngspice-33+ds/src/misc/dup2.h Examining data/ngspice-33+ds/src/misc/getopt_long_bsd.c Examining data/ngspice-33+ds/tests/bsim3soipd/lib.h Examining data/ngspice-33+ds/tests/bsim3soidd/lib.h Examining data/ngspice-33+ds/tests/bsim3soifd/lib.h Examining data/ngspice-33+ds/debian/tests/test-link.c FINAL RESULTS: data/ngspice-33+ds/src/frontend/help/readhelp.c:387:19: [5] (race) readlink: This accepts filename arguments; if an attacker can move those files or change the link content, a race condition results. Also, it does not terminate with ASCII NUL. (CWE-362, CWE-20). Reconsider approach. nt = top->readlink; data/ngspice-33+ds/src/frontend/outitf.c:289:21: [5] (buffer) strncat: Easily used incorrectly (e.g., incorrectly computing the correct maximum size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf, or automatically resizing strings. Risk is high; the length parameter appears to be a constant, instead of computing the number of characters left. strncat(tmpname, dataNames[i], BSIZE_SP-1); data/ngspice-33+ds/src/include/ngspice/hlpdefs.h:59:19: [5] (race) readlink: This accepts filename arguments; if an attacker can move those files or change the link content, a race condition results. Also, it does not terminate with ASCII NUL. (CWE-362, CWE-20). Reconsider approach. struct topic *readlink; data/ngspice-33+ds/src/include/ngspice/wstdio.h:72:9: [5] (buffer) gets: Does not check for buffer overflows (CWE-120, CWE-20). Use fgets() instead. #define gets win_x_gets data/ngspice-33+ds/contrib/mslib/inc_inp.c:77:7: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(which->name, smlp); data/ngspice-33+ds/contrib/mslib/inc_inp.c:193:7: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if (sscanf(tbuf, "*LIB %s", firstname) == 1) data/ngspice-33+ds/contrib/mslib/inc_inp.c:195:7: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if (sscanf(tbuf, "*SUB %s", firstname) == 1) data/ngspice-33+ds/contrib/mslib/inc_inp.c:197:7: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if (sscanf(tbuf, "*MOD %s", firstname) == 1) data/ngspice-33+ds/contrib/mslib/inc_inp.c:208:7: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if (sscanf(tbuf, ".SUBCKT %s %*s", name) == 1) data/ngspice-33+ds/contrib/mslib/inc_inp.c:210:7: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if (sscanf(tbuf, ".MODEL %s %*s", name) == 1) data/ngspice-33+ds/contrib/mslib/inc_inp.c:214:7: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if (sscanf(tbuf, "+%s", name) == 1) data/ngspice-33+ds/contrib/mslib/inc_main.c:40:4: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(tmplib->name, argv[--argc]); data/ngspice-33+ds/contrib/mslib/inc_main.c:41:4: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(tch, tmplib->name); data/ngspice-33+ds/contrib/mslib/inc_main.c:44:4: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(deck->name, argv[--argc]); data/ngspice-33+ds/contrib/mslib/inc_main.c:47:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(tmplib->name, "%s%s", deck->name, TMPLIBNAME); data/ngspice-33+ds/contrib/mslib/inc_main.c:48:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(tch, tmplib->name); data/ngspice-33+ds/contrib/mslib/inc_main.c:66:4: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(deck->name, "%s%s", DECKPATH, argv[1]); data/ngspice-33+ds/contrib/mslib/inc_main.c:67:4: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(tmplib->name, "%s%s", DECKPATH, tch); data/ngspice-33+ds/contrib/mslib/inc_main.c:113:6: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(tch, libp->name); data/ngspice-33+ds/contrib/mslib/inc_main.c:114:6: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(libp->name, "%s%s", LIBPATH, tch); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:347:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Device", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:350:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Elements", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:353:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Nodes", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:356:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Edges", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:377:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Equil Orig NZ", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:380:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Equil Fill NZ", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:383:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Equil Tot NZ", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:386:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Equil Vectors", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:390:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Bias Orig NZ", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:393:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Bias Fill NZ", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:396:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Bias Tot NZ", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:399:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "Bias Vectors", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:404:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, memFormat, "State Vector", size, memory); data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:428:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Setup Time", data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:439:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Load Time", data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:450:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Order Time", data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:461:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Factor Time", data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:472:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Solve Time", data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:483:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Update Time", data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:494:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Check Time", data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:505:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Misc Time", data/ngspice-33+ds/src/ciderlib/oned/oneprint.c:520:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Total Time", data/ngspice-33+ds/src/ciderlib/support/globals.c:144:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, tabformat, "Vt", values->Vt, "V" ); data/ngspice-33+ds/src/ciderlib/support/globals.c:145:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, newformat, "RefPsi", values->RefPsi * values->VNorm, "V" ); data/ngspice-33+ds/src/ciderlib/support/globals.c:147:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, newformat, "EpsNorm", values->EpsNorm, "F/cm" ); data/ngspice-33+ds/src/ciderlib/support/globals.c:148:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, newformat, "VNorm", values->VNorm, "V" ); data/ngspice-33+ds/src/ciderlib/support/globals.c:149:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, newformat, "NNorm", values->NNorm, "/cm^3" ); data/ngspice-33+ds/src/ciderlib/support/globals.c:150:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, newformat, "LNorm", values->LNorm, "cm" ); data/ngspice-33+ds/src/ciderlib/support/globals.c:151:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, newformat, "TNorm", values->TNorm, "s" ); data/ngspice-33+ds/src/ciderlib/support/globals.c:152:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, newformat, "JNorm", values->JNorm, "A/cm^2" ); data/ngspice-33+ds/src/ciderlib/support/globals.c:153:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, newformat, "GNorm", values->GNorm, "A/V" ); data/ngspice-33+ds/src/ciderlib/support/globals.c:154:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, newformat, "ENorm", values->ENorm, "V/cm" ); data/ngspice-33+ds/src/ciderlib/support/mater.c:320:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Eps", info->eps, "F/cm"); data/ngspice-33+ds/src/ciderlib/support/mater.c:321:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Affin", info->affin, "eV"); data/ngspice-33+ds/src/ciderlib/support/mater.c:322:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Egap", info->eg0, "eV"); data/ngspice-33+ds/src/ciderlib/support/mater.c:323:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "PsiB", -info->refPsi * VNorm, "V"); data/ngspice-33+ds/src/ciderlib/support/mater.c:327:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Eps", info->eps, "F/cm"); data/ngspice-33+ds/src/ciderlib/support/mater.c:328:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Affin", info->affin, "eV"); data/ngspice-33+ds/src/ciderlib/support/mater.c:329:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Vt", Vt, "V"); data/ngspice-33+ds/src/ciderlib/support/mater.c:330:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Ni", info->ni0, "/cm^3"); data/ngspice-33+ds/src/ciderlib/support/mater.c:331:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Nc", info->nc0, "/cm^3"); data/ngspice-33+ds/src/ciderlib/support/mater.c:332:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Nv", info->nv0, "/cm^3"); data/ngspice-33+ds/src/ciderlib/support/mater.c:333:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "MnSi", info->mass[ELEC], "*m0 kg"); data/ngspice-33+ds/src/ciderlib/support/mater.c:334:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "MpSi", info->mass[HOLE], "*m0 kg"); data/ngspice-33+ds/src/ciderlib/support/mater.c:335:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Egap", info->eg0, "eV"); data/ngspice-33+ds/src/ciderlib/support/mater.c:336:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "PsiB", -info->refPsi * VNorm, "V"); data/ngspice-33+ds/src/ciderlib/support/mater.c:337:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "dEg/dT", info->dEgDt, "eV"); data/ngspice-33+ds/src/ciderlib/support/mater.c:338:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Tref", info->trefBGN, "deg K"); data/ngspice-33+ds/src/ciderlib/support/mater.c:339:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "dEg/dN", info->dEgDn[ELEC], "eV"); data/ngspice-33+ds/src/ciderlib/support/mater.c:340:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Nref", info->nrefBGN[ELEC], "/cm^3"); data/ngspice-33+ds/src/ciderlib/support/mater.c:341:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "dEg/dP", info->dEgDn[HOLE], "eV"); data/ngspice-33+ds/src/ciderlib/support/mater.c:342:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Pref", info->nrefBGN[HOLE], "/cm^3"); data/ngspice-33+ds/src/ciderlib/support/mater.c:343:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Edon", info->eDon * VNorm, "eV"); data/ngspice-33+ds/src/ciderlib/support/mater.c:344:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Eacc", info->eAcc * VNorm, "eV"); data/ngspice-33+ds/src/ciderlib/support/mater.c:345:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Gdon", info->gDon, ""); data/ngspice-33+ds/src/ciderlib/support/mater.c:346:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Gacc", info->gAcc, ""); data/ngspice-33+ds/src/ciderlib/support/mater.c:348:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Tn0", info->tau0[ELEC] * TNorm, "s"); data/ngspice-33+ds/src/ciderlib/support/mater.c:349:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Tp0", info->tau0[HOLE] * TNorm, "s"); data/ngspice-33+ds/src/ciderlib/support/mater.c:350:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "CnAug", data/ngspice-33+ds/src/ciderlib/support/mater.c:352:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "CpAug", data/ngspice-33+ds/src/ciderlib/support/mater.c:354:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Aiin", info->aii[ELEC] / LNorm, "/cm"); data/ngspice-33+ds/src/ciderlib/support/mater.c:355:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Aiip", info->aii[HOLE] / LNorm, "/cm"); data/ngspice-33+ds/src/ciderlib/support/mater.c:356:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Biin", info->bii[ELEC] * ENorm, "V/cm"); data/ngspice-33+ds/src/ciderlib/support/mater.c:357:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Biip", info->bii[HOLE] * ENorm, "V/cm"); data/ngspice-33+ds/src/ciderlib/support/mater.c:359:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Arichn", info->aRich[ELEC], "A/cm^2/oK^2"); data/ngspice-33+ds/src/ciderlib/support/mater.c:360:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Arichp", info->aRich[HOLE], "A/cm^2/oK^2"); data/ngspice-33+ds/src/ciderlib/support/mater.c:361:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Vrichn", info->vRich[ELEC] * ENorm, "cm/s"); data/ngspice-33+ds/src/ciderlib/support/mater.c:362:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Vrichp", info->vRich[HOLE] * ENorm, "cm/s"); data/ngspice-33+ds/src/ciderlib/support/mater.c:364:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "MunMax", data/ngspice-33+ds/src/ciderlib/support/mater.c:366:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "MupMax", data/ngspice-33+ds/src/ciderlib/support/mater.c:368:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "MunMin", data/ngspice-33+ds/src/ciderlib/support/mater.c:370:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "MupMin", data/ngspice-33+ds/src/ciderlib/support/mater.c:373:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "MunMax", data/ngspice-33+ds/src/ciderlib/support/mater.c:375:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "MupMax", data/ngspice-33+ds/src/ciderlib/support/mater.c:377:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "MunMin", data/ngspice-33+ds/src/ciderlib/support/mater.c:379:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "MupMin", data/ngspice-33+ds/src/ciderlib/support/mater.c:382:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "Muns", info->mus[ELEC], "cm^2/V-s"); data/ngspice-33+ds/src/ciderlib/support/mater.c:383:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "Mups", info->mus[HOLE], "cm^2/V-s"); data/ngspice-33+ds/src/ciderlib/support/mater.c:384:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "ThetaAN", info->thetaA[ELEC] / ENorm, "cm/V"); data/ngspice-33+ds/src/ciderlib/support/mater.c:385:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "ThetaAP", info->thetaA[HOLE] / ENorm, "cm/V"); data/ngspice-33+ds/src/ciderlib/support/mater.c:386:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "ThetaBN", data/ngspice-33+ds/src/ciderlib/support/mater.c:388:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "ThetaBP", data/ngspice-33+ds/src/ciderlib/support/mater.c:391:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "VsatN", info->vSat[ELEC] * ENorm, "cm/s"); data/ngspice-33+ds/src/ciderlib/support/mater.c:392:5: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "VsatP", info->vSat[HOLE] * ENorm, "cm/s"); data/ngspice-33+ds/src/ciderlib/support/mater.c:394:7: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, tabformat, "VwarmN", info->vWarm[ELEC] * ENorm, "cm/s"); data/ngspice-33+ds/src/ciderlib/support/mater.c:395:7: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stdout, newformat, "VwarmP", info->vWarm[HOLE] * ENorm, "cm/s"); data/ngspice-33+ds/src/ciderlib/support/suprmitf.c:314:13: [4] (buffer) fscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if (fscanf(fpSuprem, "%s\n %d %e %d %d %e\n", data/ngspice-33+ds/src/ciderlib/support/suprmitf.c:333:13: [4] (buffer) fscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if (fscanf( fpSuprem, "%s\n %d\n", cdata, &impTyp[i]) != 2) { data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:362:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Device", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:365:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Elements", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:368:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Nodes", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:371:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Edges", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:401:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Equil Orig NZ", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:404:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Equil Fill NZ", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:407:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Equil Tot NZ", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:410:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Equil Vectors", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:414:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Bias Orig NZ", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:417:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Bias Fill NZ", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:420:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Bias Tot NZ", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:423:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "Bias Vectors", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:428:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf( file, memFormat, "State Vector", size, memory ); data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:452:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Setup Time", data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:463:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Load Time", data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:474:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Order Time", data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:485:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Factor Time", data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:496:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Solve Time", data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:507:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Update Time", data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:518:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Check Time", data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:529:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Misc Time", data/ngspice-33+ds/src/ciderlib/twod/twoprint.c:544:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(file, cpuFormat, "Total Time", data/ngspice-33+ds/src/frontend/arg.c:39:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p, buf); data/ngspice-33+ds/src/frontend/aspice.c:88:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(spicepath, Spice_Path); data/ngspice-33+ds/src/frontend/aspice.c:126:16: [4] (shell) execl: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. (void) execl(spicepath, spicepath, "-r", raw, NULL); data/ngspice-33+ds/src/frontend/aspice.c:286:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(rhost, Spice_Host); data/ngspice-33+ds/src/frontend/aspice.c:331:9: [4] (shell) execlp: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. execlp(remote_shell, remote_shell, rhost, program, "-s", NULL); data/ngspice-33+ds/src/frontend/com_hardcopy.c:189:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(format, SYSTEM_PLOT5LPR); data/ngspice-33+ds/src/frontend/com_hardcopy.c:190:20: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. (void) sprintf(buf, format, device, fname); data/ngspice-33+ds/src/frontend/com_hardcopy.c:191:17: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. if (system(buf) == -1) { data/ngspice-33+ds/src/frontend/com_hardcopy.c:206:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(format, SYSTEM_PSLPR); data/ngspice-33+ds/src/frontend/com_hardcopy.c:207:20: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. (void) sprintf(buf, format, device, fname); data/ngspice-33+ds/src/frontend/com_hardcopy.c:208:17: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. if (system(buf) == -1) { data/ngspice-33+ds/src/frontend/com_history.c:129:20: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, string + 1); data/ngspice-33+ds/src/frontend/com_history.c:152:24: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, string); data/ngspice-33+ds/src/frontend/com_measure2.c:1205:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(errbuf, "bad syntax, cannot evaluate right hand side of %s=%s\n", pName, pValue); data/ngspice-33+ds/src/frontend/com_measure2.c:1233:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(errbuf, "no such parameter as '%s'\n", pName); data/ngspice-33+ds/src/frontend/com_measure2.c:1243:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(errbuf, "bad syntax of %s\n", pName); data/ngspice-33+ds/src/frontend/com_measure2.c:1251:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(errbuf, "no such vector as '%s'\n", meas->m_vec); data/ngspice-33+ds/src/frontend/com_measure2.c:1258:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(errbuf, "no such vector as '%s'\n", meas->m_vec2); data/ngspice-33+ds/src/frontend/com_measure2.c:1478:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(errbuf, "bad syntax of '%s'\n", trigTarg); data/ngspice-33+ds/src/frontend/com_measure2.c:1484:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(errbuf, "no such vector as '%s'\n", meas->m_vec); data/ngspice-33+ds/src/frontend/com_measure2.c:1682:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(out_line, "%-20s= %e targ= %e trig= %e\n", mName, (measTarg->m_measured - measTrig->m_measured), measTarg->m_measured, measTrig->m_measured); data/ngspice-33+ds/src/frontend/com_measure2.c:1754:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(out_line, "%-20s= %e\n", mName, meas->m_measured); data/ngspice-33+ds/src/frontend/com_measure2.c:1792:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(out_line, "%-20s= %.*e\n", mName, precision, meas->m_measured); data/ngspice-33+ds/src/frontend/com_measure2.c:1836:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(out_line, "%-20s= %.*e from= %.*e to= %.*e\n", mName, precision, meas->m_measured, precision, meas->m_from, precision, meas->m_to); data/ngspice-33+ds/src/frontend/com_measure2.c:1880:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(out_line, "%-20s= %e from= %e to= %e\n", mName, meas->m_measured, meas->m_at, meas->m_measured_at); data/ngspice-33+ds/src/frontend/com_measure2.c:1926:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(out_line, "%-20s= %e at= %e\n", mName, measTrig->m_measured, measTrig->m_measured_at); data/ngspice-33+ds/src/frontend/com_measure2.c:1934:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(out_line, "%-20s= %e with= %e\n", mName, measTrig->m_measured_at, measTrig->m_measured); data/ngspice-33+ds/src/frontend/com_measure2.c:1983:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(out_line, "%-20s= %e from= %e to= %e\n", mName, (maxValue - minValue), measTrig->m_from, measTrig->m_to); data/ngspice-33+ds/src/frontend/com_shell.c:40:13: [4] (shell) execl: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. execl(shell, shell, 0); data/ngspice-33+ds/src/frontend/com_shell.c:44:13: [4] (shell) execl: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. execl("/bin/sh", "sh", "-c", com, 0); data/ngspice-33+ds/src/frontend/com_shell.c:64:13: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. if (system(com) == -1) { data/ngspice-33+ds/src/frontend/com_shell.c:70:13: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. if (system(shell) == -1) { data/ngspice-33+ds/src/frontend/cpitf.c:172:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, s); data/ngspice-33+ds/src/frontend/cpitf.c:179:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s ! -> ", cp_program); data/ngspice-33+ds/src/frontend/cpitf.c:258:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "sourcepath = ( %s %s %s )", DIR_CWD, Lib_Path, Inp_Path); data/ngspice-33+ds/src/frontend/cpitf.c:260:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "sourcepath = ( %s %s )", DIR_CWD, Lib_Path); data/ngspice-33+ds/src/frontend/cpitf.c:279:20: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(r, DIR_PATHSEP); data/ngspice-33+ds/src/frontend/cpitf.c:427:22: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. p_dst += sprintf(p_dst, header, wl_length(wl)); data/ngspice-33+ds/src/frontend/define.c:64:16: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). (void) strcat(buf, wl->wl_word); data/ngspice-33+ds/src/frontend/define.c:90:12: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(tbuf, buf); data/ngspice-33+ds/src/frontend/display.c:146:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(ErrorMessage, "Can't find device %s.", name); data/ngspice-33+ds/src/frontend/display.c:378:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(ErrorMessage, data/ngspice-33+ds/src/frontend/display.c:399:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(keyed->text, text); data/ngspice-33+ds/src/frontend/dotcards.c:500:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "v(%s)", string + 2); data/ngspice-33+ds/src/frontend/dotcards.c:502:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "-v(%s)", s); data/ngspice-33+ds/src/frontend/dotcards.c:504:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "v(%s)-v(%s)", string + 2, s); data/ngspice-33+ds/src/frontend/dotcards.c:513:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "mag(v(%s))", string + 3); data/ngspice-33+ds/src/frontend/dotcards.c:515:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "mag(-v(%s))", s); data/ngspice-33+ds/src/frontend/dotcards.c:517:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "mag(v(%s)-v(%s))", string + 3, s); data/ngspice-33+ds/src/frontend/dotcards.c:526:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "ph(v(%s))", string + 3); data/ngspice-33+ds/src/frontend/dotcards.c:528:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "ph(-v(%s))", s); data/ngspice-33+ds/src/frontend/dotcards.c:530:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "ph(v(%s)-v(%s))", string + 3, s); data/ngspice-33+ds/src/frontend/dotcards.c:539:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "imag(v(%s))", string + 3); data/ngspice-33+ds/src/frontend/dotcards.c:541:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "imag(-v(%s))", s); data/ngspice-33+ds/src/frontend/dotcards.c:543:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "imag(v(%s)-v(%s))", string + 3, s); data/ngspice-33+ds/src/frontend/dotcards.c:552:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "real(v(%s))", string + 3); data/ngspice-33+ds/src/frontend/dotcards.c:554:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "real(-v(%s))", s); data/ngspice-33+ds/src/frontend/dotcards.c:556:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "real(v(%s)-v(%s))", string + 3, s); data/ngspice-33+ds/src/frontend/dotcards.c:565:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "db(v(%s))", string + 4); data/ngspice-33+ds/src/frontend/dotcards.c:567:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "db(-v(%s))", s); data/ngspice-33+ds/src/frontend/dotcards.c:569:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "db(v(%s)-v(%s))", string + 4, s); data/ngspice-33+ds/src/frontend/dotcards.c:575:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s#branch", string); data/ngspice-33+ds/src/frontend/dotcards.c:636:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "%s#branch", l + 1); data/ngspice-33+ds/src/frontend/help/help.c:120:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(buf, hlp_directory); /* set up pathname */ data/ngspice-33+ds/src/frontend/help/help.c:121:5: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(buf, DIR_PATHSEP); data/ngspice-33+ds/src/frontend/help/help.c:122:5: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(buf, filename); data/ngspice-33+ds/src/frontend/help/help.c:130:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(hlp_ftable[hlp_ftablesize].filename, filename); data/ngspice-33+ds/src/frontend/help/help.c:158:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(buf, s); data/ngspice-33+ds/src/frontend/help/help.c:169:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(buf, s); data/ngspice-33+ds/src/frontend/help/readhelp.c:287:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "%s%s%s.idx", hlp_directory, DIR_PATHSEP, filename); data/ngspice-33+ds/src/frontend/help/x11disp.c:326:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(tmpp, "%s\n", tmp); data/ngspice-33+ds/src/frontend/inp.c:123:9: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. vfprintf(fdst, fmt, ap); data/ngspice-33+ds/src/frontend/inp.c:1563:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "%s %s", editor, filename); data/ngspice-33+ds/src/frontend/inp.c:1564:13: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. return (system(buf) ? FALSE : TRUE); data/ngspice-33+ds/src/frontend/inpcom.c:856:21: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(buffer, ipc_buffer); data/ngspice-33+ds/src/frontend/inpcom.c:3464:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(collect_ptr + collect_ptr_len, "%.*s(%s)", prefix_len, data/ngspice-33+ds/src/frontend/inpcom.c:3470:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(collect_ptr + collect_ptr_len, "%.*s%s", prefix_len, data/ngspice-33+ds/src/frontend/inpcom.c:3609:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(curr_str + curr_str_len, "%s(%s)", str, macro_str); data/ngspice-33+ds/src/frontend/inpcom.c:3628:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(curr_str + curr_str_len, "%s", str); data/ngspice-33+ds/src/frontend/inpcom.c:3843:32: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buffer, "%s", natok); data/ngspice-33+ds/src/frontend/inpcom.c:3852:36: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buffer, "%s", natok); data/ngspice-33+ds/src/frontend/inpcom.c:3856:36: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buffer, "<%s}", natok); data/ngspice-33+ds/src/frontend/inpcom.c:3863:36: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buffer, "%s", natok); data/ngspice-33+ds/src/frontend/inpcom.c:3868:36: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buffer, "{%s>", natok); data/ngspice-33+ds/src/frontend/inpcom.c:3873:32: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buffer, "{%s}", natok); data/ngspice-33+ds/src/frontend/inpcom.c:3917:32: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buffer, "%s", natok); data/ngspice-33+ds/src/frontend/inpcom.c:3920:32: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buffer, "{%s}", natok); data/ngspice-33+ds/src/frontend/inpcom.c:4815:25: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(xar, firstno); data/ngspice-33+ds/src/frontend/inpcom.c:4817:25: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(yar, secondno); data/ngspice-33+ds/src/frontend/inpcom.c:4993:21: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(xar, firstno); data/ngspice-33+ds/src/frontend/inpcom.c:4995:21: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(yar, secondno); data/ngspice-33+ds/src/frontend/measure.c:494:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(long_str, "%s%s", item, extra_item); data/ngspice-33+ds/src/frontend/misccoms.c:145:12: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. (void) sprintf(buf, SYSTEM_MAIL, ft_sim->simulator, ft_sim->version, Bug_Addr); data/ngspice-33+ds/src/frontend/misccoms.c:146:9: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. if (system(buf) == -1) { data/ngspice-33+ds/src/frontend/numparam/xpressn.c:227:5: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. vfprintf(stderr, fmt, ap); data/ngspice-33+ds/src/frontend/outitf.c:868:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "Title: %s\n", run->name); data/ngspice-33+ds/src/frontend/outitf.c:871:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "Date: %s\n", datestring()); data/ngspice-33+ds/src/frontend/outitf.c:874:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "Plotname: %s\n", run->type); data/ngspice-33+ds/src/frontend/outitf.c:877:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "Flags: %s\n", run->isComplex ? "complex" : "real"); data/ngspice-33+ds/src/frontend/outitf.c:1244:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(buf1, s); data/ngspice-33+ds/src/frontend/outitf.c:1252:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(buf2, s); data/ngspice-33+ds/src/frontend/outitf.c:1357:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(bptr, names[nindex]); data/ngspice-33+ds/src/frontend/outitf.c:1389:5: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. vfprintf(cp_err, format, args); data/ngspice-33+ds/src/frontend/parse-bison.c:729:21: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. # define YYFPRINTF fprintf data/ngspice-33+ds/src/frontend/parse.c:297:12: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, func); data/ngspice-33+ds/src/frontend/parse.c:320:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s(%s)", func, arg->pn_value->v_name); data/ngspice-33+ds/src/frontend/parser/backq.c:53:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, wbuf); data/ngspice-33+ds/src/frontend/parser/backq.c:55:20: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). (void) strcat(buf, nwl->wl_word); data/ngspice-33+ds/src/frontend/parser/backq.c:60:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(tbuf, t); data/ngspice-33+ds/src/frontend/parser/backq.c:66:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, wl->wl_word); data/ngspice-33+ds/src/frontend/parser/backq.c:68:16: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). (void) strcat(buf, tbuf); data/ngspice-33+ds/src/frontend/parser/backq.c:93:12: [4] (shell) popen: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. proc = popen(string, "r"); data/ngspice-33+ds/src/frontend/parser/complete.c:141:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(wbuf, &pmatches->wl_word[i]); data/ngspice-33+ds/src/frontend/parser/glob.c:303:12: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, string); /* make a copy of string */ data/ngspice-33+ds/src/frontend/parser/unixcom.c:114:20: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(pbuf, curpath); data/ngspice-33+ds/src/frontend/parser/unixcom.c:116:20: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). (void) strcat(pbuf, entry->d_name); data/ngspice-33+ds/src/frontend/parser/unixcom.c:172:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s/%s", hh->h_path, hh->h_name); data/ngspice-33+ds/src/frontend/parser/unixcom.c:195:16: [4] (shell) execv: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. (void) execv(name, argv); data/ngspice-33+ds/src/frontend/parser/unixcom.c:261:9: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. if (system(s)) data/ngspice-33+ds/src/frontend/plotting/agraf.c:259:12: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, plot->pl_title); data/ngspice-33+ds/src/frontend/plotting/agraf.c:263:12: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s %s", plot->pl_name, plot->pl_date); data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:369:12: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "start /B wgnuplot -persist %s " , filename_plt); data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:375:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "gnuplot %s", filename_plt); data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:379:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "gnuplot %s", filename_plt); data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:382:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "xterm -e gnuplot %s - &", filename_plt); data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:385:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "gnuplot -p %s - &", filename_plt); data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:388:11: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. err = system(buf); data/ngspice-33+ds/src/frontend/plotting/graf.c:112:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(pointchars, DEFPOINTCHARS); data/ngspice-33+ds/src/frontend/plotting/graf.c:186:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(graph->ticchar, pgraph->ticchar); data/ngspice-33+ds/src/frontend/plotting/graf.c:750:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(commandline, "plot %s", yl); data/ngspice-33+ds/src/frontend/plotting/grid.c:619:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(graph->grid.xaxis.lin.units, buf); data/ngspice-33+ds/src/frontend/plotting/grid.c:632:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(graph->grid.yaxis.lin.units, buf); data/ngspice-33+ds/src/frontend/plotting/grid.c:790:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(graph->grid.xaxis.log.units, buf); data/ngspice-33+ds/src/frontend/plotting/grid.c:799:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(graph->grid.yaxis.log.units, buf); data/ngspice-33+ds/src/frontend/plotting/pvec.c:15:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, " %-20s: %s, %s, %d long", data/ngspice-33+ds/src/frontend/plotting/pvec.c:23:9: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(buf, buf2); data/ngspice-33+ds/src/frontend/plotting/pvec.c:28:9: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(buf, buf2); data/ngspice-33+ds/src/frontend/plotting/pvec.c:75:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf2, ", color = %s", d->v_defcolor); data/ngspice-33+ds/src/frontend/plotting/pvec.c:76:9: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(buf, buf2); data/ngspice-33+ds/src/frontend/plotting/pvec.c:80:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf2, ", scale = %s", d->v_scale->v_name); data/ngspice-33+ds/src/frontend/plotting/pvec.c:81:9: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(buf, buf2); data/ngspice-33+ds/src/frontend/plotting/pvec.c:88:9: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(buf, buf2); data/ngspice-33+ds/src/frontend/plotting/x11.c:264:24: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(colorstring, colornames[i]); data/ngspice-33+ds/src/frontend/plotting/x11.c:301:24: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(ErrorMessage, data/ngspice-33+ds/src/frontend/plotting/x11.c:520:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(fontname, DEF_FONT); data/ngspice-33+ds/src/frontend/plotting/x11.c:534:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(ErrorMessage, "can't open font %s", fontname); data/ngspice-33+ds/src/frontend/plotting/x11.c:1071:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, data/ngspice-33+ds/src/frontend/plotting/x11.c:1076:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s xlimit %e %e ylimit %e %e sgraphid %d\n", data/ngspice-33+ds/src/frontend/postcoms.c:204:24: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s.%s", v->v_plot->pl_typename, basename); data/ngspice-33+ds/src/frontend/postcoms.c:206:24: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, basename); data/ngspice-33+ds/src/frontend/postcoms.c:239:36: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, numbuf); data/ngspice-33+ds/src/frontend/postcoms.c:254:36: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s,%s", numbuf, numbuf2); data/ngspice-33+ds/src/frontend/postcoms.c:324:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s %s", p->pl_name, p->pl_date); data/ngspice-33+ds/src/frontend/postcoms.c:349:20: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). (void) strcat(buf, buf2); data/ngspice-33+ds/src/frontend/postsc.c:509:9: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. sscanf(colorstring, "%s %s %s %s", rgb, &(s_red[2]), &(s_green[2]), &(s_blue[2])); data/ngspice-33+ds/src/frontend/postsc.c:519:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(pscolor, colorstring); data/ngspice-33+ds/src/frontend/postsc.c:527:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(pscolor, colorstring); data/ngspice-33+ds/src/frontend/rawfile.c:31:8: [4] (buffer) fscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. #undef fscanf /* redo I/O from WINMAIN.C here data/ngspice-33+ds/src/frontend/rawfile.c:307:9: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(cp_err, \ data/ngspice-33+ds/src/frontend/shyu.c:47:12: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, ".%s", wl_flatten(args)); data/ngspice-33+ds/src/frontend/spiceif.c:227:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, ".%s", s); data/ngspice-33+ds/src/frontend/spiceif.c:1501:24: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. (void) fprintf(cp_err, \ data/ngspice-33+ds/src/frontend/spiceif.c:1652:13: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(cp_err, #name " is NULL, zero written\n"); \ data/ngspice-33+ds/src/frontend/streams.c:36:9: [4] (race) access: This usually indicates a security flaw. If an attacker can change anything along the path between the call to access() and the file's actual use (e.g., by moving files), the attacker can exploit the race condition (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid()) and try to open the file directly. if (access(name, 0) == 0) { data/ngspice-33+ds/src/frontend/subckt.c:869:15: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. ret = vsnprintf(t->dst, (size_t) size, fmt, ap); data/ngspice-33+ds/src/frontend/terminal.c:374:5: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. vfprintf(cp_out, fmt, ap); data/ngspice-33+ds/src/frontend/variable.c:464:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(val, copyval); data/ngspice-33+ds/src/frontend/variable.c:735:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy((char*) retval, s); data/ngspice-33+ds/src/frontend/vectors.c:405:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s%d", s, plot_num); data/ngspice-33+ds/src/frontend/vectors.c:842:16: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s%d", s, plot_num); data/ngspice-33+ds/src/frontend/vectors.c:1064:20: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, v->v_name + strlen(v->v_name) + 1); data/ngspice-33+ds/src/frontend/vectors.c:1066:20: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, v->v_name); data/ngspice-33+ds/src/frontend/vectors.c:1068:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, v->v_name); data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:39:20: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(colorstring, stdcolornames[i]); data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:137:23: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void)strcpy(colorstring, stdcolornames[i]); data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:192:23: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void)strcpy(colorstring, stdcolornames[i]); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:206:15: [4] (buffer) lstrcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using a function version that stops copying at the end of the buffer. (void)lstrcpy(lf.lfFaceName, DEF_FONTW); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:227:15: [4] (buffer) lstrcpyW: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void)lstrcpyW(lfw.lfFaceName, DEFW_FONTW); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:231:9: [4] (format) swprintf: Potential format string problem (CWE-134). Make format string constant. swprintf(wface, 32, L"%S", facename); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:232:15: [4] (buffer) lstrcpyW: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void)lstrcpyW(lfw.lfFaceName, wface); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:556:20: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. (void) sprintf(buf, data/ngspice-33+ds/src/frontend/wdisp/windisp.c:561:20: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. (void) sprintf(buf, "%s xlimit %e %e ylimit %e %e sgraphid %d\n", data/ngspice-33+ds/src/frontend/wdisp/windisp.c:997:16: [4] (buffer) lstrcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using a function version that stops copying at the end of the buffer. (void) lstrcpy(lf.lfFaceName, DEF_FONTW); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:1024:15: [4] (buffer) lstrcpyW: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void)lstrcpyW(lfw.lfFaceName, DEFW_FONTW); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:1028:9: [4] (format) swprintf: Potential format string problem (CWE-134). Make format string constant. swprintf(wface, 32, L"%S", facename); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:1029:15: [4] (buffer) lstrcpyW: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void)lstrcpyW(lfw.lfFaceName, wface); data/ngspice-33+ds/src/include/ngspice/hash.h:53:10: [4] (race) access: This usually indicates a security flaw. If an attacker can change anything along the path between the call to access() and the file's actual use (e.g., by moving files), the attacker can exploit the race condition (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid()) and try to open the file directly. long access ; /* used for statistics */ data/ngspice-33+ds/src/include/ngspice/macros.h:56:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg, (MESSAGE)); \ data/ngspice-33+ds/src/include/ngspice/macros.h:78:28: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define DEBUGMSG(textargs) printf(textargs) data/ngspice-33+ds/src/include/ngspice/ngspice.h:187:9: [4] (race) access: This usually indicates a security flaw. If an attacker can change anything along the path between the call to access() and the file's actual use (e.g., by moving files), the attacker can exploit the race condition (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid()) and try to open the file directly. #define access _access data/ngspice-33+ds/src/include/ngspice/ngspice.h:195:9: [4] (shell) popen: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. #define popen _popen data/ngspice-33+ds/src/include/ngspice/ngspice.h:289:8: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #undef printf data/ngspice-33+ds/src/include/ngspice/ngspice.h:290:9: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define printf tcl_printf data/ngspice-33+ds/src/include/ngspice/ngspice.h:292:8: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #undef fprintf data/ngspice-33+ds/src/include/ngspice/ngspice.h:293:9: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define fprintf tcl_fprintf data/ngspice-33+ds/src/include/ngspice/ngspice.h:313:8: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #undef vfprintf data/ngspice-33+ds/src/include/ngspice/ngspice.h:314:9: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define vfprintf sh_vfprintf data/ngspice-33+ds/src/include/ngspice/ngspice.h:316:8: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #undef printf data/ngspice-33+ds/src/include/ngspice/ngspice.h:317:9: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define printf sh_printf data/ngspice-33+ds/src/include/ngspice/ngspice.h:319:8: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #undef fprintf data/ngspice-33+ds/src/include/ngspice/ngspice.h:320:9: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define fprintf sh_fprintf data/ngspice-33+ds/src/include/ngspice/wstdio.h:62:9: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define fprintf win_x_fprintf data/ngspice-33+ds/src/include/ngspice/wstdio.h:67:9: [4] (buffer) fscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. #define fscanf win_x_fscanf data/ngspice-33+ds/src/include/ngspice/wstdio.h:74:9: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define printf win_x_printf data/ngspice-33+ds/src/include/ngspice/wstdio.h:76:9: [4] (buffer) scanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. #define scanf win_x_scanf data/ngspice-33+ds/src/include/ngspice/wstdio.h:78:9: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define vfprintf win_x_vfprintf data/ngspice-33+ds/src/include/ngspice/wstdio.h:80:9: [4] (format) vprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define vprintf win_x_vprintf data/ngspice-33+ds/src/main.c:610:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(history_file, getenv("HOME")); data/ngspice-33+ds/src/main.c:612:5: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(history_file, application_name); data/ngspice-33+ds/src/main.c:758:9: [4] (race) access: This usually indicates a security flaw. If an attacker can change anything along the path between the call to access() and the file's actual use (e.g., by moving files), the attacker can exploit the race condition (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid()) and try to open the file directly. if (access(path, R_OK) == 0) { data/ngspice-33+ds/src/main.c:992:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(log_file, "%s", optarg); data/ngspice-33+ds/src/main.c:1028:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(soa_log_file, "%s", optarg); data/ngspice-33+ds/src/makeidx.c:40:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(subject, &buf[9]); data/ngspice-33+ds/src/makeidx.c:64:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(buf, argv[argc]); data/ngspice-33+ds/src/maths/cmaths/cmath1.c:30:23: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #define win_x_fprintf fprintf data/ngspice-33+ds/src/maths/ni/niinteg.c:38:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,ordmsg); data/ngspice-33+ds/src/maths/ni/niinteg.c:74:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,methodmsg); data/ngspice-33+ds/src/misc/dstring.c:278:20: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. const int rc = vsnprintf(p_dst, n_byte_free, sz_fmt, p_arg); data/ngspice-33+ds/src/misc/dstring.c:305:25: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. const int rc2 = vsnprintf(p_dst2, n_byte_free2, sz_fmt, p_arg2); data/ngspice-33+ds/src/misc/getopt_long_bsd.c:122:4: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. vfprintf(stderr, fmt, args); data/ngspice-33+ds/src/misc/misc_time.c:57:12: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). (void) strcat(tbuf, ap + 19); data/ngspice-33+ds/src/misc/string.c:99:18: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. nchars = vsnprintf(p, (size_t) size, fmt, ap); data/ngspice-33+ds/src/misc/tilde.c:58:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(sz_home + n_char_home, string); data/ngspice-33+ds/src/misc/tilde.c:92:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(sz_home + n_char_home, string); data/ngspice-33+ds/src/misc/util.c:65:12: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy (result + start + 1, result + i); data/ngspice-33+ds/src/misc/util.c:90:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(result + i, result + i + 1); data/ngspice-33+ds/src/misc/util.c:100:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(result + start + 1, result + i + 2); data/ngspice-33+ds/src/misc/util.c:133:10: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(result, dot_path); data/ngspice-33+ds/src/misc/util.c:145:7: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(result + result_len, string); data/ngspice-33+ds/src/ngmultidec.c:61:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(name,optarg); data/ngspice-33+ds/src/ngproc2mod.c:64:12: [4] (buffer) scanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if(scanf("%s",filename)!=1) { data/ngspice-33+ds/src/ngproc2mod.c:76:12: [4] (buffer) scanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if(scanf("%s",filename)!=1) { data/ngspice-33+ds/src/ngproc2mod.c:87:8: [4] (buffer) scanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. if(scanf("%s",filename)!=1) { data/ngspice-33+ds/src/ngsconvert.c:72:12: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, date); data/ngspice-33+ds/src/sharedspice.c:602:9: [4] (race) access: This usually indicates a security flaw. If an attacker can change anything along the path between the call to access() and the file's actual use (e.g., by moving files), the attacker can exploit the race condition (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid()) and try to open the file directly. if (access(path, R_OK) == 0) data/ngspice-33+ds/src/sharedspice.c:770:9: [4] (race) access: This usually indicates a security flaw. If an attacker can change anything along the path between the call to access() and the file's actual use (e.g., by moving files), the attacker can exploit the race condition (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid()) and try to open the file directly. if (access(".spiceinit", 0) == 0) { data/ngspice-33+ds/src/sharedspice.c:779:13: [4] (race) access: This usually indicates a security flaw. If an attacker can change anything along the path between the call to access() and the file's actual use (e.g., by moving files), the attacker can exploit the race condition (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid()) and try to open the file directly. if (access(s, 0) == 0) data/ngspice-33+ds/src/sharedspice.c:908:12: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stderr, no_init); data/ngspice-33+ds/src/sharedspice.c:926:9: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stderr, no_init); data/ngspice-33+ds/src/sharedspice.c:1159:8: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. #undef vfprintf data/ngspice-33+ds/src/sharedspice.c:1184:16: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. return vfprintf(f, fmt, args); data/ngspice-33+ds/src/sharedspice.c:1196:18: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. nchars = vsnprintf(p, size, fmt, ap); data/ngspice-33+ds/src/sharedspice.c:1234:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p, buf); data/ngspice-33+ds/src/sharedspice.c:1359:13: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(outstringerr, input); data/ngspice-33+ds/src/sharedspice.c:1392:13: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(outstringout, input); data/ngspice-33+ds/src/sharedspice.c:1465:13: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(outstringerr, input); data/ngspice-33+ds/src/sharedspice.c:1501:13: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(outstringout, input); data/ngspice-33+ds/src/sharedspice.c:1661:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(OldAn, OldAn1); data/ngspice-33+ds/src/sharedspice.c:1662:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(olds, olds1); data/ngspice-33+ds/src/sharedspice.c:1671:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(OldAn, OldAn2); data/ngspice-33+ds/src/sharedspice.c:1672:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(olds, olds2); data/ngspice-33+ds/src/sharedspice.c:1733:10: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf( s, "%s", Analyse); data/ngspice-33+ds/src/sharedspice.c:1736:10: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf( s, "%s: %d", Analyse, DecaPercent); data/ngspice-33+ds/src/sharedspice.c:1739:10: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf( s, "%s: %3.1f%%", Analyse, (double)DecaPercent/10.); data/ngspice-33+ds/src/sharedspice.c:1766:11: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(olds1, s); data/ngspice-33+ds/src/sharedspice.c:1768:11: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(olds2, s); data/ngspice-33+ds/src/sharedspice.c:1879:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(type_name, pl->pl_typename); data/ngspice-33+ds/src/spicelib/analysis/cktsens.c:171:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(namebuf, "%s:%s", data/ngspice-33+ds/src/spicelib/analysis/cktsens.c:177:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(namebuf, "%s", sg->instance->GENname); data/ngspice-33+ds/src/spicelib/analysis/cktsens.c:179:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(namebuf, "%s_%s", data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:35:8: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(msg_buf, "%s: %s; ", an->if_analysis.name, optmsg); data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:37:8: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(msg_buf, "%s: ", an->if_analysis.name); data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:63:3: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(msg_p, " %s = %g: ", cv->TRCVvName[i], data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:66:3: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(msg_p, " %s = %g: ", cv->TRCVvName[i], data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:80:2: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(msg_p, "trouble with node \"%s\"\n", data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:84:2: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(msg_p, "trouble with %s-instance %s\n", data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:92:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(emsg,msg_buf); data/ngspice-33+ds/src/spicelib/analysis/cluster.c:143:2: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(curr->local,CKTnodName(ckt,isrc->ISRCnegNode));/*weird*/ data/ngspice-33+ds/src/spicelib/analysis/cluster.c:144:2: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(curr->remote,isrc->ISRCname); data/ngspice-33+ds/src/spicelib/analysis/cluster.c:149:2: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. sprintf(hostname,"n%d."DOMAIN_NAME,nodeNum); data/ngspice-33+ds/src/spicelib/analysis/distoan.c:424:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,nof2src); data/ngspice-33+ds/src/spicelib/devices/bjt/bjtask.c:246:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/bjt/bjtask.c:264:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/bjt/bjtask.c:283:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/bjt/bjtsprt.c:46:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->BJTareaGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/cap/capask.c:67:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/cap/capask.c:86:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/cap/capsprt.c:43:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->CAPcapGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/cccs/cccsask.c:55:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/cccs/cccsask.c:70:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsask.c:53:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsask.c:67:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/cpl/cplsetup.c:518:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,message); data/ngspice-33+ds/src/spicelib/devices/cpl/cplsetup.c:1855:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p->id, name); data/ngspice-33+ds/src/spicelib/devices/csw/cswask.c:42:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg, msg); data/ngspice-33+ds/src/spicelib/devices/csw/cswask.c:55:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg, msg); data/ngspice-33+ds/src/spicelib/devices/dev.c:316:3: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(libname,name); data/ngspice-33+ds/src/spicelib/devices/dev.c:327:3: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(libname,name); data/ngspice-33+ds/src/spicelib/devices/dev.c:539:16: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. (void) sprintf(errstr, errstr_fmt, (unsigned long) GetLastError()); data/ngspice-33+ds/src/spicelib/devices/devsup.c:843:5: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. vfprintf(fp, fmt, ap); data/ngspice-33+ds/src/spicelib/devices/dio/dioask.c:80:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/dio/diosprt.c:42:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->DIOareaGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetask.c:122:18: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetask.c:134:18: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2ask.c:120:18: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2ask.c:132:18: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/ind/indask.c:64:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/ind/indask.c:74:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/ind/inddefs.h:71:23: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. struct INDsystem *system; data/ngspice-33+ds/src/spicelib/devices/ind/indsprt.c:40:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->INDindGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/ind/mutsprt.c:41:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MUTindGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:60:35: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. struct INDsystem *system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:62:37: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. if (!here->MUTind1->system && !here->MUTind2->system) { data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:62:63: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. if (!here->MUTind1->system && !here->MUTind2->system) { data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:66:36: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. first_system = system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:70:45: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. here->MUTind1->system = system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:71:45: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. here->MUTind2->system = system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:74:43: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. } else if (here->MUTind1->system && !here->MUTind2->system) { data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:74:69: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. } else if (here->MUTind1->system && !here->MUTind2->system) { data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:75:45: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. system = here->MUTind1->system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:81:45: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. here->MUTind2->system = system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:82:44: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. } else if (!here->MUTind1->system && here->MUTind2->system) { data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:82:69: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. } else if (!here->MUTind1->system && here->MUTind2->system) { data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:83:45: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. system = here->MUTind2->system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:89:45: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. here->MUTind1->system = system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:90:68: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. } else if (here->MUTind1->system == here->MUTind2->system) { data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:91:45: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. system = here->MUTind2->system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:95:59: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. struct INDsystem *s1 = here->MUTind1->system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:96:59: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. struct INDsystem *s2 = here->MUTind2->system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:122:27: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. struct INDsystem *system; data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:125:37: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. for (system = first_system; system; system = system->next_system) data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:132:37: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. for (system = first_system; system; system = system->next_system) { data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:210:37: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. for (system = first_system; system;) { data/ngspice-33+ds/src/spicelib/devices/ind/muttemp.c:212:19: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. tfree(system); data/ngspice-33+ds/src/spicelib/devices/isrc/isrcask.c:87:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/jfet/jfetask.c:120:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/jfet/jfetask.c:132:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2ask.c:129:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2ask.c:141:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mes/mesask.c:106:18: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mes/mesask.c:118:18: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mesa/mesaask.c:128:18: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mesa/mesaask.c:140:18: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ask.c:358:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ask.c:369:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ask.c:386:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ask.c:404:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1sprt.c:45:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS1mGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1sprt.c:48:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS1lGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1sprt.c:50:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS1wGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ask.c:358:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ask.c:369:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ask.c:386:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ask.c:404:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2sprt.c:41:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS2mGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2sprt.c:43:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS2lGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2sprt.c:45:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS2wGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ask.c:363:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ask.c:374:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ask.c:391:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ask.c:409:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3sprt.c:42:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS3mGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3sprt.c:44:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS3lGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3sprt.c:46:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS3wGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ask.c:391:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ask.c:403:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ask.c:421:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ask.c:440:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ask.c:360:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ask.c:371:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ask.c:388:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ask.c:406:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9sprt.c:42:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS9mGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9sprt.c:44:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS9lGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9sprt.c:46:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->MOS9wGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdump.c:69:2: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(fileName, "%s%s.%d.%s", output->OUTProotFile, prefix, data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2dump.c:70:2: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(fileName, "%s%s.%d.%s", output->OUTProotFile, prefix, data/ngspice-33+ds/src/spicelib/devices/ndev/ndevset.c:144:3: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. sprintf(buf, NG_QUERY); data/ngspice-33+ds/src/spicelib/devices/numd/numddump.c:69:2: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(fileName, "%s%s.%d.%s", output->OUTProotFile, prefix, data/ngspice-33+ds/src/spicelib/devices/numd2/nud2dump.c:70:2: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(fileName, "%s%s.%d.%s", output->OUTProotFile, prefix, data/ngspice-33+ds/src/spicelib/devices/numos/nummdump.c:70:2: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(fileName, "%s%s.%d.%s", output->OUTProotFile, prefix, data/ngspice-33+ds/src/spicelib/devices/res/ressprt.c:40:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->RESmGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/res/ressprt.c:43:13: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(here->RESresGiven ? "(specified)\n" : "(default)\n"); data/ngspice-33+ds/src/spicelib/devices/sw/swask.c:45:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg, msg); data/ngspice-33+ds/src/spicelib/devices/sw/swask.c:58:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg, msg); data/ngspice-33+ds/src/spicelib/devices/txl/txlsetup.c:1038:7: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p->id, name); data/ngspice-33+ds/src/spicelib/devices/vccs/vccsask.c:116:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/vccs/vccsask.c:132:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsask.c:121:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsask.c:135:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosask.c:126:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosask.c:142:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosask.c:157:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcask.c:92:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcask.c:105:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(errMsg,msg); data/ngspice-33+ds/src/spicelib/parser/inp2r.c:124:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p + left_length + 5, s); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:126:29: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(internal1, name); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:136:29: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(rname1, name); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:147:29: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(internal2, name); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:151:29: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(rname2, name); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:163:29: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(rname3, name); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:181:29: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(cname1, name); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:192:29: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(cname2, name); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:204:29: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(cname3, name); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:216:29: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(cname4, name); data/ngspice-33+ds/src/spicelib/parser/inpfindv.c:29:2: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. sscanf(where, "%s", version); /* We get the version number */ data/ngspice-33+ds/src/spicelib/parser/inpmktmp.c:22:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(temp, string); data/ngspice-33+ds/src/spicelib/parser/inpptree-parser.c:717:21: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. # define YYFPRINTF fprintf data/ngspice-33+ds/src/spicelib/parser/inpptree.c:1055:12: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, fname); data/ngspice-33+ds/src/spicelib/parser/inpptree.c:1191:12: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(buf, string); data/ngspice-33+ds/src/spicelib/parser/inpptree.c:1233:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(values[i].sValue, buf); data/ngspice-33+ds/src/tclspice.c:93:9: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. #define snprintf _snprintf data/ngspice-33+ds/src/tclspice.c:93:18: [4] (format) _snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. #define snprintf _snprintf data/ngspice-33+ds/src/tclspice.c:252:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "{title \"%s\"} {name \"%s\"} {date \"%s\"} {variables %u}", title, name, date, cur_run->numData); data/ngspice-33+ds/src/tclspice.c:286:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "{%s %s} ", name, ft_typenames(type)); data/ngspice-33+ds/src/tclspice.c:310:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "{%s %s} ", name, ft_typenames(type)); data/ngspice-33+ds/src/tclspice.c:772:9: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(buf, argv[i]); data/ngspice-33+ds/src/tclspice.c:925:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "{%s %s %i} ", name, ft_typenames(v->v_type), length); data/ngspice-33+ds/src/tclspice.c:1339:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "%s in %s not found", param, device); data/ngspice-33+ds/src/tclspice.c:1397:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "No such device or model name %s", name); data/ngspice-33+ds/src/tclspice.c:1426:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "unknown parameter %s", paramname); data/ngspice-33+ds/src/tclspice.c:1640:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "spice_gr_Text \"%s\" %i %i", text, x, y); data/ngspice-33+ds/src/tclspice.c:1793:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "spice_gr_Plot %s %s %s %s %s %s %d", data/ngspice-33+ds/src/tclspice.c:2020:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(tmp->ident, current->name); data/ngspice-33+ds/src/tclspice.c:2230:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(watches->name, ident); data/ngspice-33+ds/src/tclspice.c:2256:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(watches->name, ident); data/ngspice-33+ds/src/tclspice.c:2521:13: [4] (race) access: This usually indicates a security flaw. If an attacker can change anything along the path between the call to access() and the file's actual use (e.g., by moving files), the attacker can exploit the race condition (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid()) and try to open the file directly. if (access(".spiceinit", 0) == 0) { data/ngspice-33+ds/src/tclspice.c:2530:17: [4] (race) access: This usually indicates a security flaw. If an attacker can change anything along the path between the call to access() and the file's actual use (e.g., by moving files), the attacker can exploit the race condition (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid()) and try to open the file directly. if (access(s, 0) == 0) data/ngspice-33+ds/src/tclspice.c:2559:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buf, "%s%s", TCLSPICE_prefix, key); data/ngspice-33+ds/src/tclspice.c:2653:16: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. return vfprintf(f, fmt, args); data/ngspice-33+ds/src/tclspice.c:2665:18: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. nchars = vsnprintf(p + prolog_len, size, fmt, ap); data/ngspice-33+ds/src/tclspice.c:2701:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p, buf); data/ngspice-33+ds/src/tclspice.c:2715:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p + prolog_len + nchars + escapes, epilog); data/ngspice-33+ds/src/tclspice.c:2780:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(stdptr, (f == stderr) ? "err" : "out"); data/ngspice-33+ds/src/unsupported/spiced.c:198:9: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. i = sscanf(buf, "%s %s %s", user, host, program); data/ngspice-33+ds/src/unsupported/spiced.c:204:16: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). (void) strcpy(program, tilde_expand(Spice_Path)); data/ngspice-33+ds/src/winmain.c:245:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(t, "%s", PACKAGE_STRING); data/ngspice-33+ds/src/winmain.c:248:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(s, " %s", Analyse); data/ngspice-33+ds/src/winmain.c:249:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(t, "%s %s", PACKAGE_STRING, Analyse); data/ngspice-33+ds/src/winmain.c:252:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(s, " %s: %d", Analyse, DecaPercent); data/ngspice-33+ds/src/winmain.c:253:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(t, "%s %d", PACKAGE_STRING, DecaPercent); data/ngspice-33+ds/src/winmain.c:256:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(s, " %s: %3.1f%%", Analyse, (double)DecaPercent/10.); data/ngspice-33+ds/src/winmain.c:257:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(t, "%s %3.1f%%", PACKAGE_STRING, (double)DecaPercent/10.); data/ngspice-33+ds/src/winmain.c:399:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(&TBuffer[TBufEnd], Line); data/ngspice-33+ds/src/winmain.c:416:9: [4] (format) swprintf: Potential format string problem (CWE-134). Make format string constant. swprintf(TWBuffer, 2 * strlen(TBuffer), L"UTF-8 to UTF-16 conversion failed with 0x%x\n%hs could not be converted\n", GetLastError(), TBuffer); data/ngspice-33+ds/src/winmain.c:526:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(SBuffer, cmd); data/ngspice-33+ds/src/winmain.c:527:5: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(SBuffer, CRLF); data/ngspice-33+ds/src/winmain.c:659:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(SBuffer + n_char_returned, CRLF); data/ngspice-33+ds/src/winmain.c:1491:18: [4] (format) vsprintf: Potential format string problem (CWE-134). Make format string constant. result = vsprintf(s, format, args); data/ngspice-33+ds/src/winmain.c:1494:18: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. result = vfprintf(stream, format, args); data/ngspice-33+ds/src/winmain.c:1565:14: [4] (buffer) vfscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. If the scanf format is influenceable by an attacker, it's exploitable. result = vfscanf(stream, format, args); data/ngspice-33+ds/src/winmain.c:1669:14: [4] (format) vsprintf: Potential format string problem (CWE-134). Make format string constant. result = vsprintf(s, format, args); data/ngspice-33+ds/src/winmain.c:1713:18: [4] (format) vsprintf: Potential format string problem (CWE-134). Make format string constant. result = vsprintf(s, format, arglist); data/ngspice-33+ds/src/winmain.c:1716:18: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. result = vfprintf(stream, format, arglist); data/ngspice-33+ds/src/winmain.c:1729:12: [4] (buffer) vfscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. If the scanf format is influenceable by an attacker, it's exploitable. return vfscanf(stream, format, arglist); data/ngspice-33+ds/src/winmain.c:1741:14: [4] (format) vsprintf: Potential format string problem (CWE-134). Make format string constant. result = vsprintf(s, format, arglist); data/ngspice-33+ds/src/winmain.c:1835:1: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. system(const char *command) data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:256:4: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf (str, "Port `%s' not found", name); data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:384:7: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf (str, "Invalid parameter type (saw %s - expected %s)", data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:1265:21: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. # define YYFPRINTF fprintf data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:271:3: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf (error_str, data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:289:7: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf (error_str, data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:296:7: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf (error_str, data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:351:4: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf (error_str, "No %s named '%s'", data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:390:10: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). (void)strcat (buffer,str); data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:1098:21: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. # define YYFPRINTF fprintf data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:425:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p_model_info_cur->path_name, fbobj.str_value.sz); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:602:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p_node_info_cur->path_name, fbobj.str_value.sz); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:734:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p_dst, IFSPEC_FILENAME); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:849:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(p_dst, UDNFUNC_FILENAME); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1620:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(*node_name, name); data/ngspice-33+ds/src/xspice/cmpp/util.c:95:5: [4] (format) vfprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. vfprintf(stderr, fmt, p_arg); data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c:1202:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str, "{%s, 0, 0.0, {0.0, 0.0}, NULL}", bool_str); data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c:1235:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str, "{MIF_FALSE, 0, 0.0, {0.0, 0.0}, \"%s\"}", value.svalue); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:133:9: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat(card, d->line); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:420:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(*inst_card + strlen(*inst_card), "%s ", name); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:431:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(*inst_card + strlen(*inst_card), "%s ", in_conn[i]); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:445:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(*inst_card + strlen(*inst_card), "%s ", out_conn[i]); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:451:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(*inst_card + strlen(*inst_card), "a$poly$%s", name); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:455:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(*mod_card, ".model a$poly$%s spice2poly coef = [ ", name); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:457:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(*mod_card + strlen(*mod_card), "%s ", coef[i]); data/ngspice-33+ds/src/xspice/evt/evtdump.c:241:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(buff, "%d %s %s", node_dict[i].ipc_index, data/ngspice-33+ds/src/xspice/evt/evtiter.c:282:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(err_msg, "\n Instance: %s\n Connection: %s\n Port: %d", data/ngspice-33+ds/src/xspice/evt/evtop.c:187:17: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(err_msg, "\n Instance: %s\n Connection: %s\n Port: %d", data/ngspice-33+ds/src/xspice/icm/dlmain.c:505:18: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. nchars = vsnprintf(p, (size_t) size, fmt, ap); data/ngspice-33+ds/src/xspice/icm/table/support/gettokens.c:74:15: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). ret_str = strcpy(ret_str,buf); data/ngspice-33+ds/src/xspice/ipc/ipc.c:840:7: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat (fmt_buffer, tag); data/ngspice-33+ds/src/xspice/ipc/ipc.c:875:7: [4] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). strcat (fmt_buffer, tag); data/ngspice-33+ds/src/xspice/ipc/ipc.c:968:4: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(buff_ptr, print_val); data/ngspice-33+ds/src/xspice/ipc/ipcaegis.c:128:4: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy (str, mbx_ret_ptr->data); data/ngspice-33+ds/src/xspice/ipc/ipctiein.c:321:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(mapped_name,name); data/ngspice-33+ds/src/xspice/ipc/ipctiein.c:356:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(mapped_name, g_ipc.vtrans.device_name[i]); data/ngspice-33+ds/src/xspice/mif/mifmpara.c:150:13: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(model->param[param_index]->element[0].svalue, value->sValue); data/ngspice-33+ds/src/xspice/mif/mifmpara.c:192:17: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(model->param[param_index]->element[i].svalue, value->v.vec.sVec[i]); data/ngspice-33+ds/src/frontend/com_chdir.c:33:13: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. s = getenv("HOME"); data/ngspice-33+ds/src/frontend/com_chdir.c:35:17: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. s = getenv("USERPROFILE"); data/ngspice-33+ds/src/frontend/com_measure2.c:69:20: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if ((env_ptr = getenv("NGSPICE_MEAS_PRECISION")) != NULL) data/ngspice-33+ds/src/frontend/com_rehash.c:25:9: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. s = getenv("PATH"); data/ngspice-33+ds/src/frontend/com_shell.c:26:13: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. shell = getenv("SHELL"); data/ngspice-33+ds/src/frontend/display.c:172:9: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if (getenv("DISPLAY") || cp_getvar("display", CP_STRING, buf, sizeof(buf))) data/ngspice-33+ds/src/frontend/help/provide.c:33:9: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if (getenv("DISPLAY") || hlp_displayname) data/ngspice-33+ds/src/frontend/inp.c:1556:23: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if ((editor = getenv("EDITOR")) == NULL) { data/ngspice-33+ds/src/frontend/inpcom.c:68:11: [3] (buffer) realpath: This function does not protect against buffer overflows, and some implementations can overflow internally (CWE-120/CWE-785!). Ensure that the destination buffer is at least of size MAXPATHLEN, andto protect against implementation problems, the input argument should also be checked to ensure it is no larger than MAXPATHLEN. char *realpath; data/ngspice-33+ds/src/frontend/inpcom.c:255:28: [3] (buffer) realpath: This function does not protect against buffer overflows, and some implementations can overflow internally (CWE-120/CWE-785!). Ensure that the destination buffer is at least of size MAXPATHLEN, andto protect against implementation problems, the input argument should also be checked to ensure it is no larger than MAXPATHLEN. tfree(libraries[i].realpath); data/ngspice-33+ds/src/frontend/inpcom.c:267:31: [3] (buffer) realpath: This function does not protect against buffer overflows, and some implementations can overflow internally (CWE-120/CWE-785!). Ensure that the destination buffer is at least of size MAXPATHLEN, andto protect against implementation problems, the input argument should also be checked to ensure it is no larger than MAXPATHLEN. if (cieq(libraries[i].realpath, name)) data/ngspice-33+ds/src/frontend/inpcom.c:329:10: [3] (buffer) realpath: This function does not protect against buffer overflows, and some implementations can overflow internally (CWE-120/CWE-785!). Ensure that the destination buffer is at least of size MAXPATHLEN, andto protect against implementation problems, the input argument should also be checked to ensure it is no larger than MAXPATHLEN. yy = realpath(y_resolved, NULL); data/ngspice-33+ds/src/frontend/options.c:346:23: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. char *s = getenv("PATH"); data/ngspice-33+ds/src/frontend/parser/unixcom.c:94:20: [3] (buffer) getwd: This does not protect against buffer overflows by itself, so use with caution (CWE-120, CWE-20). Use getcwd instead. (void) getwd(buf); data/ngspice-33+ds/src/frontend/plotting/x11.c:159:32: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. } else if (!(displayname = getenv("DISPLAY"))) { data/ngspice-33+ds/src/frontend/resource.c:591:9: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if (getenv("SPICE_NO_DATASEG_CHECK")) data/ngspice-33+ds/src/frontend/terminal.c:289:14: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if ((s = getenv("TERM")) != NULL) data/ngspice-33+ds/src/frontend/terminal.c:303:18: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if ((s = getenv("COLS")) != NULL) data/ngspice-33+ds/src/frontend/terminal.c:310:18: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if ((s = getenv("LINES")) != NULL) data/ngspice-33+ds/src/frontend/trannoise/wallace.c:83:5: [3] (random) srand: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. srand((unsigned int) getpid()); data/ngspice-33+ds/src/frontend/variable.c:1008:20: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if (!v && (s = getenv(string)) != NULL) { data/ngspice-33+ds/src/main.c:610:26: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. strcpy(history_file, getenv("HOME")); data/ngspice-33+ds/src/main.c:918:17: [3] (buffer) getopt_long: Some older implementations do not protect against internal buffer overflows (CWE-120, CWE-20). Check implementation on installation, or limit the size of all string inputs. int c = getopt_long(argc, argv, "D:hvbac:ino:pqr:st:", data/ngspice-33+ds/src/main.c:1181:47: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. const char * const home = getenv("HOME"); data/ngspice-33+ds/src/main.c:1193:46: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. const char * const usr = getenv("USERPROFILE"); data/ngspice-33+ds/src/main.c:1303:37: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. char *lbuffer = getenv("NGSPICE_INPUT_DIR"); data/ngspice-33+ds/src/maths/misc/randnumb.c:84:10: [3] (random) srand: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. srand((unsigned int)newseed); data/ngspice-33+ds/src/maths/misc/randnumb.c:302:9: [3] (random) srand: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. srand((unsigned int)newseed); data/ngspice-33+ds/src/maths/misc/randnumb.c:315:9: [3] (random) srand: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. srand((unsigned int)newseed); data/ngspice-33+ds/src/misc/alloc.c:26:23: [3] (misc) EnterCriticalSection: On some versions of Windows, exceptions can be thrown in low-memory situations. Use InitializeCriticalSectionAndSpinCount instead. #define mutex_lock(a) EnterCriticalSection(a) data/ngspice-33+ds/src/misc/getopt_bsd.h:49:5: [3] (buffer) getopt: Some older implementations do not protect against internal buffer overflows (CWE-120, CWE-20). Check implementation on installation, or limit the size of all string inputs. int getopt (int, char * const *, const char *); data/ngspice-33+ds/src/misc/getopt_bsd.h:72:5: [3] (buffer) getopt_long: Some older implementations do not protect against internal buffer overflows (CWE-120, CWE-20). Check implementation on installation, or limit the size of all string inputs. int getopt_long (int, char *const *, const char *, const struct option *, int *); data/ngspice-33+ds/src/misc/getopt_long_bsd.c:321:26: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. posixly_correct = (getenv("POSIXLY_CORRECT") != NULL); data/ngspice-33+ds/src/misc/getopt_long_bsd.c:505:1: [3] (buffer) getopt: Some older implementations do not protect against internal buffer overflows (CWE-120, CWE-20). Check implementation on installation, or limit the size of all string inputs. getopt(int nargc, char * const *nargv, const char *options) data/ngspice-33+ds/src/misc/getopt_long_bsd.c:525:1: [3] (buffer) getopt_long: Some older implementations do not protect against internal buffer overflows (CWE-120, CWE-20). Check implementation on installation, or limit the size of all string inputs. getopt_long(int nargc, char * const *nargv, const char *options, const struct option *long_options, int *idx) data/ngspice-33+ds/src/misc/ivars.c:20:24: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if (v && e && (p = getenv(e)) != NULL) data/ngspice-33+ds/src/misc/ivars.c:28:20: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. char *buffer = getenv(env_var); data/ngspice-33+ds/src/misc/mktemp.c:28:30: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. const char* const home = getenv("HOME"); data/ngspice-33+ds/src/misc/mktemp.c:32:29: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. const char* const usr = getenv("USERPROFILE"); data/ngspice-33+ds/src/misc/tilde.c:126:24: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if ((sz_home = getenv("HOME")) != (char *) NULL) { data/ngspice-33+ds/src/misc/tilde.c:132:24: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. if ((sz_home = getenv("USERPROFILE")) != (char *) NULL) { data/ngspice-33+ds/src/nghelp.c:62:32: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. } else if (!(displayname = getenv("DISPLAY"))) { data/ngspice-33+ds/src/sharedspice.c:95:23: [3] (misc) EnterCriticalSection: On some versions of Windows, exceptions can be thrown in low-memory situations. Use InitializeCriticalSectionAndSpinCount instead. #define mutex_lock(a) EnterCriticalSection(a) data/ngspice-33+ds/src/sharedspice.c:721:5: [3] (misc) InitializeCriticalSection: Exceptions can be thrown in low-memory situations. Use InitializeCriticalSectionAndSpinCount instead. InitializeCriticalSection(&triggerMutex); data/ngspice-33+ds/src/sharedspice.c:722:5: [3] (misc) InitializeCriticalSection: Exceptions can be thrown in low-memory situations. Use InitializeCriticalSectionAndSpinCount instead. InitializeCriticalSection(&allocMutex); data/ngspice-33+ds/src/sharedspice.c:723:5: [3] (misc) InitializeCriticalSection: Exceptions can be thrown in low-memory situations. Use InitializeCriticalSectionAndSpinCount instead. InitializeCriticalSection(&fputsMutex); data/ngspice-33+ds/src/sharedspice.c:791:19: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. homedir = getenv("HOME"); data/ngspice-33+ds/src/sharedspice.c:795:23: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. homedir = getenv("USERPROFILE"); data/ngspice-33+ds/src/sharedspice.c:803:19: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. homedir = getenv("HOME"); data/ngspice-33+ds/src/sharedspice.c:807:23: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. homedir = getenv("USERPROFILE"); data/ngspice-33+ds/src/spicelib/devices/dev.c:514:12: [3] (misc) LoadLibrary: Ensure that the full path to the library is specified, or current directory may be used (CWE-829, CWE-20). Use registry entry or GetWindowsDirectory to find library path, if you aren't already. return LoadLibrary(name); data/ngspice-33+ds/src/tclspice.c:2497:9: [3] (random) srand: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. srand((unsigned int) getpid()); data/ngspice-33+ds/src/winmain.c:1848:10: [3] (shell) CreateProcess: This causes a new process to execute and is difficult to use safely (CWE-78). Specify the application path in the first argument, NOT as part of the second, or embedded spaces could allow an attacker to force a different program to run. if (!CreateProcess( data/ngspice-33+ds/src/winmain.c:1848:10: [3] (shell) CreateProcess: This causes a new process to execute and is difficult to use safely (CWE-78). Specify the application path in the first argument, NOT as part of the second, or embedded spaces could allow an attacker to force a different program to run. if (!CreateProcess( data/ngspice-33+ds/src/xspice/cmpp/main.c:200:33: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. const char * const ev = getenv("CMPP_IDIR"); data/ngspice-33+ds/src/xspice/cmpp/main.c:211:33: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. const char * const ev = getenv("CMPP_ODIR"); data/ngspice-33+ds/src/xspice/cmpp/util.c:123:25: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. const char *e = getenv((*mode == 'w' || *mode == 'a') ? data/ngspice-33+ds/src/xspice/icm/dlmain.c:441:27: [3] (buffer) getenv: Environment variables are untrustable input if they can be set by an attacker. They can have any content and length, and the same variable can be set more than once (CWE-807, CWE-20). Check environment variables carefully before using them. char *y = getenv("NGSPICE_INPUT_DIR"); data/ngspice-33+ds/contrib/mslib/datadef.h:71:2: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[BSIZE]; data/ngspice-33+ds/contrib/mslib/inc_inp.c:15:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char buf[BSIZE]; data/ngspice-33+ds/contrib/mslib/inc_inp.c:24:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char firstname[BSIZE]; data/ngspice-33+ds/contrib/mslib/inc_inp.c:94:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[BSIZE]; data/ngspice-33+ds/contrib/mslib/inc_main.c:18:1: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE]; data/ngspice-33+ds/contrib/mslib/inc_main.c:28:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char tch[BSIZE]; data/ngspice-33+ds/contrib/mslib/inc_main.c:64:25: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(deck->filedes = fopen(deck->name, "r"))) data/ngspice-33+ds/contrib/mslib/inc_main.c:69:26: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(deck->filedes = fopen(deck->name, "r"))) data/ngspice-33+ds/contrib/mslib/inc_main.c:85:27: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(tmplib->filedes = fopen(tmplib->name, "w"))) data/ngspice-33+ds/contrib/mslib/inc_main.c:111:27: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(libp->filedes = fopen(libp->name, "r"))) data/ngspice-33+ds/contrib/mslib/inc_main.c:116:28: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(libp->filedes = fopen(libp->name, "r"))) data/ngspice-33+ds/src/ciderlib/oned/oneread.c:37:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char voltName[80]; data/ngspice-33+ds/src/ciderlib/oned/oneread.c:46:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf( voltName, "v%d%d", i+1, numVolts+1 ); data/ngspice-33+ds/src/ciderlib/support/database.c:41:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(data, v->v_realdata, sizeof (double) * (size_t) v->v_length); data/ngspice-33+ds/src/ciderlib/support/logfile.c:28:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpLog = fopen(LogFileName, "A")) == NULL) { data/ngspice-33+ds/src/ciderlib/support/logfile.c:30:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpLog = fopen(LogFileName, "a")) == NULL) { data/ngspice-33+ds/src/ciderlib/support/suprem.c:33:20: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpAscii = fopen( fileName, "r" )) == NULL) { data/ngspice-33+ds/src/ciderlib/support/suprmitf.c:40:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char cdata[21]; data/ngspice-33+ds/src/ciderlib/support/suprmitf.c:54:21: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpSuprem = fopen( inFile, "r" )) == NULL) { data/ngspice-33+ds/src/ciderlib/support/suprmitf.c:264:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char cdata[21]; data/ngspice-33+ds/src/ciderlib/support/suprmitf.c:278:21: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpSuprem = fopen( inFile, "r" )) == NULL) { data/ngspice-33+ds/src/ciderlib/twod/twomesh.c:431:20: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(meshFile = fopen("mesh.out", "w"))) { data/ngspice-33+ds/src/ciderlib/twod/tworead.c:38:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char voltName[80]; data/ngspice-33+ds/src/ciderlib/twod/tworead.c:46:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf( voltName, "v%d%d", i+1, numVolts+1 ); data/ngspice-33+ds/src/frontend/arg.c:30:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[100]; data/ngspice-33+ds/src/frontend/aspice.c:98:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((inp = fopen(deck, "r")) == NULL) { data/ngspice-33+ds/src/frontend/aspice.c:113:19: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). (void) fclose(fopen(raw, "w")); /* So there isn't a race condition. */ data/ngspice-33+ds/src/frontend/aspice.c:195:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/aspice.c:242:20: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(fp = fopen(p->pr_outfile, "r"))) { data/ngspice-33+ds/src/frontend/aspice.c:272:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char rhost[64], program[128], buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/aspice.c:273:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char remote_shell[513]; data/ngspice-33+ds/src/frontend/aspice.c:290:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(remote_shell, "rsh"); data/ngspice-33+ds/src/frontend/aspice.c:351:25: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(inp = fopen(wl->wl_word, "r"))) { data/ngspice-33+ds/src/frontend/aspice.c:384:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((out = fopen(outfile, "w+")) == NULL) { data/ngspice-33+ds/src/frontend/breakp.c:47:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *s, buf[64]; data/ngspice-33+ds/src/frontend/breakp.c:73:21: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). i = atoi(wl->wl_next->wl_word); /* etoi ??? */ data/ngspice-33+ds/src/frontend/breakp.c:163:16: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "%d", debugnumber); data/ngspice-33+ds/src/frontend/breakp.c:237:32: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). steps = howmanysteps = atoi(wl->wl_word); data/ngspice-33+ds/src/frontend/breakp.c:350:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *s, buf[64]; data/ngspice-33+ds/src/frontend/breakp.c:379:17: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). i = atoi(wl->wl_next->wl_word); /* etoi ??? */ data/ngspice-33+ds/src/frontend/breakp.c:392:24: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "%d", i); data/ngspice-33+ds/src/frontend/com_ahelp.c:25:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char slevel[256]; data/ngspice-33+ds/src/frontend/com_chdir.c:25:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char localbuf[257]; data/ngspice-33+ds/src/frontend/com_chdir.c:77:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char localbuf[257]; data/ngspice-33+ds/src/frontend/com_fft.c:36:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char window[BSIZE_SP]; data/ngspice-33+ds/src/frontend/com_fft.c:80:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(window, "hanning"); data/ngspice-33+ds/src/frontend/com_fft.c:250:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char window[BSIZE_SP]; data/ngspice-33+ds/src/frontend/com_fft.c:310:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(window, "hanning"); data/ngspice-33+ds/src/frontend/com_ghelp.c:40:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/com_hardcopy.c:34:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], device[BSIZE_SP]; data/ngspice-33+ds/src/frontend/com_hardcopy.c:38:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char format[513]; data/ngspice-33+ds/src/frontend/com_hardcopy.c:95:20: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(fname + n_byte_fname - 1, ".ps", 4); data/ngspice-33+ds/src/frontend/com_history.c:107:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], *s, *r = NULL, *t; data/ngspice-33+ds/src/frontend/com_history.c:490:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char schar, *s, *p, buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/com_history.c:545:45: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). N = (wl == NULL) ? history_length : atoi(wl->wl_word); data/ngspice-33+ds/src/frontend/com_history.c:571:48: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). cp_hprint(cp_event - 1, cp_event - 1 - atoi(wl->wl_word), rev); data/ngspice-33+ds/src/frontend/com_let.c:516:12: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(vec_dst->v_dims, vec_src->v_dims, data/ngspice-33+ds/src/frontend/com_let.c:519:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(vec_dst->v_realdata, vec_src->v_realdata, data/ngspice-33+ds/src/frontend/com_let.c:523:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(vec_dst->v_compdata, vec_src->v_compdata, data/ngspice-33+ds/src/frontend/com_let.c:741:24: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy( data/ngspice-33+ds/src/frontend/com_measure2.c:70:21: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). precision = atoi(env_ptr); data/ngspice-33+ds/src/frontend/com_measure2.c:1195:17: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "bad syntax. equal sign missing ?\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1245:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "bad syntax of\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1319:17: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "bad syntax of WHEN\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1325:21: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "bad syntax of WHEN\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1330:17: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "bad syntax of WHEN\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1389:17: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errBuf, "bad syntax\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1509:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char errbuf[100]; data/ngspice-33+ds/src/frontend/com_measure2.c:1635:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "at, rise, fall or cross must be given\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1654:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "at, rise, fall or cross must be given\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1667:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1675:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1729:17: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1747:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1785:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1826:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1870:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1918:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1966:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_measure2.c:1975:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(errbuf, "out of interval\n"); data/ngspice-33+ds/src/frontend/com_set.c:96:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char intoken[4096]; data/ngspice-33+ds/src/frontend/com_shell.c:36:11: [2] (race) vfork: On some old systems, vfork() permits race conditions, and it's very difficult to use correctly (CWE-362). Use fork() instead. pid = vfork(); data/ngspice-33+ds/src/frontend/com_sysinfo.c:175:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[2048]; data/ngspice-33+ds/src/frontend/com_sysinfo.c:180:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen("/proc/meminfo", "r")) == NULL) { data/ngspice-33+ds/src/frontend/com_sysinfo.c:255:12: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). file = fopen("/proc/version", "rb"); data/ngspice-33+ds/src/frontend/com_sysinfo.c:282:12: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). file = fopen("/proc/cpuinfo", "rb"); data/ngspice-33+ds/src/frontend/com_sysinfo.c:319:25: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(system_info.cpuModelName, modelPtr+2, numToEOL); data/ngspice-33+ds/src/frontend/control.c:561:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char buf[MAX_CHEVRONS + 2]; /* includes terminating space & null */ data/ngspice-33+ds/src/frontend/cpitf.c:36:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], **x, *s, *r, *copys; data/ngspice-33+ds/src/frontend/cpitf.c:176:16: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. (void) strcat(buf, " ! -> "); data/ngspice-33+ds/src/frontend/cpitf.c:282:20: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. (void) strcat(r, "tclspinit"); data/ngspice-33+ds/src/frontend/cpitf.c:285:20: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. (void) strcat(r, "spinit"); data/ngspice-33+ds/src/frontend/cpitf.c:287:23: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(buf, "r")) != NULL) { data/ngspice-33+ds/src/frontend/cpitf.c:298:30: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). } else if ((fp = fopen("./tclspinit", "r")) != NULL) { data/ngspice-33+ds/src/frontend/cpitf.c:300:30: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). } else if ((fp = fopen("./spinit", "r")) != NULL) { data/ngspice-33+ds/src/frontend/cpitf.c:396:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/define.c:44:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], tbuf[BSIZE_SP], *s, *t, *b; data/ngspice-33+ds/src/frontend/define.c:172:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pn->pn_value->v_realdata, data/ngspice-33+ds/src/frontend/define.c:176:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pn->pn_value->v_compdata, data/ngspice-33+ds/src/frontend/device.c:1359:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *modellist[MODLIM] = {NULL}, *modellines[MODLIM] = {NULL}, *newmodelname, *newmodelline; data/ngspice-33+ds/src/frontend/diff.c:120:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char numbuf[BSIZE_SP], numbuf2[BSIZE_SP], numbuf3[BSIZE_SP], numbuf4[BSIZE_SP]; /* For printnum */ data/ngspice-33+ds/src/frontend/dimens.c:48:18: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. retstring += sprintf(retstring, "%d", dim_data[0]); /* first */ data/ngspice-33+ds/src/frontend/dimens.c:51:22: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. retstring += sprintf(retstring, ",%d", dim_data[i]); data/ngspice-33+ds/src/frontend/dimens.c:83:22: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. retstring += sprintf(retstring, "[%d]", dim_data[i]); data/ngspice-33+ds/src/frontend/display.c:158:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[128]; data/ngspice-33+ds/src/frontend/dotcards.c:84:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *plot_opts[ ] = { data/ngspice-33+ds/src/frontend/dotcards.c:199:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char numbuf[BSIZE_SP]; /* For printnum*/ data/ngspice-33+ds/src/frontend/dotcards.c:299:21: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). i = atoi(++s); data/ngspice-33+ds/src/frontend/dotcards.c:489:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], *s, *t; data/ngspice-33+ds/src/frontend/dotcards.c:635:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[513]; data/ngspice-33+ds/src/frontend/error.c:23:1: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ErrorMessage[1024]; data/ngspice-33+ds/src/frontend/fourier.c:50:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char xbuf[20]; data/ngspice-33+ds/src/frontend/fourier.c:61:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(xbuf, "%1.1e", 0.0); data/ngspice-33+ds/src/frontend/gens.c:68:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(dgxp, dg, sizeof(dgx)); /* va: compatible pointer types */ data/ngspice-33+ds/src/frontend/get_avail_mem_size.c:39:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[2048]; data/ngspice-33+ds/src/frontend/get_avail_mem_size.c:44:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen("/proc/meminfo", "r")) == NULL) { data/ngspice-33+ds/src/frontend/get_phys_mem_size.c:38:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[2048]; data/ngspice-33+ds/src/frontend/get_phys_mem_size.c:43:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen("/proc/meminfo", "r")) == NULL) { data/ngspice-33+ds/src/frontend/get_resident_set_size.c:49:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ( (fp = fopen( "/proc/self/statm", "r" )) == NULL ) data/ngspice-33+ds/src/frontend/get_resident_set_size.c:80:16: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ( (fd = open( "/proc/self/psinfo", O_RDONLY )) == -1 ) data/ngspice-33+ds/src/frontend/get_resident_set_size.c:126:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ( (fp = fopen( "/proc/self/statm", "r" )) == NULL ) data/ngspice-33+ds/src/frontend/help/help.c:109:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char filename[BSIZE_SP]; data/ngspice-33+ds/src/frontend/help/help.c:113:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/help/help.c:123:5: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, ".txt"); data/ngspice-33+ds/src/frontend/help/help.c:125:42: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((hlp_ftable[hlp_ftablesize].fp = fopen(buf, "r")) == NULL) { data/ngspice-33+ds/src/frontend/help/help.c:142:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *s, *t, *u, bufx[1025]; data/ngspice-33+ds/src/frontend/help/readhelp.c:69:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/help/readhelp.c:211:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char subject[BSIZE_SP]; data/ngspice-33+ds/src/frontend/help/readhelp.c:279:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/help/readhelp.c:289:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(buf, "rb")) == NULL) { data/ngspice-33+ds/src/frontend/help/readhelp.c:304:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(buf, "rb")) == NULL) { data/ngspice-33+ds/src/frontend/help/readhelp.c:319:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(buf, "rb")) == NULL) { data/ngspice-33+ds/src/frontend/help/readhelp.c:340:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], *s; data/ngspice-33+ds/src/frontend/help/textdisp.c:57:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], *s; data/ngspice-33+ds/src/frontend/help/textdisp.c:109:15: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). num = atoi(s); data/ngspice-33+ds/src/frontend/help/textdisp.c:150:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/help/x11disp.c:311:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char tmp[BSIZE_SP], *tmpp; data/ngspice-33+ds/src/frontend/hpgl.c:78:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char psscale[32]; data/ngspice-33+ds/src/frontend/hpgl.c:119:21: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((plotfile = fopen((char*) graph->devdep, "w")) == NULL) { data/ngspice-33+ds/src/frontend/inp.c:187:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/inp.c:194:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(buf, "<null>"); data/ngspice-33+ds/src/frontend/inp.c:422:30: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). int sr = atoi(token); data/ngspice-33+ds/src/frontend/inp.c:516:25: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE *fdo = fopen("debug-out-mc.txt", "w"); data/ngspice-33+ds/src/frontend/inp.c:771:29: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE *fdo = fopen("debug-out2.txt", "w"); data/ngspice-33+ds/src/frontend/inp.c:797:21: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *cstoken[3]; data/ngspice-33+ds/src/frontend/inp.c:929:25: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE *fdo = fopen("debug-out3.txt", "w"); data/ngspice-33+ds/src/frontend/inp.c:1325:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/inp.c:1357:23: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(filename, "w")) == NULL) { data/ngspice-33+ds/src/frontend/inp.c:1368:23: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(filename, "w")) == NULL) { data/ngspice-33+ds/src/frontend/inp.c:1381:19: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(filename, "r")) == NULL) { data/ngspice-33+ds/src/frontend/inp.c:1551:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], buf2[BSIZE_SP], *editor; data/ngspice-33+ds/src/frontend/inp.c:1572:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/inp.c:1786:14: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). iftrue = atoi(s); data/ngspice-33+ds/src/frontend/inp.c:1800:30: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). elseiftrue = atoi(s); data/ngspice-33+ds/src/frontend/inpcom.c:76:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *names[N_SUBCKT_W_PARAMS]; data/ngspice-33+ds/src/frontend/inpcom.c:88:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *params[N_PARAMS]; data/ngspice-33+ds/src/frontend/inpcom.c:341:23: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE *newfp = fopen(y_resolved, "r"); data/ngspice-33+ds/src/frontend/inpcom.c:533:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char behaviour[80]; data/ngspice-33+ds/src/frontend/inpcom.c:742:24: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE *fd = fopen("debug-out.txt", "w"); data/ngspice-33+ds/src/frontend/inpcom.c:799:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char big_buff[5000]; data/ngspice-33+ds/src/frontend/inpcom.c:846:17: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ipc_buffer[1025]; /* Had better be big enough */ data/ngspice-33+ds/src/frontend/inpcom.c:933:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(buffer, ".inc", 4); data/ngspice-33+ds/src/frontend/inpcom.c:969:25: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). newfp = fopen(y_resolved, "r"); data/ngspice-33+ds/src/frontend/inpcom.c:1024:20: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(buffer + 1, "end of: ", 8); data/ngspice-33+ds/src/frontend/inpcom.c:1286:20: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE *fp = fopen(path, mode); data/ngspice-33+ds/src/frontend/inpcom.c:1339:5: [2] (buffer) wchar_t: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. wchar_t wname[BSIZE_SP]; data/ngspice-33+ds/src/frontend/inpcom.c:1340:9: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). if (MultiByteToWideChar(CP_UTF8, 0, name, -1, wname, 2 * (int)strlen(name) + 1) == 0) { data/ngspice-33+ds/src/frontend/inpcom.c:1550:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(gnd, " 0 ", 3); data/ngspice-33+ds/src/frontend/inpcom.c:1608:17: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char keep, *comma_ptr, *xy_values1[5], *xy_values2[5]; data/ngspice-33+ds/src/frontend/inpcom.c:2784:21: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(str_ptr, " ", 7); data/ngspice-33+ds/src/frontend/inpcom.c:3115:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *subckt_param_names[NPARAMS]; data/ngspice-33+ds/src/frontend/inpcom.c:3116:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *subckt_param_values[NPARAMS]; data/ngspice-33+ds/src/frontend/inpcom.c:3117:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *inst_param_names[NPARAMS]; data/ngspice-33+ds/src/frontend/inpcom.c:3118:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *inst_param_values[NPARAMS]; data/ngspice-33+ds/src/frontend/inpcom.c:3493:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *open_paren_ptr, *close_paren_ptr, *fcn_name, *params[FCN_PARAMS]; data/ngspice-33+ds/src/frontend/inpcom.c:4010:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *depends_on[100]; data/ngspice-33+ds/src/frontend/inpcom.c:4051:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *name[12]; data/ngspice-33+ds/src/frontend/inpcom.c:4052:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char nam_buf[128]; data/ngspice-33+ds/src/frontend/inpcom.c:4695:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *ckt_array[100]; data/ngspice-33+ds/src/frontend/inpcom.c:4734:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(str_ptr, " vol=", 5); data/ngspice-33+ds/src/frontend/inpcom.c:4747:17: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char xar[1024], yar[1024]; data/ngspice-33+ds/src/frontend/inpcom.c:4892:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(str_ptr, " cur=", 5); data/ngspice-33+ds/src/frontend/inpcom.c:4907:17: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char xar[1024], yar[1024]; data/ngspice-33+ds/src/frontend/inpcom.c:5480:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(str_ptr, ".save ", 6); data/ngspice-33+ds/src/frontend/inpcom.c:5809:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(str_ptr, " ", 5); data/ngspice-33+ds/src/frontend/inpcom.c:5987:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[512]; data/ngspice-33+ds/src/frontend/inpcom.c:6215:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(new_line, ".param ", 7); data/ngspice-33+ds/src/frontend/inpcom.c:6288:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE *fd = fopen("tprint-out.txt", "w"); data/ngspice-33+ds/src/frontend/inpcom.c:7240:29: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(findstr, " i(", 4); data/ngspice-33+ds/src/frontend/inpcom.c:7446:21: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static int rep_spar(char *inpar[4]) data/ngspice-33+ds/src/frontend/inpcom.c:7823:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(t_str, " temp", 5); data/ngspice-33+ds/src/frontend/inpcom.c:7825:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(t_str, " dtemp", 12); data/ngspice-33+ds/src/frontend/inpcom.c:7827:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(t_str, " tnom", 10); data/ngspice-33+ds/src/frontend/inpcom.c:7966:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *modpar[4]; data/ngspice-33+ds/src/frontend/inpcom.c:7979:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *equalptr[4]; data/ngspice-33+ds/src/frontend/inpcom.c:8084:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *stoks[6]; data/ngspice-33+ds/src/frontend/inpcom.c:8345:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(noi, "noisy=0 ", 9); data/ngspice-33+ds/src/frontend/inpcom.c:8455:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *stoks[4]; data/ngspice-33+ds/src/frontend/inpcom.c:9075:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(tempstr, "temp ", 8); data/ngspice-33+ds/src/frontend/measure.c:219:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *line, *an_name, *an_type, *resname, *meastype, *str_ptr, out_line[1000]; data/ngspice-33+ds/src/frontend/misccoms.c:129:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/misccoms.c:312:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[64]; data/ngspice-33+ds/src/frontend/newcoms.c:101:39: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). dims[numdims++] = atoi(p); data/ngspice-33+ds/src/frontend/numparam/spicenum.c:124:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[25+1]; data/ngspice-33+ds/src/frontend/numparam/spicenum.c:125:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "numparm__________%08lx", ++placeholder); data/ngspice-33+ds/src/frontend/numparam/xpressn.c:848:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char oper[nprece + 1]; data/ngspice-33+ds/src/frontend/numparam/xpressn.c:849:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char uop[nprece + 1]; data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1064:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[ACT_CHARACTS + 1]; data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1100:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[ACT_CHARACTS+1]; data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1113:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p, buf, ACT_CHARACTS); data/ngspice-33+ds/src/frontend/nutinp.c:189:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/outitf.c:142:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char namebuf[BSIZE_SP], parambuf[BSIZE_SP], depbuf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/outitf.c:143:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *ch, tmpname[BSIZE_SP]; data/ngspice-33+ds/src/frontend/outitf.c:293:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(ch, "[ic]"); data/ngspice-33+ds/src/frontend/outitf.c:295:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(ch, "[ib]"); data/ngspice-33+ds/src/frontend/outitf.c:297:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(ch, "[ie]"); data/ngspice-33+ds/src/frontend/outitf.c:300:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(ch, "[is]"); data/ngspice-33+ds/src/frontend/outitf.c:302:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(ch, "[id]"); data/ngspice-33+ds/src/frontend/outitf.c:305:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(ch, "[ig]"); data/ngspice-33+ds/src/frontend/outitf.c:307:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(ch, "[is]"); data/ngspice-33+ds/src/frontend/outitf.c:310:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(ch, "[ib]"); data/ngspice-33+ds/src/frontend/outitf.c:312:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(ch, "[id]"); data/ngspice-33+ds/src/frontend/outitf.c:855:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[513]; data/ngspice-33+ds/src/frontend/outitf.c:880:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "No. Variables: %d\n", run->numData); data/ngspice-33+ds/src/frontend/outitf.c:883:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "No. Points: "); data/ngspice-33+ds/src/frontend/outitf.c:1241:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf1[BSIZE_SP], buf2[BSIZE_SP], *s; data/ngspice-33+ds/src/frontend/outitf.c:1344:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], *s, *bptr; data/ngspice-33+ds/src/frontend/outitf.c:1359:17: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(bptr, "(null)"); data/ngspice-33+ds/src/frontend/parse-bison.c:1019:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; data/ngspice-33+ds/src/frontend/parse-bison.c:1231:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char yymsgbuf[128]; data/ngspice-33+ds/src/frontend/parse.c:295:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/parser/backq.c:24:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *s, *t, buf[BSIZE_SP], wbuf[BSIZE_SP], tbuf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/parser/complete.c:89:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char wbuf[BSIZE_SP], *s; data/ngspice-33+ds/src/frontend/parser/complete.c:595:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/parser/glob.c:264:28: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_dst, p_start, n_char_append); data/ngspice-33+ds/src/frontend/parser/glob.c:289:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf_fixed[BSIZE_SP]; /* default work buffer */ data/ngspice-33+ds/src/frontend/parser/glob.c:485:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *pp_word[2]; data/ngspice-33+ds/src/frontend/parser/glob.c:548:12: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_dst_cur, wll->wl.wl_word, n_char_word); data/ngspice-33+ds/src/frontend/parser/glob.c:599:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_dst, p_word, n_char_word); data/ngspice-33+ds/src/frontend/parser/glob.c:672:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_dst, p_src, n_new); data/ngspice-33+ds/src/frontend/parser/glob.c:729:24: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_dst, *pp_word_cur, n_char_word_cur); data/ngspice-33+ds/src/frontend/parser/lexical.c:395:26: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static const char id_solo_chars[MAX_INDEX_SOLO_CHAR + 1] = { data/ngspice-33+ds/src/frontend/parser/unixcom.c:70:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], pbuf[BSIZE_SP], *curpath; data/ngspice-33+ds/src/frontend/parser/unixcom.c:156:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/parser/unixcom.c:192:11: [2] (race) vfork: On some old systems, vfork() permits race conditions, and it's very difficult to use correctly (CWE-362). Use fork() instead. pid = vfork(); data/ngspice-33+ds/src/frontend/plotting/agraf.c:36:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *field, buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/plotting/agraf.c:55:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "%1.1e", 0.0); /* expect 0.0e+00 */ data/ngspice-33+ds/src/frontend/plotting/agraf.c:180:16: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "%.2e", j * pow(10.0, (double) mag)); data/ngspice-33+ds/src/frontend/plotting/agraf.c:181:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&line2[i + margin - ((j < 0) ? 2 : 1) - shift], buf, data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:64:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], pointstyle[BSIZE_SP], *text, plotstyle[BSIZE_SP], terminal[BSIZE_SP]; data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:66:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char filename_data[128]; data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:67:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char filename_plt[128]; data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:162:17: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((file = fopen(filename_plt, "w")) == NULL) { data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:247:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(plotstyle, "boxes"); data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:254:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(plotstyle, "points"); data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:256:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(plotstyle, "lines"); data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:260:22: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((file_data = fopen(filename_data, "w")) == NULL) { data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:470:22: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((file_data = fopen(filename, appendwrite ? "a" : "w")) == NULL) { data/ngspice-33+ds/src/frontend/plotting/graf.c:49:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char pointchars[128]; data/ngspice-33+ds/src/frontend/plotting/graf.c:53:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char ticbuf[1024]; data/ngspice-33+ds/src/frontend/plotting/graf.c:284:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char pointc[2]; data/ngspice-33+ds/src/frontend/plotting/graf.c:482:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[16]; data/ngspice-33+ds/src/frontend/plotting/graf.c:483:16: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "%c : ", dv->v_linestyle); data/ngspice-33+ds/src/frontend/plotting/graf.c:508:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/plotting/graf.c:690:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char commandline[513]; data/ngspice-33+ds/src/frontend/plotting/graf.c:943:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, " % .5g", num); data/ngspice-33+ds/src/frontend/plotting/graf.c:972:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[30]; data/ngspice-33+ds/src/frontend/plotting/graphdb.c:125:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ret, graph, sizeof(GRAPH)); /* copy graph info (inc. ID) */ data/ngspice-33+ds/src/frontend/plotting/graphdb.c:196:20: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(dst, graph->devdep, n); data/ngspice-33+ds/src/frontend/plotting/grid.c:187:24: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). int wlen = MultiByteToWideChar(CP_UTF8, 0, graph->grid.xlabel, -1, data/ngspice-33+ds/src/frontend/plotting/grid.c:252:28: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). int wlen = MultiByteToWideChar(CP_UTF8, 0, graph->grid.ylabel, -1, data/ngspice-33+ds/src/frontend/plotting/grid.c:380:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[GRAPH_UNITS_LENGTH], *s; data/ngspice-33+ds/src/frontend/plotting/grid.c:480:16: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char scaleletters[ ] = "afpnum\0kMGT"; data/ngspice-33+ds/src/frontend/plotting/grid.c:498:20: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "x10 "); data/ngspice-33+ds/src/frontend/plotting/grid.c:500:20: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "x100 "); data/ngspice-33+ds/src/frontend/plotting/grid.c:650:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[GRAPH_UNITS_LENGTH]; data/ngspice-33+ds/src/frontend/plotting/grid.c:717:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[GRAPH_UNITS_LENGTH], *s; data/ngspice-33+ds/src/frontend/plotting/grid.c:819:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[GRAPH_UNITS_LENGTH]; data/ngspice-33+ds/src/frontend/plotting/grid.c:845:20: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "0.01"); data/ngspice-33+ds/src/frontend/plotting/grid.c:847:20: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "0.1"); data/ngspice-33+ds/src/frontend/plotting/grid.c:851:20: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "10"); data/ngspice-33+ds/src/frontend/plotting/grid.c:853:20: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "100"); data/ngspice-33+ds/src/frontend/plotting/grid.c:855:20: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "10^%d", j); data/ngspice-33+ds/src/frontend/plotting/grid.c:993:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[64]; data/ngspice-33+ds/src/frontend/plotting/grid.c:1122:12: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "e%d", mag); data/ngspice-33+ds/src/frontend/plotting/grid.c:1143:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[8]; data/ngspice-33+ds/src/frontend/plotting/grid.c:1149:12: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "%d", deg); data/ngspice-33+ds/src/frontend/plotting/grid.c:1173:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[32]; data/ngspice-33+ds/src/frontend/plotting/grid.c:1175:12: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "%d", lab); data/ngspice-33+ds/src/frontend/plotting/grid.c:1279:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[64], plab[32], nlab[32]; data/ngspice-33+ds/src/frontend/plotting/grid.c:1336:16: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(plab, "%g", rnorm[k]); data/ngspice-33+ds/src/frontend/plotting/grid.c:1418:16: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(plab, "%g", rnorm[k]); data/ngspice-33+ds/src/frontend/plotting/grid.c:1419:16: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(nlab, "-%g", rnorm[k]); data/ngspice-33+ds/src/frontend/plotting/grid.c:1462:12: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "e%d", 0); data/ngspice-33+ds/src/frontend/plotting/plot5.c:46:21: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((plotfile = fopen((char*) graph->devdep, "w")) == NULL) { data/ngspice-33+ds/src/frontend/plotting/plotcurv.c:223:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ydata, v->v_realdata, (size_t)(degree + 1) * sizeof(double)); data/ngspice-33+ds/src/frontend/plotting/plotcurv.c:229:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(xdata, xs->v_realdata, (size_t)(degree + 1) * sizeof(double)); data/ngspice-33+ds/src/frontend/plotting/plotit.c:177:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(dd, d->v_realdata + ilo, (size_t) newlen * sizeof(double)); data/ngspice-33+ds/src/frontend/plotting/plotit.c:181:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(cc, d->v_compdata + ilo, (size_t) newlen * sizeof(ngcomplex_t)); data/ngspice-33+ds/src/frontend/plotting/plotit.c:557:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/plotting/plotit.c:643:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/plotting/pvec.c:13:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], buf2[BSIZE_SP], buf3[BSIZE_SP]; data/ngspice-33+ds/src/frontend/plotting/pvec.c:22:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf2, ", min = %g", d->v_minsignal); data/ngspice-33+ds/src/frontend/plotting/pvec.c:27:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf2, ", max = %g", d->v_maxsignal); data/ngspice-33+ds/src/frontend/plotting/pvec.c:33:9: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, ", grid = loglog"); data/ngspice-33+ds/src/frontend/plotting/pvec.c:37:9: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, ", grid = xlog"); data/ngspice-33+ds/src/frontend/plotting/pvec.c:41:9: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, ", grid = ylog"); data/ngspice-33+ds/src/frontend/plotting/pvec.c:45:9: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, ", grid = polar"); data/ngspice-33+ds/src/frontend/plotting/pvec.c:49:9: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, ", grid = smith (xformed)"); data/ngspice-33+ds/src/frontend/plotting/pvec.c:53:9: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, ", grid = smithgrid (not xformed)"); data/ngspice-33+ds/src/frontend/plotting/pvec.c:63:9: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, ", plot = comb"); data/ngspice-33+ds/src/frontend/plotting/pvec.c:67:9: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, ", plot = point"); data/ngspice-33+ds/src/frontend/plotting/pvec.c:92:9: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(buf, " [default scale]\n"); data/ngspice-33+ds/src/frontend/plotting/x11.c:75:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char txtcolor[16]; data/ngspice-33+ds/src/frontend/plotting/x11.c:76:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char bgcolor[16]; data/ngspice-33+ds/src/frontend/plotting/x11.c:77:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char fname[BSIZE_SP]; data/ngspice-33+ds/src/frontend/plotting/x11.c:93:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *xlinestyles[NUMLINESTYLES] = { /* test patterns XXX */ data/ngspice-33+ds/src/frontend/plotting/x11.c:113:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char fontname[513]; data/ngspice-33+ds/src/frontend/plotting/x11.c:149:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[512]; data/ngspice-33+ds/src/frontend/plotting/x11.c:154:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *argv[2]; data/ngspice-33+ds/src/frontend/plotting/x11.c:245:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], colorstring[BSIZE_SP]; data/ngspice-33+ds/src/frontend/plotting/x11.c:262:20: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "color%d", i); data/ngspice-33+ds/src/frontend/plotting/x11.c:289:25: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(colorstring, "RGBi:%.3f/%.3f/%.3f", c1, c2, c3); data/ngspice-33+ds/src/frontend/plotting/x11.c:347:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char text[4]; data/ngspice-33+ds/src/frontend/plotting/x11.c:535:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(fontname, "fixed"); data/ngspice-33+ds/src/frontend/plotting/x11.c:1003:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/plotting/x11.c:1004:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf2[128]; data/ngspice-33+ds/src/frontend/postcoms.c:129:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char numbuf[BSIZE_SP], numbuf2[BSIZE_SP]; /* Printnum buffers */ data/ngspice-33+ds/src/frontend/postcoms.c:332:16: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "Index "); data/ngspice-33+ds/src/frontend/postcoms.c:335:24: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf2, "%-16.15s", v->v_name); data/ngspice-33+ds/src/frontend/postcoms.c:342:32: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf2, "%-16.15s", v->v_name); data/ngspice-33+ds/src/frontend/postcoms.c:344:32: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf2, "%-32.31s", v->v_name); data/ngspice-33+ds/src/frontend/postcoms.c:346:28: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf2, "%-32.31s", v->v_name); data/ngspice-33+ds/src/frontend/postcoms.c:432:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *file, buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/postcoms.c:485:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&newplot, tpl, sizeof(struct plot)); data/ngspice-33+ds/src/frontend/postcoms.c:593:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *sbuf[6]; data/ngspice-33+ds/src/frontend/postcoms.c:648:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&newplot, tpl, sizeof(struct plot)); data/ngspice-33+ds/src/frontend/postsc.c:92:1: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char psfont[128], psfontsize[32], psscale[32], pscolor[32]; data/ngspice-33+ds/src/frontend/postsc.c:118:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char pswidth[30], psheight[30]; data/ngspice-33+ds/src/frontend/postsc.c:208:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(psfont, "Helvetica"); data/ngspice-33+ds/src/frontend/postsc.c:243:21: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((plotfile = fopen((char*)graph->devdep, "w")) == NULL) { data/ngspice-33+ds/src/frontend/postsc.c:497:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char colorN[30] = "", colorstring[30] = ""; data/ngspice-33+ds/src/frontend/postsc.c:498:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char rgb[30], s_red[30] = "0x", s_green[30] = "0x", s_blue[30] = "0x"; data/ngspice-33+ds/src/frontend/postsc.c:503:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(colorN, "color%d", colorid); data/ngspice-33+ds/src/frontend/postsc.c:517:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(colorstring, "%1.3f %1.3f %1.3f", data/ngspice-33+ds/src/frontend/postsc.c:525:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(colorstring, "%1.3f %1.3f %1.3f", colors[colorid].red/255.0, data/ngspice-33+ds/src/frontend/rawfile.c:50:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/rawfile.c:70:19: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(name, app ? "ab" : "wb")) == NULL) { data/ngspice-33+ds/src/frontend/rawfile.c:77:19: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(name, app ? "a" : "w")) == NULL) { data/ngspice-33+ds/src/frontend/rawfile.c:321:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], *s, *t, *r; data/ngspice-33+ds/src/frontend/rawfile.c:332:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(name, "rb")) == NULL) { data/ngspice-33+ds/src/frontend/rawfile.c:790:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(name, "w")) == NULL) { data/ngspice-33+ds/src/frontend/resource.c:451:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[1024]; data/ngspice-33+ds/src/frontend/resource.c:459:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen("/proc/self/statm", "r")) == NULL) { data/ngspice-33+ds/src/frontend/resource.c:507:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[2048]; data/ngspice-33+ds/src/frontend/resource.c:512:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen("/proc/meminfo", "r")) == NULL) { data/ngspice-33+ds/src/frontend/runcoms.c:202:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/runcoms.c:271:30: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((rawfileFp = fopen(wl->wl_word, "w")) == NULL) { data/ngspice-33+ds/src/frontend/runcoms.c:279:30: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((rawfileFp = fopen(wl->wl_word, "wb")) == NULL) { data/ngspice-33+ds/src/frontend/runcoms2.c:67:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/runcoms2.c:116:30: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((rawfileFp = fopen(last_used_rawfile, "a")) == NULL) { data/ngspice-33+ds/src/frontend/runcoms2.c:122:30: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((rawfileFp = fopen(last_used_rawfile, "ab")) == NULL) { data/ngspice-33+ds/src/frontend/runcoms2.c:130:32: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). else if (!(rawfileFp = fopen(last_used_rawfile, "a"))) { data/ngspice-33+ds/src/frontend/shyu.c:35:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/spec.c:89:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char window[BSIZE_SP]; data/ngspice-33+ds/src/frontend/spec.c:92:13: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(window, "hanning"); data/ngspice-33+ds/src/frontend/spiceif.c:201:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/spiceif.c:1382:12: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). file = fopen(wl->wl_next->wl_word, "rb"); data/ngspice-33+ds/src/frontend/spiceif.c:1634:12: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). file = fopen(wl->wl_word, "wb"); data/ngspice-33+ds/src/frontend/streams.c:86:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(fname, "r"); data/ngspice-33+ds/src/frontend/streams.c:145:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(fname, append ? "a" : "w+"); data/ngspice-33+ds/src/frontend/subckt.c:134:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char start[32], sbend[32], invoke[32], model[32]; data/ngspice-33+ds/src/frontend/subckt.c:136:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *global_nodes[N_GLOBAL_NODES]; data/ngspice-33+ds/src/frontend/subckt.c:217:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(start, ".subckt"); data/ngspice-33+ds/src/frontend/subckt.c:219:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(sbend, ".ends"); data/ngspice-33+ds/src/frontend/subckt.c:223:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(model, ".model"); data/ngspice-33+ds/src/frontend/subckt.c:225:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(model, ".model"); data/ngspice-33+ds/src/frontend/subckt.c:1174:23: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). dim = atoi(nametofree); /* convert returned string to int */ data/ngspice-33+ds/src/frontend/terminal.c:116:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char staticbuf[BUFSIZ]; data/ngspice-33+ds/src/frontend/terminal.c:157:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[16]; data/ngspice-33+ds/src/frontend/terminal.c:283:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char tbuf[1025]; data/ngspice-33+ds/src/frontend/terminal.c:284:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char buf2[100]; data/ngspice-33+ds/src/frontend/terminal.c:304:21: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). xsize = atoi(s); data/ngspice-33+ds/src/frontend/terminal.c:311:21: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). ysize = atoi(s); data/ngspice-33+ds/src/frontend/typesdef.c:328:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[128]; data/ngspice-33+ds/src/frontend/variable.c:255:27: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static const unsigned char p_ch0['p' - 'a' + 1] = { data/ngspice-33+ds/src/frontend/variable.c:758:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf((char*) retval, "%d", v->va_num); data/ngspice-33+ds/src/frontend/variable.c:760:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf((char*) retval, "%f", v->va_real); data/ngspice-33+ds/src/frontend/variable.c:896:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], *s; data/ngspice-33+ds/src/frontend/variable.c:919:20: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. (void) strcpy(buf, "EOF"); data/ngspice-33+ds/src/frontend/vectors.c:390:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *s, buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/vectors.c:506:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], *s, *wd, *word, *whole, *name = NULL, *param; data/ngspice-33+ds/src/frontend/vectors.c:783:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(nv->v_realdata, v->v_realdata, data/ngspice-33+ds/src/frontend/vectors.c:787:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(nv->v_compdata, v->v_compdata, data/ngspice-33+ds/src/frontend/vectors.c:814:12: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(nv->v_dims, v->v_dims, data/ngspice-33+ds/src/frontend/vectors.c:836:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/vectors.c:1060:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], *t, *s; data/ngspice-33+ds/src/frontend/vectors.c:1279:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf2[BSIZE_SP]; data/ngspice-33+ds/src/frontend/vectors.c:1310:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(d->v_realdata, v->v_realdata + (size_t) (size * i), data/ngspice-33+ds/src/frontend/vectors.c:1313:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(d->v_compdata, v->v_compdata + (size_t) (size * i), data/ngspice-33+ds/src/frontend/vectors.c:1403:11: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void)memcpy(nv->v_dims, v->v_dims, data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:26:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], colorstring[BSIZE_SP]; data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:37:16: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "color%d", i); data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:104:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], colorstring[BSIZE_SP]; data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:114:15: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void)sprintf(buf, "color%d", i); data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:135:23: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. (void)strcpy(colorstring, "black"); data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:161:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP], colorstring[BSIZE_SP]; data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:169:15: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void)sprintf(buf, "color%d", i); data/ngspice-33+ds/src/frontend/wdisp/wincolor.c:190:23: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. (void)strcpy(colorstring, "black"); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:125:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char facename[32]; data/ngspice-33+ds/src/frontend/wdisp/windisp.c:230:9: [2] (buffer) wchar_t: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. wchar_t wface[32]; data/ngspice-33+ds/src/frontend/wdisp/windisp.c:378:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/frontend/wdisp/windisp.c:379:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf2[128]; data/ngspice-33+ds/src/frontend/wdisp/windisp.c:702:5: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar(CP_UTF8, 0, graph->plotname, -1, wtext, n_byte_wide); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:703:5: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar(CP_UTF8, 0, WindowName, -1, wtext2, n_byte_wide2); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:1007:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char facename[32]; data/ngspice-33+ds/src/frontend/wdisp/windisp.c:1027:9: [2] (buffer) wchar_t: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. wchar_t wface[32]; data/ngspice-33+ds/src/frontend/wdisp/windisp.c:1049:5: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar(CP_UTF8, 0, text, -1, wtext, n_byte_wide); data/ngspice-33+ds/src/frontend/wdisp/winprint.c:310:9: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar(CP_UTF8, 0, graph->plotname, -1, wtext, data/ngspice-33+ds/src/frontend/wdisp/winprint.c:463:5: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar(CP_UTF8, 0, text, -1, wtext, n_byte_wide); data/ngspice-33+ds/src/hist_info.c:295:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_dst_cur, p_str_info_src->sz, n_byte_str_cur); data/ngspice-33+ds/src/hist_info.c:766:12: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_dst, str, n_char_str); data/ngspice-33+ds/src/include/ngspice/dstring.h:35:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char DS_CONCAT(ds_buf___, __LINE__)[n]; \ data/ngspice-33+ds/src/include/ngspice/dstring.h:201:20: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. return memcpy(p_ret, p_buf_active, n_byte_alloc); data/ngspice-33+ds/src/include/ngspice/graph.h:66:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ticchar[2]; data/ngspice-33+ds/src/include/ngspice/graph.h:75:17: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char units[GRAPH_UNITS_LENGTH]; /* unit labels */ data/ngspice-33+ds/src/include/ngspice/graph.h:86:17: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char units[GRAPH_UNITS_LENGTH]; /* unit labels */ data/ngspice-33+ds/src/include/ngspice/graph.h:90:17: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char units[GRAPH_UNITS_LENGTH]; /* unit labels */ data/ngspice-33+ds/src/include/ngspice/hash.h:165:2: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char cptr[80] ; \ data/ngspice-33+ds/src/include/ngspice/hash.h:166:2: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf( cptr, "%lx", (UNSIGNED_LONG) num) ; \ data/ngspice-33+ds/src/include/ngspice/hash.h:211:2: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char cptr[80] ; \ data/ngspice-33+ds/src/include/ngspice/hash.h:212:2: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf( cptr, "%lx", (UNSIGNED_LONG) ptr) ; \ data/ngspice-33+ds/src/include/ngspice/hlpdefs.h:34:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char subject[64]; data/ngspice-33+ds/src/include/ngspice/ngspice.h:189:9: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). #define open _open data/ngspice-33+ds/src/include/ngspice/ngspice.h:223:9: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). #define fopen newfopen data/ngspice-33+ds/src/include/ngspice/swec.h:119:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[10]; /* device name */ data/ngspice-33+ds/src/include/ngspice/swec.h:125:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[10]; data/ngspice-33+ds/src/include/ngspice/swec.h:160:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[10]; data/ngspice-33+ds/src/include/ngspice/swec.h:173:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[10]; data/ngspice-33+ds/src/include/ngspice/swec.h:187:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char id[24]; data/ngspice-33+ds/src/include/ngspice/wincolornames.h:11:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[32]; data/ngspice-33+ds/src/main.c:78:1: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char history_file[512] = {'\0'}; data/ngspice-33+ds/src/main.c:540:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char pbuf[128]; data/ngspice-33+ds/src/main.c:561:18: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. p += sprintf(p, "%d", where_history() + 1); data/ngspice-33+ds/src/main.c:611:5: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(history_file, "/."); data/ngspice-33+ds/src/main.c:613:5: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(history_file, "_history"); data/ngspice-33+ds/src/main.c:721:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/main.c:763:20: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE *fp = fopen(path, "r"); data/ngspice-33+ds/src/main.c:792:27: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE * const fp = fopen(fname, "r"); data/ngspice-33+ds/src/main.c:795:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/main.c:812:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char log_file[BSIZE_SP]; data/ngspice-33+ds/src/main.c:813:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char soa_log_file[BSIZE_SP]; data/ngspice-33+ds/src/main.c:972:37: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((circuit_file = fopen(optarg, "r")) == NULL) { data/ngspice-33+ds/src/main.c:1065:17: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). flogp = fopen(log_file, "w"); data/ngspice-33+ds/src/main.c:1087:17: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). slogp = fopen(soa_log_file, "w"); data/ngspice-33+ds/src/main.c:1258:30: [2] (tmpfile) tmpfile: Function tmpfile() has a security flaw on some systems (e.g., older System V systems) (CWE-377). FILE *tempfile = tmpfile(); data/ngspice-33+ds/src/main.c:1270:28: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). tempfile = fopen(tpf, "w+bTD"); data/ngspice-33+ds/src/main.c:1301:22: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). tp = fopen(arg, "r"); data/ngspice-33+ds/src/main.c:1307:30: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). tp = fopen(p, "r"); data/ngspice-33+ds/src/makeidx.c:22:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/makeidx.c:24:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char subject[BSIZE_SP]; data/ngspice-33+ds/src/makeidx.c:27:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(fp = fopen(src, "r"))) { data/ngspice-33+ds/src/makeidx.c:32:17: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(wfp = fopen(dst, "wb"))) { data/ngspice-33+ds/src/makeidx.c:61:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/maths/cmaths/cmath1.c:220:12: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. return memcpy(alloc_d(length), data, (unsigned int) length * sizeof(double)); data/ngspice-33+ds/src/maths/cmaths/cmath4.c:518:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char window[BSIZE_SP]; data/ngspice-33+ds/src/maths/cmaths/cmath4.c:619:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(window, "none"); data/ngspice-33+ds/src/maths/ni/niiter.c:158:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(OldCKTstate0, ckt->CKTstate0, data/ngspice-33+ds/src/maths/poly/interpolate.c:63:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ydata, data, (size_t) (degree + 1) * sizeof (double)); data/ngspice-33+ds/src/maths/poly/interpolate.c:64:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(xdata, oscale, (size_t) (degree + 1) * sizeof (double)); data/ngspice-33+ds/src/maths/poly/polyfit.c:29:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(mat2, ydata, (size_t) (n) * sizeof(double)); data/ngspice-33+ds/src/maths/sparse/spoutput.c:452:24: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((pMatrixFile = fopen(File, "w")) == NULL) data/ngspice-33+ds/src/maths/sparse/spoutput.c:608:23: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). pMatrixFile = fopen(File,"a"); data/ngspice-33+ds/src/maths/sparse/spoutput.c:700:23: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((pStatsFile = fopen(File, "a")) == NULL) data/ngspice-33+ds/src/misc/dstring.c:143:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_dst, p_src, n_char); data/ngspice-33+ds/src/misc/dstring.c:233:12: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_buf_new, p_ds->p_buf, p_ds->length + 1); data/ngspice-33+ds/src/misc/dstring.c:341:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_ds->p_stack_buf, p_ds->p_buf, n_byte_alloc_min); data/ngspice-33+ds/src/misc/dstring.c:408:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char p_buf[30] = "Hello World"; data/ngspice-33+ds/src/misc/dstring.c:424:12: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_buf, "Heap", 4); data/ngspice-33+ds/src/misc/getopt_long_bsd.c:175:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. ((char **) nargv)[pos] = nargv[cstart]; data/ngspice-33+ds/src/misc/getopt_long_bsd.c:177:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. ((char **)nargv)[cstart] = swap; data/ngspice-33+ds/src/misc/ivars.c:104:23: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). AsciiRawFile = atoi(temp); data/ngspice-33+ds/src/misc/misc_time.c:47:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char tbuf[45]; data/ngspice-33+ds/src/misc/misc_time.c:56:12: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(tbuf, "%.20s", ap); data/ngspice-33+ds/src/misc/printnum.c:44:12: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "%.*e", n, num); data/ngspice-33+ds/src/misc/string.c:89:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/misc/tilde.c:65:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf_fixed[100]; data/ngspice-33+ds/src/misc/tilde.c:78:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(buf, usr_start, n_char_usr); data/ngspice-33+ds/src/misc/tilde.c:121:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf_sh_path[MAX_PATH]; data/ngspice-33+ds/src/misc/tilde.c:219:12: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(*p_dst, src, n_byte_src); data/ngspice-33+ds/src/misc/util.c:271:5: [2] (buffer) wchar_t: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. wchar_t wfn[BSIZE_SP]; data/ngspice-33+ds/src/misc/util.c:272:5: [2] (buffer) wchar_t: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. wchar_t wmd[16]; data/ngspice-33+ds/src/misc/util.c:273:5: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar(CP_UTF8, 0, md, -1, wmd, 15); data/ngspice-33+ds/src/misc/util.c:274:9: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). if (MultiByteToWideChar(CP_UTF8, 0, fn, -1, wfn, BSIZE_SP - 1) == 0) { data/ngspice-33+ds/src/misc/wlist.c:122:11: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. const char * list_of_1_word[2]; data/ngspice-33+ds/src/nghelp.c:47:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *argv[2]; data/ngspice-33+ds/src/nghelp.c:49:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[512]; data/ngspice-33+ds/src/ngproc2mod.c:68:13: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). p = fopen(filename,"r"); data/ngspice-33+ds/src/ngproc2mod.c:80:13: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). m = fopen(filename,"w"); data/ngspice-33+ds/src/ngsconvert.c:28:1: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char cp_chars[128]; data/ngspice-33+ds/src/ngsconvert.c:69:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[20]; data/ngspice-33+ds/src/ngsconvert.c:85:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/ngsconvert.c:94:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(fp = fopen(name, "r"))) { data/ngspice-33+ds/src/ngsconvert.c:206:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[80]; data/ngspice-33+ds/src/ngsconvert.c:210:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(fp = fopen(name, app ? "a" : "w"))) { data/ngspice-33+ds/src/ngsconvert.c:315:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BSIZE_SP]; data/ngspice-33+ds/src/ngsconvert.c:343:24: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(fp = fopen(infile, "w"))) { data/ngspice-33+ds/src/ngsconvert.c:415:20: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!(fp = fopen(outfile, "r"))) { data/ngspice-33+ds/src/sharedspice.c:138:9: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). #define open _open data/ngspice-33+ds/src/sharedspice.c:483:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024] = ""; data/ngspice-33+ds/src/sharedspice.c:606:20: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). FILE *fp = fopen(path, "r"); data/ngspice-33+ds/src/sharedspice.c:1172:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/sharedspice.c:1303:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char inpconv[2]; data/ngspice-33+ds/src/sharedspice.c:1308:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(inpconv, "%c", inp); data/ngspice-33+ds/src/sharedspice.c:1316:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char inpconv[2]; data/ngspice-33+ds/src/sharedspice.c:1321:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(inpconv, "%c", inp); data/ngspice-33+ds/src/sharedspice.c:1633:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char OldAn[128]; /* Previous analysis type */ data/ngspice-33+ds/src/sharedspice.c:1634:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char olds[128]; /* previous output */ data/ngspice-33+ds/src/sharedspice.c:1639:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char OldAn1[128]; /* Previous analysis type */ data/ngspice-33+ds/src/sharedspice.c:1640:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char olds1[128]; /* previous output */ data/ngspice-33+ds/src/sharedspice.c:1644:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char OldAn2[128]; /* Previous analysis type */ data/ngspice-33+ds/src/sharedspice.c:1645:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char olds2[128]; /* previous output */ data/ngspice-33+ds/src/sharedspice.c:1697:11: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(s, "--ready--"); data/ngspice-33+ds/src/sharedspice.c:1710:8: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf( s, "--ready--"); data/ngspice-33+ds/src/sharedspice.c:1730:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf( s, "--ready--"); data/ngspice-33+ds/src/sharedspice.c:1854:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char type_name[128]; data/ngspice-33+ds/src/spicelib/analysis/cktop.c:191:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(OldCKTstate0, ckt->CKTstate0, data/ngspice-33+ds/src/spicelib/analysis/cktop.c:223:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate0, OldCKTstate0, data/ngspice-33+ds/src/spicelib/analysis/cktop.c:374:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(OldCKTstate0, ckt->CKTstate0, data/ngspice-33+ds/src/spicelib/analysis/cktop.c:408:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate0, OldCKTstate0, data/ngspice-33+ds/src/spicelib/analysis/cktop.c:533:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(OldCKTstate0, ckt->CKTstate0, data/ngspice-33+ds/src/spicelib/analysis/cktop.c:560:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(OldCKTstate0, ckt->CKTstate0, data/ngspice-33+ds/src/spicelib/analysis/cktop.c:598:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate0, OldCKTstate0, data/ngspice-33+ds/src/spicelib/analysis/cktpzstr.c:70:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *snames[ ] = { data/ngspice-33+ds/src/spicelib/analysis/cktsens.c:86:2: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char namebuf[513]; data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:21:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char msg_buf[513]; data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:45:6: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(msg_p, "initial timepoint: "); data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:47:6: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(msg_p, "time = %g, timestep = %g: ", ckt->CKTtime, data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:52:2: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(msg_p, "frequency = %g: ", ckt->CKTomega / (2.0 * M_PI)); data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:88:2: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(msg_p, "cause unrecorded.\n"); data/ngspice-33+ds/src/spicelib/analysis/cluster.c:23:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char remote[32]; data/ngspice-33+ds/src/spicelib/analysis/cluster.c:24:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char local[32]; data/ngspice-33+ds/src/spicelib/analysis/cluster.c:43:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char local[32]; data/ngspice-33+ds/src/spicelib/analysis/cluster.c:44:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char remote[32]; data/ngspice-33+ds/src/spicelib/analysis/cluster.c:113:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char hostname[64]; data/ngspice-33+ds/src/spicelib/analysis/dcpss.c:363:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate1, ckt->CKTstate0, data/ngspice-33+ds/src/spicelib/analysis/dcpss.c:1372:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate2, ckt->CKTstate1, data/ngspice-33+ds/src/spicelib/analysis/dcpss.c:1374:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate3, ckt->CKTstate1, data/ngspice-33+ds/src/spicelib/analysis/dctran.c:319:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate1, ckt->CKTstate0, data/ngspice-33+ds/src/spicelib/analysis/dctran.c:763:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate2, ckt->CKTstate1, data/ngspice-33+ds/src/spicelib/analysis/dctran.c:765:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate3, ckt->CKTstate1, data/ngspice-33+ds/src/spicelib/analysis/dctrcurv.c:447:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ckt->CKTstate1, ckt->CKTstate0, data/ngspice-33+ds/src/spicelib/analysis/pzan.c:135:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[50]; data/ngspice-33+ds/src/spicelib/analysis/pzan.c:143:2: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(name, "pole(%-u)", i+1); data/ngspice-33+ds/src/spicelib/analysis/pzan.c:147:2: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(name, "zero(%-u)", i+1); data/ngspice-33+ds/src/spicelib/devices/bjt/bjtinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *BJTnames[ ]; data/ngspice-33+ds/src/spicelib/devices/bjt/bjtnoise.c:41:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *BJTnNames[BJTNSRCS] = { data/ngspice-33+ds/src/spicelib/devices/bsim1/b1noi.c:40:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *B1nNames[B1NSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/bsim1/bsim1init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *B1names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsim2/b2noi.c:40:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *B2nNames[B2NSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/bsim2/bsim2init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *B2names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsim3/b3check.c:34:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("b3v33check.log", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim3/b3noi.c:131:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *BSIM3nNames[BSIM3NSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim3/bsim3init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *BSIM3names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddacld.c:60:28: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fpdebug = fopen("b3soiddac.log", "a"); data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddcheck.c:31:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("b3soiddv2check.log", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:302:1: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char nanmessage [12]; data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:319:27: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fpdebug = fopen("b3soiddn.log", "a"); data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:321:27: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fpdebug = fopen("b3soiddp.log", "a"); data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4221:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GbPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4223:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EbPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4225:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPbPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4227:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPbPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4229:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "BbPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4231:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "BgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4233:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "BePtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4235:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "BdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4237:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "BspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4240:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4242:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4244:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4246:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4248:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4250:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4252:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4254:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4256:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4258:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EePtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4266:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4268:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4270:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4272:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GePtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4274:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPePtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4276:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPePtr"); } } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4284:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TemptempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4286:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4288:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempbPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4290:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempePtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4292:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4294:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4296:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4298:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4300:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4302:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4304:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "BtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4306:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "tempNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4316:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "gNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4319:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "bNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4322:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "dpNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4325:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "spNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddld.c:4328:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "eNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_dd/b3soiddnoi.c:118:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *B3SOIDDnNames[B3SOIDDNSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdacld.c:61:28: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fpdebug = fopen("b3soifdac.log", "a"); data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdcheck.c:31:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("b3soifdv2check.log", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:273:1: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char nanmessage [12]; data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:289:27: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fpdebug = fopen("b3soifdn.log", "a"); data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:291:27: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fpdebug = fopen("b3soifdp.log", "a"); data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3328:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3330:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3332:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3334:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3336:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3338:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3340:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3342:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3344:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3346:22: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EePtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3354:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3356:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3358:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3360:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GePtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3362:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPePtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3364:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPePtr"); } } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3372:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TemptempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3374:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempgPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3376:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempbPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3378:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempePtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3380:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempdpPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3382:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "TempspPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3384:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "GtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3386:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "DPtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3388:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "SPtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3390:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "EtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3392:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "BtempPtr"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3394:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "tempNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3404:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "gNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3407:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "bNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3410:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "dpNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3413:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "spNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdld.c:3416:25: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. { strcpy (nanmessage, "eNode"); } data/ngspice-33+ds/src/spicelib/devices/bsim3soi_fd/b3soifdnoi.c:118:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *B3SOIFDnNames[B3SOIFDNSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdcheck.c:35:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("b3soipdv223check.log", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim3soi_pd/b3soipdnoi.c:122:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *B3SOIPDnNames[B3SOIPDNSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim3v0/b3v0noi.c:92:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *BSIM3v0nNames[BSIM3v0NSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim3v0/bsim3v0init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *BSIM3v0names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1check.c:32:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("b3v3_1check.log", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim3v1/b3v1noi.c:115:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *BSIM3v1nNames[BSIM3v1NSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim3v1/bsim3v1init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *BSIM3v1names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32check.c:31:16: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("b3v32check.log", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim3v32/b3v32noi.c:200:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *BSIM3v32nNames[BSIM3v32NSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim3v32/bsim3v32init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *BSIM3v32names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsim4/b4check.c:80:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("bsim4.out", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim4/b4noi.c:152:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *BSIM4nNames[BSIM4NSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim4/bsim4init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *BSIM4names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5check.c:36:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("bsim4v5.out", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim4v5/b4v5noi.c:104:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *BSIM4v5nNames[BSIM4v5NSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim4v5/bsim4v5init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *BSIM4v5names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6check.c:41:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("bsim4v6.out", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim4v6/b4v6noi.c:105:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *BSIM4v6nNames[BSIM4v6NSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim4v6/bsim4v6init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *BSIM4v6names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7check.c:42:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("bsim4.out", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsim4v7/b4v7noi.c:113:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *BSIM4v7nNames[BSIM4v7NSRCS] = data/ngspice-33+ds/src/spicelib/devices/bsim4v7/bsim4v7init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *BSIM4v7names[ ]; data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soicheck.c:40:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fplog = fopen("b4soiv1check.log", "w")) != NULL) data/ngspice-33+ds/src/spicelib/devices/bsimsoi/b4soinoi.c:129:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *B4SOInNames[B4SOINSRCS] = data/ngspice-33+ds/src/spicelib/devices/cap/capinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *CAPnames[ ]; data/ngspice-33+ds/src/spicelib/devices/cccs/cccsinit.h:5:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *CCCSnames[ ]; data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsinit.h:5:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *CCVSnames[ ]; data/ngspice-33+ds/src/spicelib/devices/cpl/cplinit.h:8:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *CPLnames[ ]; data/ngspice-33+ds/src/spicelib/devices/cpl/cplmpar.c:25:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(*dst, value->v.vec.rVec, (size_t) n * sizeof(double)); data/ngspice-33+ds/src/spicelib/devices/cpl/cplsetup.c:219:21: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(branchname[m], "branch1_%d", m); data/ngspice-33+ds/src/spicelib/devices/cpl/cplsetup.c:233:21: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(branchname[m], "branch2_%d", m); data/ngspice-33+ds/src/spicelib/devices/dev.c:310:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char libname[50]; data/ngspice-33+ds/src/spicelib/devices/dev.c:315:3: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(libname, "lib"); data/ngspice-33+ds/src/spicelib/devices/dev.c:317:3: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(libname,".so"); data/ngspice-33+ds/src/spicelib/devices/dev.c:326:3: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(libname, "get_"); data/ngspice-33+ds/src/spicelib/devices/dev.c:328:3: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat(libname,"_info"); data/ngspice-33+ds/src/spicelib/devices/dev.c:508:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char errstr[sizeof errstr_fmt - 3 + 3 * sizeof(unsigned long)]; data/ngspice-33+ds/src/spicelib/devices/dio/dioinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *DIOnames[ ]; data/ngspice-33+ds/src/spicelib/devices/dio/dionoise.c:42:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *DIOnNames[DIONSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *HFETAnames[ ]; data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *HFET2names[ ]; data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *HSM2names[ ]; data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2ld.c:1478:1: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf( mos_model_name , "HiSIM 240BSC1" ) ; data/ngspice-33+ds/src/spicelib/devices/hisim2/hsm2noi.c:97:10: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char * HSM2nNames[HSM2NSRCS] = { data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *HSMHVnames[ ]; data/ngspice-33+ds/src/spicelib/devices/hisimhv1/hsmhvnoi.c:55:10: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char * HSMHVnNames[HSMHVNSRCS] = { data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *HSMHV2names[ ]; data/ngspice-33+ds/src/spicelib/devices/hisimhv2/hsmhv2noi.c:97:10: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char * HSMHV2nNames[HSMHV2NSRCS] = { data/ngspice-33+ds/src/spicelib/devices/ind/indinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *INDnames[ ]; data/ngspice-33+ds/src/spicelib/devices/isrc/isrcinit.h:5:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *ISRCnames[ ]; data/ngspice-33+ds/src/spicelib/devices/isrc/isrcpar.c:28:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(here->ISRCcoeffs, value->v.vec.rVec, (size_t) n * sizeof(double)); data/ngspice-33+ds/src/spicelib/devices/jfet/jfetinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *JFETnames[ ]; data/ngspice-33+ds/src/spicelib/devices/jfet/jfetnoi.c:41:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *JFETnNames[JFETNSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *JFET2names[ ]; data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2noi.c:43:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *JFET2nNames[JFET2NSRCS] = { data/ngspice-33+ds/src/spicelib/devices/ltra/ltrainit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *LTRAnames[ ]; data/ngspice-33+ds/src/spicelib/devices/mes/mesinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *MESnames[ ]; data/ngspice-33+ds/src/spicelib/devices/mes/mesnoise.c:40:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *MESnNames[MESNSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/mesa/mesainit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *MESAnames[ ]; data/ngspice-33+ds/src/spicelib/devices/mos1/mos1init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *MOS1names[ ]; data/ngspice-33+ds/src/spicelib/devices/mos1/mos1noi.c:42:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *MOS1nNames[MOS1NSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/mos2/mos2init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *MOS2names[ ]; data/ngspice-33+ds/src/spicelib/devices/mos2/mos2noi.c:41:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *MOS2nNames[MOS2NSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/mos3/mos3init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *MOS3names[ ]; data/ngspice-33+ds/src/spicelib/devices/mos3/mos3noi.c:41:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *MOS3nNames[MOS3NSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/mos6/mos6init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *MOS6names[ ]; data/ngspice-33+ds/src/spicelib/devices/mos9/mos9init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *MOS9names[ ]; data/ngspice-33+ds/src/spicelib/devices/mos9/mos9noi.c:41:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *MOS9nNames[MOS9NSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdump.c:35:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char fileName[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdump.c:36:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char description[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdump.c:44:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "..."); data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdump.c:48:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "sweep = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdump.c:52:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "time = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtdump.c:71:17: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpState = fopen(fileName, "wb")) == NULL) { data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *NBJTnames[ ]; data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjtset.c:194:4: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(ONEmaterial)); data/ngspice-33+ds/src/spicelib/devices/nbjt/nbjttemp.c:79:2: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(ONEmaterial)); data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2dump.c:36:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char fileName[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2dump.c:37:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char description[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2dump.c:45:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "..."); data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2dump.c:49:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "sweep = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2dump.c:53:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "time = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2dump.c:72:17: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpState = fopen(fileName, "wb")) == NULL) { data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *NBJT2names[ ]; data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2set.c:216:4: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(TWOmaterial)); data/ngspice-33+ds/src/spicelib/devices/nbjt2/nbt2temp.c:85:2: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(TWOmaterial)); data/ngspice-33+ds/src/spicelib/devices/ndev/ndevdefs.h:37:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *bname[7]; /* the electrode boundary label for numerical solver */ data/ngspice-33+ds/src/spicelib/devices/ndev/ndevexch.h:45:1: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char NDEVname[32]; data/ngspice-33+ds/src/spicelib/devices/ndev/ndevexch.h:52:1: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[32]; data/ngspice-33+ds/src/spicelib/devices/ndev/ndevinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *NDEVnames[ ]; data/ngspice-33+ds/src/spicelib/devices/ndev/ndevset.c:82:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char dotted_ip[15]; /* Buffer for converting data/ngspice-33+ds/src/spicelib/devices/ndev/ndevset.c:133:3: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&sa.sin_addr, hostlist->h_addr_list[0], data/ngspice-33+ds/src/spicelib/devices/numd/numddump.c:35:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char fileName[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/numd/numddump.c:36:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char description[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/numd/numddump.c:44:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "..."); data/ngspice-33+ds/src/spicelib/devices/numd/numddump.c:48:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "sweep = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/numd/numddump.c:52:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "time = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/numd/numddump.c:71:17: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpState = fopen(fileName, "wb")) == NULL) { data/ngspice-33+ds/src/spicelib/devices/numd/numdinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *NUMDnames[ ]; data/ngspice-33+ds/src/spicelib/devices/numd/numdset.c:189:4: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(ONEmaterial)); data/ngspice-33+ds/src/spicelib/devices/numd/numdtemp.c:78:2: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(ONEmaterial)); data/ngspice-33+ds/src/spicelib/devices/numd2/nud2dump.c:36:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char fileName[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/numd2/nud2dump.c:37:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char description[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/numd2/nud2dump.c:45:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "..."); data/ngspice-33+ds/src/spicelib/devices/numd2/nud2dump.c:49:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "sweep = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/numd2/nud2dump.c:53:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "time = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/numd2/nud2dump.c:72:17: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpState = fopen(fileName, "wb")) == NULL) { data/ngspice-33+ds/src/spicelib/devices/numd2/nud2set.c:214:4: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(TWOmaterial)); data/ngspice-33+ds/src/spicelib/devices/numd2/nud2temp.c:83:2: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(TWOmaterial)); data/ngspice-33+ds/src/spicelib/devices/numd2/numd2init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *NUMD2names[ ]; data/ngspice-33+ds/src/spicelib/devices/numos/nummdump.c:36:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char fileName[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/numos/nummdump.c:37:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char description[BSIZE_SP]; data/ngspice-33+ds/src/spicelib/devices/numos/nummdump.c:45:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "..."); data/ngspice-33+ds/src/spicelib/devices/numos/nummdump.c:49:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "sweep = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/numos/nummdump.c:53:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(description, "time = % e", ckt->CKTtime); data/ngspice-33+ds/src/spicelib/devices/numos/nummdump.c:72:17: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fpState = fopen(fileName, "wb")) == NULL) { data/ngspice-33+ds/src/spicelib/devices/numos/nummset.c:213:4: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(TWOmaterial)); data/ngspice-33+ds/src/spicelib/devices/numos/nummtemp.c:84:2: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pMaterial, pM, sizeof(TWOmaterial)); data/ngspice-33+ds/src/spicelib/devices/numos/numosinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *NUMOSnames[ ]; data/ngspice-33+ds/src/spicelib/devices/res/resinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *RESnames[ ]; data/ngspice-33+ds/src/spicelib/devices/res/resnoise.c:46:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *RESnNames[RESNSRCS] = { data/ngspice-33+ds/src/spicelib/devices/soi3/soi3init.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *SOI3names[ ]; data/ngspice-33+ds/src/spicelib/devices/soi3/soi3nois.c:64:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *SOI3nNames[SOI3NSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/tra/trainit.h:5:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *TRAnames[ ]; data/ngspice-33+ds/src/spicelib/devices/txl/txlinit.h:13:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *TXLnames[ ]; data/ngspice-33+ds/src/spicelib/devices/urc/urcinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *URCnames[ ]; data/ngspice-33+ds/src/spicelib/devices/vbic/vbicinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *VBICnames[ ]; data/ngspice-33+ds/src/spicelib/devices/vbic/vbicnoise.c:42:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *VBICnNames[VBICNSRCS] = { data/ngspice-33+ds/src/spicelib/devices/vccs/vccsinit.h:5:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *VCCSnames[ ]; data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsinit.h:5:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *VCVSnames[ ]; data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosinit.h:6:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *VDMOSnames[ ]; data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosnoi.c:43:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *VDMOSnNames[VDMOSNSRCS] = { /* Note that we have to keep the order */ data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcinit.h:5:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. extern char *VSRCnames[ ]; data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcpar.c:28:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(here->VSRCcoeffs, value->v.vec.rVec, (size_t) n * sizeof(double)); data/ngspice-33+ds/src/spicelib/parser/inp2n.c:34:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *nname[7]; /* the array of CKT node's name */ data/ngspice-33+ds/src/spicelib/parser/inp2n.c:35:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *bname[7]; /* the array of NDEV electrode's name */ data/ngspice-33+ds/src/spicelib/parser/inp2r.c:123:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(p + left_length, " tc2="); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:125:29: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(internal1, "txlnd1"); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:135:29: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(rname1, "txlres1"); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:146:29: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(internal2, "txlnd2"); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:150:29: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(rname2, "txlres2"); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:162:29: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(rname3, "txlres3"); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:180:29: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(cname1, "txlcap1"); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:191:29: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(cname2, "txlcap2"); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:203:29: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(cname3, "txlcap3"); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:215:29: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(cname4, "txlcap4"); data/ngspice-33+ds/src/spicelib/parser/inpdomod.c:24:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ver[100]; data/ngspice-33+ds/src/spicelib/parser/inpdoopt.c:72:16: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. (void) strcpy(errmsg," Error: unknown option - ignored\n"); data/ngspice-33+ds/src/spicelib/parser/inperrc.c:68:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_cur, a, n_a); data/ngspice-33+ds/src/spicelib/parser/inperrc.c:71:16: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_cur, b, n_b); data/ngspice-33+ds/src/spicelib/parser/inpfindv.c:34:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf( version, "default" ); data/ngspice-33+ds/src/spicelib/parser/inpptree-parser.c:1008:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; data/ngspice-33+ds/src/spicelib/parser/inpptree-parser.c:1221:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char yymsgbuf[128]; data/ngspice-33+ds/src/spicelib/parser/inpptree.c:1052:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[128]; data/ngspice-33+ds/src/spicelib/parser/inpptree.c:1187:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[128]; data/ngspice-33+ds/src/tclspice.c:77:9: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). #define open _open data/ngspice-33+ds/src/tclspice.c:239:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[256]; data/ngspice-33+ds/src/tclspice.c:264:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[256]; data/ngspice-33+ds/src/tclspice.c:296:38: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). if (!(pl = get_plot_by_index(atoi(argv[1])))) { data/ngspice-33+ds/src/tclspice.c:430:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. blt = (char *)argv[1]; data/ngspice-33+ds/src/tclspice.c:474:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. var = (char *)argv[1]; data/ngspice-33+ds/src/tclspice.c:487:9: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). j = atoi(argv[2]); data/ngspice-33+ds/src/tclspice.c:535:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. var = (char *)argv[1]; data/ngspice-33+ds/src/tclspice.c:542:16: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. realBlt = (char *)argv[2]; data/ngspice-33+ds/src/tclspice.c:549:20: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. imagBlt = (char *)argv[3]; data/ngspice-33+ds/src/tclspice.c:612:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. var = (char *)argv[1]; data/ngspice-33+ds/src/tclspice.c:613:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. blt = (char *)argv[2]; data/ngspice-33+ds/src/tclspice.c:634:17: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). start = atoi(argv[3]); data/ngspice-33+ds/src/tclspice.c:636:17: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). end = atoi(argv[4]); data/ngspice-33+ds/src/tclspice.c:743:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024] = ""; data/ngspice-33+ds/src/tclspice.c:883:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:903:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[256]; data/ngspice-33+ds/src/tclspice.c:913:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:947:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. name = (char *)argv[1]; data/ngspice-33+ds/src/tclspice.c:948:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[2]); data/ngspice-33+ds/src/tclspice.c:949:13: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). index = atoi(argv[3]); data/ngspice-33+ds/src/tclspice.c:985:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:1012:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:1035:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:1057:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:1079:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:1106:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:1132:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:1169:12: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). plot = atoi(argv[1]); data/ngspice-33+ds/src/tclspice.c:1176:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. var = (char *)argv[2]; data/ngspice-33+ds/src/tclspice.c:1177:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. blt = (char *)argv[3]; data/ngspice-33+ds/src/tclspice.c:1196:17: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). start = atoi(argv[4]); data/ngspice-33+ds/src/tclspice.c:1198:17: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). end = atoi(argv[5]); data/ngspice-33+ds/src/tclspice.c:1246:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/tclspice.c:1255:13: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). outfd = open("/tmp/tclspice.tmp_out", O_WRONLY|O_CREAT|O_TRUNC, S_IRWXU); data/ngspice-33+ds/src/tclspice.c:1258:18: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). outfd2 = open("/tmp/tclspice.tmp_err", O_WRONLY|O_CREAT|O_TRUNC, S_IRWXU); data/ngspice-33+ds/src/tclspice.c:1284:14: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). pipein = fopen("/tmp/tclspice.tmp_out", "r"); data/ngspice-33+ds/src/tclspice.c:1294:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). pipein = fopen("/tmp/tclspice.tmp_err", "r"); data/ngspice-33+ds/src/tclspice.c:1314:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[128]; data/ngspice-33+ds/src/tclspice.c:1325:15: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. device = (char *)argv[1]; data/ngspice-33+ds/src/tclspice.c:1326:15: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. param = (char *)argv[2]; data/ngspice-33+ds/src/tclspice.c:1362:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[128]; data/ngspice-33+ds/src/tclspice.c:1376:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. name = (char *)argv[1]; data/ngspice-33+ds/src/tclspice.c:1378:22: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. paramname = (char *)argv[2]; data/ngspice-33+ds/src/tclspice.c:1419:17: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "%g", pv.rValue); /* dataType is here always real */ data/ngspice-33+ds/src/tclspice.c:1608:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/tclspice.c:1609:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "spice_gr_DrawLine %i %i %i %i", x1, y1, x2, y2); data/ngspice-33+ds/src/tclspice.c:1622:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/tclspice.c:1623:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "spice_gr_Arc %i %i %i %f %f", x0, y0, radius, theta, delta_theta); data/ngspice-33+ds/src/tclspice.c:1638:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/tclspice.c:1653:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/tclspice.c:1654:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "spice_gr_DefineColor %i %g %g %g", colorid, red, green, blue); data/ngspice-33+ds/src/tclspice.c:1667:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/tclspice.c:1668:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "spice_gr_DefineLinestyle %i %i", linestyleid, mask); data/ngspice-33+ds/src/tclspice.c:1681:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/tclspice.c:1682:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "spice_gr_SetLinestyle %i", linestyleid); data/ngspice-33+ds/src/tclspice.c:1695:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/tclspice.c:1696:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buf, "spice_gr_SetColor %i", colorid); data/ngspice-33+ds/src/tclspice.c:1773:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/tclspice.c:1820:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ident[16]; data/ngspice-33+ds/src/tclspice.c:1833:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[16]; data/ngspice-33+ds/src/tclspice.c:1906:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char buf[512]; data/ngspice-33+ds/src/tclspice.c:2117:27: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). triggerPollTime = atoi(argv[2]); data/ngspice-33+ds/src/tclspice.c:2155:21: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). stepCount = atoi(argv[2]); data/ngspice-33+ds/src/tclspice.c:2161:24: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). stepPollTime = atoi(argv[3]); data/ngspice-33+ds/src/tclspice.c:2181:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ident[16]; data/ngspice-33+ds/src/tclspice.c:2206:16: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). type = atoi(argv[4]); data/ngspice-33+ds/src/tclspice.c:2291:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. var = (char *)argv[1]; data/ngspice-33+ds/src/tclspice.c:2302:16: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). type = atoi(argv[4]); data/ngspice-33+ds/src/tclspice.c:2478:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[256]; data/ngspice-33+ds/src/tclspice.c:2537:23: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen("spice.rc", "r")) != NULL) { data/ngspice-33+ds/src/tclspice.c:2631:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/unsupported/spiced.c:82:23: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). maxjobs = atoi(av[1]); data/ngspice-33+ds/src/unsupported/spiced.c:119:16: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). (void) open("/", O_RDONLY); data/ngspice-33+ds/src/unsupported/spiced.c:122:13: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). i = open("/dev/tty", O_RDWR); data/ngspice-33+ds/src/unsupported/spiced.c:137:14: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(Spiced_Log, "a"); data/ngspice-33+ds/src/unsupported/spiced.c:148:26: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(Spiced_Log, "a"); data/ngspice-33+ds/src/unsupported/spiced.c:180:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BUFSIZ], user[16], host[32], program[128]; data/ngspice-33+ds/src/unsupported/spiced.c:181:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *argv[3], *t; data/ngspice-33+ds/src/unsupported/spiced.c:209:14: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(Spiced_Log, "a"); data/ngspice-33+ds/src/unsupported/spiced.c:244:12: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. (void) sprintf(buf, "%d:%d.%6d", ru.ru_utime.tv_sec / 60, data/ngspice-33+ds/src/unsupported/spiced.c:251:12: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. (void) strcpy(buf, "unknown"); data/ngspice-33+ds/src/unsupported/spiced.c:253:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(Spiced_Log, "a"); data/ngspice-33+ds/src/unsupported/spiced.c:271:14: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(Spiced_Log, "a"); data/ngspice-33+ds/src/winmain.c:74:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. typedef char SBufLine[SBufSize + 1]; // Eingabezeile data/ngspice-33+ds/src/winmain.c:119:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char TBuffer[TBufSize + 1]; /* Text buffer */ data/ngspice-33+ds/src/winmain.c:194:9: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar(CP_UTF8, 0, Name, -1, NameW, 2 * (int)strlen(Name) + 1); data/ngspice-33+ds/src/winmain.c:215:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char OldAn[128]; /* Previous analysis type */ data/ngspice-33+ds/src/winmain.c:216:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char s[128], t[128]; /* outputs to analysis window and task bar */ data/ngspice-33+ds/src/winmain.c:244:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(s, " -- ready --"); data/ngspice-33+ds/src/winmain.c:274:9: [2] (buffer) wchar_t: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. wchar_t sw[256]; data/ngspice-33+ds/src/winmain.c:275:9: [2] (buffer) wchar_t: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. wchar_t tw[256]; data/ngspice-33+ds/src/winmain.c:276:9: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar(CP_UTF8, 0, s, -1, sw, 256); data/ngspice-33+ds/src/winmain.c:277:9: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar(CP_UTF8, 0, t, -1, tw, 256); data/ngspice-33+ds/src/winmain.c:415:9: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). if (MultiByteToWideChar(CP_UTF8, 0, TBuffer, -1, TWBuffer, 2 * (int)strlen(TBuffer) + 1) == 0) data/ngspice-33+ds/src/winmain.c:603:13: [2] (buffer) MultiByteToWideChar: Requires maximum length in CHARACTERS, not bytes (CWE-120). MultiByteToWideChar( data/ngspice-33+ds/src/winmain.c:739:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[128]; data/ngspice-33+ds/src/winmain.c:741:5: [2] (buffer) wchar_t: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. wchar_t bufferW[256]; data/ngspice-33+ds/src/winmain.c:851:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[MAX_PATH + 1]; data/ngspice-33+ds/src/winmain.c:852:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char deli[2]; data/ngspice-33+ds/src/winmain.c:996:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char lpszCmdLine[1024]; data/ngspice-33+ds/src/winmain.c:1482:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char s[IOBufSize]; data/ngspice-33+ds/src/winmain.c:1664:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char s[IOBufSize]; data/ngspice-33+ds/src/winmain.c:1707:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char s[IOBufSize]; data/ngspice-33+ds/src/winmain.c:1738:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char s[IOBufSize]; data/ngspice-33+ds/src/winmain.c:1895:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char temp[512]; data/ngspice-33+ds/src/xspice/cmpp/file_buffer.c:86:21: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((p_fb->fp = fopen(filename, "rb")) == (FILE *) NULL) { data/ngspice-33+ds/src/xspice/cmpp/file_buffer.c:379:25: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static const signed char p_map[1 << CHAR_BIT] = { data/ngspice-33+ds/src/xspice/cmpp/file_buffer.c:539:25: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static const signed char p_map[1 << CHAR_BIT] = { data/ngspice-33+ds/src/xspice/cmpp/ifs_lex.c:1760:11: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). {yyival = atoi (yytext); data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:249:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[130]; data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:379:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[200]; data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:479:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[200]; data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:480:3: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:1511:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:1698:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char yymsgbuf[128]; data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:176:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char buffer [BUFFER_SIZE]; data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:269:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char error_str[200]; data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:286:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char error_str[200]; data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:309:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char error_str[200]; data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:1344:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:1531:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char yymsgbuf[128]; data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:681:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char path_stack[100]; /* full pathname to ifspec file if from stack */ data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:802:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char path_stack[100]; /* full pathname to ifspec file if from stack */ data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1172:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(filename, "w"); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1223:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(filename, "w"); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1266:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(filename, "w"); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1325:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(filename, "w"); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1376:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(filename, "w"); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1418:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(filename, "w"); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1472:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(filename, "w"); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1524:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char name[MAX_NAME_LEN + 1]; /* temporary storage for name read */ data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1536:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(filename, "r"); data/ngspice-33+ds/src/xspice/cmpp/pp_mod.c:96:31: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. char *p_cur = (char *) memcpy(new_filename, filename, prefix_len) + data/ngspice-33+ds/src/xspice/cmpp/pp_mod.c:99:15: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_cur, ext, ext_len + 1); data/ngspice-33+ds/src/xspice/cmpp/pp_mod.c:144:21: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((mod_yyin = fopen(current_filename, "r")) == (FILE *) NULL) { data/ngspice-33+ds/src/xspice/cmpp/pp_mod.c:168:22: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((mod_yyout = fopen(output_filename, "w")) == (FILE *) NULL) { data/ngspice-33+ds/src/xspice/cmpp/read_ifs.c:111:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(current_filename, "r")) == (FILE *) NULL) { data/ngspice-33+ds/src/xspice/cmpp/util.c:138:24: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_cur, e, len_prefix); data/ngspice-33+ds/src/xspice/cmpp/util.c:141:24: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. (void) memcpy(p_cur, filename, len_filename + 1); data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c:112:10: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(filename, "w"); data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c:1206:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str, "{MIF_FALSE, %d, 0.0, {0.0, 0.0}, NULL}", value.ivalue); data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c:1210:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str, "{MIF_FALSE, 0, %e, {0.0, 0.0}, NULL}", value.rvalue); data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c:1214:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str, "{MIF_FALSE, 0, 0.0, {%e, %e}, NULL}", data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c:1260:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char str[3 * sizeof(int) + 1]; data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c:1261:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str, "%d", value); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:419:5: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(*inst_card, "a$poly$"); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:425:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(*inst_card + strlen(*inst_card), "%%vd [ "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:427:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(*inst_card + strlen(*inst_card), "%%vnam [ "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:434:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(*inst_card + strlen(*inst_card), "] "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:440:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(*inst_card + strlen(*inst_card), "%%vd ( "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:442:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(*inst_card + strlen(*inst_card), "%%id ( "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:447:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(*inst_card + strlen(*inst_card), ") "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:541:11: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). dim = atoi(local_tok); data/ngspice-33+ds/src/xspice/evt/evtdump.c:154:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buff[10000]; data/ngspice-33+ds/src/xspice/evt/evtload.c:360:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(new_state->block, prev_state->block, total_size); data/ngspice-33+ds/src/xspice/evt/evtprint.c:108:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *node_name[EPRINT_MAXARGS]; data/ngspice-33+ds/src/xspice/evt/evtprint.c:112:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *node_value[EPRINT_MAXARGS]; data/ngspice-33+ds/src/xspice/evt/evtprint.c:374:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char step_str[100]; data/ngspice-33+ds/src/xspice/evt/evtprint.c:383:9: [2] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant string. strcpy(step_str, "DCOP "); data/ngspice-33+ds/src/xspice/evt/evtprint.c:385:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(step_str, "%.*e", preci, step); data/ngspice-33+ds/src/xspice/evt/evtprint.c:507:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *node_name[EPRINT_MAXARGS]; data/ngspice-33+ds/src/xspice/evt/evtprint.c:511:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *node_value[EPRINT_MAXARGS]; data/ngspice-33+ds/src/xspice/evt/evtprint.c:512:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char *old_node_value[EPRINT_MAXARGS]; data/ngspice-33+ds/src/xspice/evt/evtprint.c:513:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char node_ident[EPRINT_MAXARGS + 1]; data/ngspice-33+ds/src/xspice/evt/evtprint.c:583:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char datebuff[80]; data/ngspice-33+ds/src/xspice/icm/digital/d_source/d_source.h:72:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. typedef char line_t[82]; /* A SPICE size line. <= 80 characters plus '\n\0' */ data/ngspice-33+ds/src/xspice/icm/digital/d_state/d_state.h:68:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. typedef char line_t[82]; /* A SPICE size line. <= 80 characters plus '\n\0' */ data/ngspice-33+ds/src/xspice/icm/dlmain.c:440:23: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(ds_get_buf(&ds), mode)) == (FILE *) NULL) { data/ngspice-33+ds/src/xspice/icm/dlmain.c:468:31: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(ds_get_buf(&ds), data/ngspice-33+ds/src/xspice/icm/dlmain.c:484:11: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fp = fopen(path, mode); data/ngspice-33+ds/src/xspice/icm/dlmain.c:494:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024]; data/ngspice-33+ds/src/xspice/icm/table/support/gettokens.c:127:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. typedef char line_t[82]; data/ngspice-33+ds/src/xspice/icm/xtraevt/int/udnfunc.c:165:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(PRINT_VAL, "%8d", *int_struct); data/ngspice-33+ds/src/xspice/icm/xtraevt/real/udnfunc.c:166:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(PRINT_VAL, "%15.6e", *real_struct); data/ngspice-33+ds/src/xspice/ipc/ipc.c:111:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char fmt_buffer [FMT_BUFFER_SIZE]; data/ngspice-33+ds/src/xspice/ipc/ipc.c:163:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char batch_filename [1025]; data/ngspice-33+ds/src/xspice/ipc/ipc.c:182:7: [2] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant string. strcat (batch_filename, ".log"); data/ngspice-33+ds/src/xspice/ipc/ipc.c:184:18: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). batch_fd = open (batch_filename, O_WRONLY | O_CREAT, 0666); data/ngspice-33+ds/src/xspice/ipc/ipc.c:473:4: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy (&out_buffer[fill_count], str, (size_t) len); data/ngspice-33+ds/src/xspice/ipc/ipc.c:543:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[40]; data/ngspice-33+ds/src/xspice/ipc/ipc.c:545:4: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf (buffer, ">DATAB %.5E", time); data/ngspice-33+ds/src/xspice/ipc/ipc.c:739:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[IPC_MAX_LINE_LEN+1]; data/ngspice-33+ds/src/xspice/ipc/ipc.c:746:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str, "#ERRCHK NOGO"); data/ngspice-33+ds/src/xspice/ipc/ipc.c:748:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str, "#ERRCHK GO"); data/ngspice-33+ds/src/xspice/ipc/ipc.c:774:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[IPC_MAX_LINE_LEN+1]; data/ngspice-33+ds/src/xspice/ipc/ipc.c:778:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str, ">ABORTED %.4f", g_ipc.cpu_time); data/ngspice-33+ds/src/xspice/ipc/ipc.c:780:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str, ">ENDANAL %.4f", g_ipc.cpu_time); data/ngspice-33+ds/src/xspice/ipc/ipc.c:800:7: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ch[32]; data/ngspice-33+ds/src/xspice/ipc/ipc.c:913:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buff[OUT_BUFFER_SIZE]; data/ngspice-33+ds/src/xspice/ipc/ipc.c:927:4: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buff, "%d ", ipc_index); data/ngspice-33+ds/src/xspice/ipc/ipcaegis.c:250:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[300]; data/ngspice-33+ds/src/xspice/ipc/ipcaegis.c:292:4: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy (mbx_send_msg_buf.data, str, len); data/ngspice-33+ds/src/xspice/ipc/ipcsockets.c:180:14: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). port_num = atoi(server_name); data/ngspice-33+ds/src/xspice/ipc/ipcsockets.c:302:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buff[4]; /* Transfer str into buff to word align reqd data */ data/ngspice-33+ds/src/xspice/ipc/ipcsockets.c:663:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char hdr_buff[5]; /* Buffer for building header message in */ data/ngspice-33+ds/src/xspice/ipc/ipcsockets.c:742:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[17000]; /* temp buffer for incoming data */ data/ngspice-33+ds/src/xspice/ipc/ipctiein.c:194:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[IPC_MAX_LINE_LEN+1]; data/ngspice-33+ds/src/xspice/ipc/ipctiein.c:240:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[IPC_MAX_LINE_LEN+1]; data/ngspice-33+ds/src/xspice/ipc/ipctiein.c:506:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1025]; data/ngspice-33+ds/src/xspice/mif/mif_inp2.c:109:8: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char *alltokens[BSIZE_SP]; data/ngspice-33+ds/src/frontend/arg.c:36:9: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n = strlen(buf) - 1; data/ngspice-33+ds/src/frontend/aspice.c:357:39: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (void) fwrite(buf, 1, strlen(buf), srv_input); data/ngspice-33+ds/src/frontend/com_hardcopy.c:57:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n_byte_fname = (strlen(fname) + 1) * sizeof *fname; data/ngspice-33+ds/src/frontend/com_history.c:507:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). plen = (int) strlen(pat) - 1; data/ngspice-33+ds/src/frontend/com_let.c:85:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (q = p + strlen(p) - 1; *q <= ' ' && p <= q; q--) { data/ngspice-33+ds/src/frontend/com_measure2.c:328:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(item); data/ngspice-33+ds/src/frontend/com_sysinfo.c:261:24: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (EOF == fgetc(file)) { data/ngspice-33+ds/src/frontend/com_sysinfo.c:289:24: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (EOF == fgetc(file)) { data/ngspice-33+ds/src/frontend/com_sysinfo.c:336:27: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). strPtr += strlen(matchStrProc); data/ngspice-33+ds/src/frontend/cpitf.c:412:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n_byte_data += strlen(wl1->wl_word) + 1; data/ngspice-33+ds/src/frontend/device.c:1147:17: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (strlen(argument) > 1) { data/ngspice-33+ds/src/frontend/diff.c:40:20: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t n = strlen(p_start) - 1; /* copy all but final ')' */ data/ngspice-33+ds/src/frontend/display.c:398:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). keyed->text = TMALLOC(char, strlen(text) + 1); data/ngspice-33+ds/src/frontend/fourier.c:62:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). shift = (int) strlen(xbuf) - 7; data/ngspice-33+ds/src/frontend/gens.c:203:29: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (p = word + strlen(word) /* do '\0' first time */; data/ngspice-33+ds/src/frontend/get_resident_set_size.c:82:10: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if ( read( fd, &psinfo, sizeof(psinfo) ) != sizeof(psinfo) ) data/ngspice-33+ds/src/frontend/help/readhelp.c:140:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (int) strlen(&buf[6]) - fchanges; data/ngspice-33+ds/src/frontend/help/readhelp.c:222:13: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(TMALLOC(char, tmp - s + 1), s, (size_t) (tmp - s)); data/ngspice-33+ds/src/frontend/help/readhelp.c:311:53: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (!strncasecmp(indexitem.subject,subject, strlen(subject))) { data/ngspice-33+ds/src/frontend/help/textdisp.c:177:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (maxwidth < (int) strlen(tt->description)) data/ngspice-33+ds/src/frontend/help/textdisp.c:178:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). maxwidth = (int) strlen(tt->description); data/ngspice-33+ds/src/frontend/help/x11disp.c:325:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). tmpp = buf + strlen(buf); data/ngspice-33+ds/src/frontend/inp.c:190:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(buf, string, BSIZE_SP - 1); data/ngspice-33+ds/src/frontend/inp.c:637:13: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(name, dd->line, BSIZE_SP); data/ngspice-33+ds/src/frontend/inpcom.c:731:35: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (max_line_length < strlen(tmp_ptr1->line)) data/ngspice-33+ds/src/frontend/inpcom.c:732:35: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). max_line_length = strlen(tmp_ptr1->line); data/ngspice-33+ds/src/frontend/inpcom.c:855:44: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). buffer = TMALLOC(char, strlen(ipc_buffer) + 3); data/ngspice-33+ds/src/frontend/inpcom.c:857:21: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat(buffer, "\n"); data/ngspice-33+ds/src/frontend/inpcom.c:1340:67: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (MultiByteToWideChar(CP_UTF8, 0, name, -1, wname, 2 * (int)strlen(name) + 1) == 0) { data/ngspice-33+ds/src/frontend/inpcom.c:1492:9: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). int strlen; data/ngspice-33+ds/src/frontend/inpcom.c:1499:17: [1] (buffer) getc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). while ((c = getc(fd)) != EOF) { data/ngspice-33+ds/src/frontend/inpcom.c:1508:13: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (strlen >= memlen) { data/ngspice-33+ds/src/frontend/inpcom.c:1518:10: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (!strlen) { data/ngspice-33+ds/src/frontend/inpcom.c:1526:12: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). strptr[strlen] = '\0'; data/ngspice-33+ds/src/frontend/inpcom.c:2609:11: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. char *equal, *beg, *buffer, *ptr1, *ptr2, *new_str; data/ngspice-33+ds/src/frontend/inpcom.c:2612:9: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if (equal && !strstr(s, "params:")) { data/ngspice-33+ds/src/frontend/inpcom.c:2625:28: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. beg = skip_back_ws(equal, s); data/ngspice-33+ds/src/frontend/inpcom.c:3400:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(fcn->params[i]); data/ngspice-33+ds/src/frontend/inpcom.c:3458:52: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t collect_ptr_len = collect_ptr ? strlen(collect_ptr) : 0; data/ngspice-33+ds/src/frontend/inpcom.c:3459:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(rest) + strlen(params[i]) + 1; data/ngspice-33+ds/src/frontend/inpcom.c:3459:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(rest) + strlen(params[i]) + 1; data/ngspice-33+ds/src/frontend/inpcom.c:3475:20: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). arg_ptr += strlen(fcn->params[i]); data/ngspice-33+ds/src/frontend/inpcom.c:3606:46: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t curr_str_len = curr_str ? strlen(curr_str) : 0; data/ngspice-33+ds/src/frontend/inpcom.c:3607:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(str) + strlen(macro_str) + 3; data/ngspice-33+ds/src/frontend/inpcom.c:3607:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(str) + strlen(macro_str) + 3; data/ngspice-33+ds/src/frontend/inpcom.c:3625:35: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t curr_str_len = strlen(curr_str); data/ngspice-33+ds/src/frontend/inpcom.c:3626:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(str) + 1; data/ngspice-33+ds/src/frontend/inpcom.c:3836:44: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). buffer = TMALLOC(char, strlen(natok) + 4); data/ngspice-33+ds/src/frontend/inpcom.c:3892:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). line = new_str + strlen(old_str) + 1; data/ngspice-33+ds/src/frontend/inpcom.c:3911:44: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). buffer = TMALLOC(char, strlen(natok) + 4); data/ngspice-33+ds/src/frontend/inpcom.c:3938:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). line = new_str + strlen(old_str) + 1; data/ngspice-33+ds/src/frontend/inpcom.c:3967:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). line = new_str + strlen(old_str) + 1; data/ngspice-33+ds/src/frontend/inpcom.c:4088:17: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(nam_buf, inst, sizeof(nam_buf) - 1); data/ngspice-33+ds/src/frontend/inpcom.c:4101:17: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(nam_buf, tmp_inst, 32); data/ngspice-33+ds/src/frontend/inpcom.c:4565:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char after = str[strlen(identifier)]; data/ngspice-33+ds/src/frontend/inpcom.c:4591:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char after = str[strlen(identifier)]; data/ngspice-33+ds/src/frontend/inpcom.c:4617:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char after = str[strlen(identifier)]; data/ngspice-33+ds/src/frontend/inpcom.c:4622:20: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). str += strlen(identifier); data/ngspice-33+ds/src/frontend/inpcom.c:4816:25: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat(xar, " "); data/ngspice-33+ds/src/frontend/inpcom.c:4818:25: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat(yar, " "); data/ngspice-33+ds/src/frontend/inpcom.c:4994:21: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat(xar, " "); data/ngspice-33+ds/src/frontend/inpcom.c:4996:21: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat(yar, " "); data/ngspice-33+ds/src/frontend/inpcom.c:5561:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). xlen = strlen(exp_ptr) + 7; data/ngspice-33+ds/src/frontend/inpcom.c:5590:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). xlen = strlen(exp_ptr) + 9; data/ngspice-33+ds/src/frontend/inpcom.c:5657:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). xlen = strlen(exp_ptr) + 7; data/ngspice-33+ds/src/frontend/inpcom.c:5690:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). xlen = strlen(out_ptr) + strlen(exp_ptr) + 10; data/ngspice-33+ds/src/frontend/inpcom.c:5690:50: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). xlen = strlen(out_ptr) + strlen(exp_ptr) + 10; data/ngspice-33+ds/src/frontend/inpcom.c:6777:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(identifier); data/ngspice-33+ds/src/frontend/inpcom.c:6883:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *rest = s + strlen(deps[i].param_name); data/ngspice-33+ds/src/frontend/inpcom.c:6908:50: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). s = curr_line + prefix_len + strlen(deps[i].param_name) + data/ngspice-33+ds/src/frontend/inpcom.c:6915:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). s += strlen(deps[i].param_name); data/ngspice-33+ds/src/frontend/measure.c:68:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (token[strlen(token) - 1] == '=') { data/ngspice-33+ds/src/frontend/measure.c:172:39: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (name && (strncmp(token, name, strlen(name)) != 0)) { data/ngspice-33+ds/src/frontend/measure.c:177:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (token[strlen(token) - 1] == '=') { data/ngspice-33+ds/src/frontend/measure.c:485:15: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = strlen(item); data/ngspice-33+ds/src/frontend/measure.c:492:20: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len += strlen(extra_item) + 2; data/ngspice-33+ds/src/frontend/numparam/mystring.c:38:17: [1] (buffer) getchar: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). first = getchar(); data/ngspice-33+ds/src/frontend/numparam/mystring.c:44:17: [1] (buffer) getchar: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). int c = getchar(); data/ngspice-33+ds/src/frontend/numparam/spicenum.c:565:43: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char * const s_end = skip_back_ws(s + strlen(s), s); data/ngspice-33+ds/src/frontend/numparam/xpressn.c:542:43: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const char *name_e = skip_back_ws(s + strlen(s), s); data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1124:16: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). return s + strlen(s); data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1136:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const char * const s_end = s + strlen(s); data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1197:29: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const char *s_end = s + strlen(s); data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1221:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const char * const s_end = s + strlen(s); data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1300:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const char * const s_end = s + strlen(s); data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1341:45: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). rval = formula(dico, tmp, tmp + strlen(tmp), &error); data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1383:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char after = str[strlen(identifier)]; data/ngspice-33+ds/src/frontend/numparam/xpressn.c:1388:16: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). str += strlen(identifier); data/ngspice-33+ds/src/frontend/nutinp.c:96:20: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). (void) strncpy(name, dd->line, BSIZE_SP); data/ngspice-33+ds/src/frontend/outitf.c:869:10: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n += strlen(buf); data/ngspice-33+ds/src/frontend/outitf.c:872:10: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n += strlen(buf); data/ngspice-33+ds/src/frontend/outitf.c:875:10: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n += strlen(buf); data/ngspice-33+ds/src/frontend/outitf.c:878:10: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n += strlen(buf); data/ngspice-33+ds/src/frontend/outitf.c:881:10: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n += strlen(buf); data/ngspice-33+ds/src/frontend/outitf.c:884:10: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n += strlen(buf); data/ngspice-33+ds/src/frontend/outitf.c:1360:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). bptr += strlen(bptr); data/ngspice-33+ds/src/frontend/parse-bison.c:919:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). # define yystrlen strlen data/ngspice-33+ds/src/frontend/parse-bison.c:1873:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). int len = (int)strlen(keepline); data/ngspice-33+ds/src/frontend/parser/backq.c:67:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (int) strlen(buf); data/ngspice-33+ds/src/frontend/parser/complete.c:105:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (int) strlen(s ? s + 1 : buf); data/ngspice-33+ds/src/frontend/parser/complete.c:115:27: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (int) strlen(buf); data/ngspice-33+ds/src/frontend/parser/complete.c:124:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (int) strlen(buf); data/ngspice-33+ds/src/frontend/parser/complete.c:289:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). j = (int) strlen(ww->wl_word); data/ngspice-33+ds/src/frontend/parser/glob.c:295:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t n_elem_needed = strlen(string); data/ngspice-33+ds/src/frontend/parser/glob.c:483:24: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). p_n_char_word[1] = strlen(wl_node->wl_word) - n_char_skip; data/ngspice-33+ds/src/frontend/parser/input.c:34:17: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). i = read(fileno(fp), &c, 1); data/ngspice-33+ds/src/frontend/parser/input.c:49:12: [1] (buffer) getc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). return getc(fp); data/ngspice-33+ds/src/frontend/parser/unixcom.c:102:17: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = strlen(buf); data/ngspice-33+ds/src/frontend/parser/unixcom.c:115:20: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. (void) strcat(pbuf, "/"); data/ngspice-33+ds/src/frontend/plotting/agraf.c:56:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). shift = (int) strlen(buf) - 7; data/ngspice-33+ds/src/frontend/plotting/agraf.c:182:15: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). strlen(buf)); data/ngspice-33+ds/src/frontend/plotting/agraf.c:256:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (omaxy + margin - (int) strlen(plot->pl_title)) / 2; data/ngspice-33+ds/src/frontend/plotting/agraf.c:265:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (omaxy + margin - (int) strlen(buf)) / 2; data/ngspice-33+ds/src/frontend/plotting/gnuplot.c:396:9: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(200000); data/ngspice-33+ds/src/frontend/plotting/graf.c:104:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). graph->n_byte_devdep = strlen(hcopy) + 1; data/ngspice-33+ds/src/frontend/plotting/graf.c:125:9: [1] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant character. strcpy(graph->ticchar, "X"); data/ngspice-33+ds/src/frontend/plotting/graf.c:518:28: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (int) (strlen(currentgraph->grid.xlabel) + 3) * data/ngspice-33+ds/src/frontend/plotting/graf.c:949:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). k = (int) strlen(buf); data/ngspice-33+ds/src/frontend/plotting/grid.c:185:47: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int n_byte_wide = 2 * (int) strlen(graph->grid.xlabel) + 1; data/ngspice-33+ds/src/frontend/plotting/grid.c:231:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (graph->absolute.height - (int) strlen( data/ngspice-33+ds/src/frontend/plotting/grid.c:241:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (graph->absolute.height - (int) strlen( data/ngspice-33+ds/src/frontend/plotting/grid.c:250:51: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int n_byte_wide = 2 * (int) strlen(graph->grid.ylabel) + 1; data/ngspice-33+ds/src/frontend/plotting/grid.c:521:16: [1] (buffer) strncat: Easily used incorrectly (e.g., incorrectly computing the correct maximum size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf, or automatically resizing strings. (void) strncat(buf, s, sizeof(buf) - strlen(buf) - 1); data/ngspice-33+ds/src/frontend/plotting/grid.c:521:46: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (void) strncat(buf, s, sizeof(buf) - strlen(buf) - 1); data/ngspice-33+ds/src/frontend/plotting/grid.c:523:16: [1] (buffer) strncat: Easily used incorrectly (e.g., incorrectly computing the correct maximum size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf, or automatically resizing strings. Risk is low because the source is a constant string. (void) strncat(buf, " ", sizeof(buf) - strlen(buf) - 1); data/ngspice-33+ds/src/frontend/plotting/grid.c:523:52: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (void) strncat(buf, " ", sizeof(buf) - strlen(buf) - 1); data/ngspice-33+ds/src/frontend/plotting/grid.c:685:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). ((int) strlen(buf) * graph->fontwidth) / 2, data/ngspice-33+ds/src/frontend/plotting/grid.c:689:50: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). graph->fontwidth * (int) strlen(buf), data/ngspice-33+ds/src/frontend/plotting/grid.c:787:5: [1] (buffer) strncat: Easily used incorrectly (e.g., incorrectly computing the correct maximum size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf, or automatically resizing strings. strncat(buf, s, sizeof(buf) - strlen(buf) - 1); data/ngspice-33+ds/src/frontend/plotting/grid.c:787:35: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). strncat(buf, s, sizeof(buf) - strlen(buf) - 1); data/ngspice-33+ds/src/frontend/plotting/grid.c:849:20: [1] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source is a constant character. (void) sprintf(buf, "1"); data/ngspice-33+ds/src/frontend/plotting/grid.c:859:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). ((int) strlen(buf) * graph->fontwidth) / 2, data/ngspice-33+ds/src/frontend/plotting/grid.c:863:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (int) (strlen(buf) + 1), data/ngspice-33+ds/src/frontend/plotting/grid.c:1150:35: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). w = graph->fontwidth * (int) (strlen(buf) + 1); data/ngspice-33+ds/src/frontend/plotting/grid.c:1159:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). DevDrawText("o", x + (int) strlen(buf) * graph->fontwidth, data/ngspice-33+ds/src/frontend/plotting/grid.c:1178:39: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). x -= graph->fontwidth * (int) strlen(buf) + 3; data/ngspice-33+ds/src/frontend/plotting/grid.c:1180:39: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). x -= graph->fontwidth * (int) strlen(buf) + 3; data/ngspice-33+ds/src/frontend/plotting/grid.c:1337:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). plen = (int) strlen(plab); data/ngspice-33+ds/src/frontend/plotting/grid.c:1543:29: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). gi_fntwidth * (int) strlen(plab) - 2; data/ngspice-33+ds/src/frontend/plotting/pvec.c:94:9: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat(buf, "\n"); data/ngspice-33+ds/src/frontend/plotting/x11.c:311:17: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(DEVDEP(graph).bgcolor, colorstring, 15); data/ngspice-33+ds/src/frontend/plotting/x11.c:321:21: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(DEVDEP(graph).txtcolor, "black", 15); data/ngspice-33+ds/src/frontend/plotting/x11.c:325:21: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(DEVDEP(graph).txtcolor, "white", 15); data/ngspice-33+ds/src/frontend/plotting/x11.c:331:21: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(DEVDEP(graph).txtcolor, colorstring, 15); data/ngspice-33+ds/src/frontend/plotting/x11.c:521:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(DEVDEP(graph).fname, fontname, BSIZE_SP - 1); data/ngspice-33+ds/src/frontend/plotting/x11.c:733:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). text, (int) strlen(text)); data/ngspice-33+ds/src/frontend/plotting/x11.c:742:71: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). x, currentgraph->absolute.height - y, (FcChar8*)text, strlen(text)); data/ngspice-33+ds/src/frontend/plotting/x11.c:751:114: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). x + (int)(1.5 * wlen), currentgraph->absolute.height - y + (int)(0.5 * wheight), (FcChar8*)text, strlen(text)); data/ngspice-33+ds/src/frontend/plotting/x11.c:1066:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(buf2, graph->plotname, sizeof(buf2)); data/ngspice-33+ds/src/frontend/plotting/x11.c:1381:63: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). XftTextExtentsUtf8( display, gfont, (XftChar8 *)text, strlen(text), &extents ); data/ngspice-33+ds/src/frontend/postcoms.c:241:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). ll += (int) strlen(buf); data/ngspice-33+ds/src/frontend/postcoms.c:256:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). ll += (int) strlen(buf); data/ngspice-33+ds/src/frontend/postcoms.c:314:28: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). j = (width - (int) strlen(p->pl_title)) / 2; /* Yes, keep "(int)" */ data/ngspice-33+ds/src/frontend/postsc.c:412:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t n_char_text = strlen(text_in); data/ngspice-33+ds/src/frontend/postsc.c:511:14: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if ((strlen(s_blue) == strlen(s_red) && strlen(s_green) == strlen(s_red)) data/ngspice-33+ds/src/frontend/postsc.c:511:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if ((strlen(s_blue) == strlen(s_red) && strlen(s_green) == strlen(s_red)) data/ngspice-33+ds/src/frontend/postsc.c:511:49: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if ((strlen(s_blue) == strlen(s_red) && strlen(s_green) == strlen(s_red)) data/ngspice-33+ds/src/frontend/postsc.c:511:68: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if ((strlen(s_blue) == strlen(s_red) && strlen(s_green) == strlen(s_red)) data/ngspice-33+ds/src/frontend/postsc.c:512:17: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). && (strlen(s_blue) > 2) && (strlen(s_blue) < 7)) { data/ngspice-33+ds/src/frontend/postsc.c:512:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). && (strlen(s_blue) > 2) && (strlen(s_blue) < 7)) { data/ngspice-33+ds/src/frontend/postsc.c:516:29: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). maxval = (1 << (strlen(s_blue) - 2) * 4) - 1; data/ngspice-33+ds/src/frontend/quote.c:34:28: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t len_src = strlen(p_src); /* input str length */ data/ngspice-33+ds/src/frontend/quote.c:49:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(p_dst, p_src, len_dst); data/ngspice-33+ds/src/frontend/spiceif.c:1704:37: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). _foo(task->TSKname, char, ((int)strlen(task->TSKname)+1)); data/ngspice-33+ds/src/frontend/spiceif.c:1710:43: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). _foo(task->jobs->JOBname, char, ((int)strlen(task->jobs->JOBname)+1)); data/ngspice-33+ds/src/frontend/subckt.c:221:9: [1] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant character. strcpy(invoke, "x"); data/ngspice-33+ds/src/frontend/typesdef.c:334:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(buf, string, sizeof(buf)); data/ngspice-33+ds/src/frontend/variable.c:730:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (strlen(s) > rsize) { data/ngspice-33+ds/src/frontend/variable.c:861:27: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (int) strlen(wl->wl_word); data/ngspice-33+ds/src/frontend/vectors.c:1064:44: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (void) strcpy(buf, v->v_name + strlen(v->v_name) + 1); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:205:55: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (!cp_getvar("wfont", CP_STRING, lf.lfFaceName, strlen(lf.lfFaceName))) { data/ngspice-33+ds/src/frontend/wdisp/windisp.c:551:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(buf2, gr->plotname, sizeof(buf2)); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:697:39: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int n_byte_wide = 2 * (int) strlen(graph->plotname) + 1; data/ngspice-33+ds/src/frontend/wdisp/windisp.c:699:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int n_byte_wide2 = 2 * (int) strlen(WindowName) + 1; data/ngspice-33+ds/src/frontend/wdisp/windisp.c:954:79: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). TextOut(wd->hDC, x, wd->Area.bottom - y - currentgraph->fontheight, text, strlen(text)); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:1045:84: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). TextOut(wd->hDC, x, wd->Area.bottom - y - currentgraph->fontheight, text, (int)strlen(text)); data/ngspice-33+ds/src/frontend/wdisp/windisp.c:1047:39: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int n_byte_wide = 2 * (int) strlen(text) + 1; data/ngspice-33+ds/src/frontend/wdisp/winprint.c:306:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (int)strlen(graph->plotname)); data/ngspice-33+ds/src/frontend/wdisp/winprint.c:308:43: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int n_byte_wide = 2 * (int) strlen(graph->plotname) + 1; data/ngspice-33+ds/src/frontend/wdisp/winprint.c:459:84: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). TextOut(PrinterDC, x, PrinterHeight - y - currentgraph->fontheight, text, (int)strlen(text)); data/ngspice-33+ds/src/frontend/wdisp/winprint.c:461:39: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int n_byte_wide = 2 * (int) strlen(text) + 1; data/ngspice-33+ds/src/include/ngspice/hash.h:167:8: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = strlen(cptr) ; \ data/ngspice-33+ds/src/include/ngspice/hash.h:213:8: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = strlen(cptr) ; \ data/ngspice-33+ds/src/include/ngspice/macros.h:55:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(MESSAGE) + 1); \ data/ngspice-33+ds/src/include/ngspice/stringutil.h:86:45: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (char *) NULL : dup_string(str, strlen(str)); data/ngspice-33+ds/src/include/ngspice/wstdio.h:11:8: [1] (buffer) getc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). #undef getc /* old macros removed */ data/ngspice-33+ds/src/include/ngspice/wstdio.h:14:8: [1] (buffer) getchar: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). #undef getchar data/ngspice-33+ds/src/include/ngspice/wstdio.h:59:9: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). #define fgetc win_x_fgetc data/ngspice-33+ds/src/include/ngspice/wstdio.h:82:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). #define read win_x_read data/ngspice-33+ds/src/include/ngspice/wstdio.h:83:9: [1] (buffer) getc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). #define getc win_x_getc data/ngspice-33+ds/src/include/ngspice/wstdio.h:84:9: [1] (buffer) getchar: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). #define getchar win_x_getchar data/ngspice-33+ds/src/makeidx.c:41:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). subject[strlen(subject) - 1] = '\0'; /* get rid of '\n' */ data/ngspice-33+ds/src/makeidx.c:42:13: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(indexitem.subject, subject, 64); /* zero out end */ data/ngspice-33+ds/src/maths/ni/niinteg.c:37:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(ordmsg) + 1); data/ngspice-33+ds/src/maths/ni/niinteg.c:73:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(methodmsg) + 1); data/ngspice-33+ds/src/misc/dstring.c:102:38: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). return ds_cat_mem_case(p_ds, sz, strlen(sz), case_type); data/ngspice-33+ds/src/misc/getopt_long_bsd.c:205:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). current_argv_len = strlen(current_argv); data/ngspice-33+ds/src/misc/getopt_long_bsd.c:213:11: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (strlen(long_options[i].name) == current_argv_len) { data/ngspice-33+ds/src/misc/misc_time.c:58:9: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = strlen(tbuf); data/ngspice-33+ds/src/misc/string.c:79:16: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). (void) strncpy(p, str, n_char); data/ngspice-33+ds/src/misc/string.c:479:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char * const token = TMALLOC(char, strlen(p_src) + 1); data/ngspice-33+ds/src/misc/string.c:814:31: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t n_char_str = strlen(str); data/ngspice-33+ds/src/misc/string.c:909:24: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t token_len = strlen(token); data/ngspice-33+ds/src/misc/tilde.c:56:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t n_char_rest = strlen(string); data/ngspice-33+ds/src/misc/tilde.c:90:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t n_char_rest = strlen(string); data/ngspice-33+ds/src/misc/tilde.c:211:31: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t n_char_src = strlen(src); /* Size of HOME value */ data/ngspice-33+ds/src/misc/util.c:132:37: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). result = TMALLOC(char, 2 + strlen(dot_path) + strlen(string)); data/ngspice-33+ds/src/misc/util.c:132:56: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). result = TMALLOC(char, 2 + strlen(dot_path) + strlen(string)); data/ngspice-33+ds/src/misc/util.c:134:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). result_len = strlen(result); data/ngspice-33+ds/src/misc/util.c:140:37: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). result = TMALLOC(char, 3 + strlen (string)); data/ngspice-33+ds/src/misc/util.c:212:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (p = p0 + strlen(name + start) - 1; p >= p0; --p) { data/ngspice-33+ds/src/misc/wlist.c:206:16: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len += strlen(wl->wl_word) + 1; data/ngspice-33+ds/src/nghelp.c:89:9: [1] (buffer) getchar: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). while( getchar() == EOF) {} data/ngspice-33+ds/src/ngmultidec.c:60:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). name = TMALLOC(char, strlen(optarg)); data/ngspice-33+ds/src/ngmultidec.c:118:9: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). s += strlen(s); data/ngspice-33+ds/src/ngsconvert.c:101:20: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (i = (int) strlen(buf) - 1; (i > 1) && (buf[i] == ' '); i--) data/ngspice-33+ds/src/sharedspice.c:408:13: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(10000); data/ngspice-33+ds/src/sharedspice.c:456:5: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(20000); /* wait a little */ data/ngspice-33+ds/src/sharedspice.c:494:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(buf, command+3, 1024); data/ngspice-33+ds/src/sharedspice.c:506:13: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(10000); data/ngspice-33+ds/src/sharedspice.c:522:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(buf, command, 1024); data/ngspice-33+ds/src/sharedspice.c:524:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(buf, command, 1024); data/ngspice-33+ds/src/sharedspice.c:1347:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t inputlen = strlen(input); data/ngspice-33+ds/src/sharedspice.c:1357:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = strlen(outstringerr); data/ngspice-33+ds/src/sharedspice.c:1390:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = strlen(outstringout); data/ngspice-33+ds/src/sharedspice.c:1453:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t inputlen = strlen(input); data/ngspice-33+ds/src/sharedspice.c:1463:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = strlen(outstringerr); data/ngspice-33+ds/src/sharedspice.c:1499:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = strlen(outstringout); data/ngspice-33+ds/src/sharedspice.c:1549:9: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(50000); data/ngspice-33+ds/src/sharedspice.c:1652:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(OldAn1, Analyse, 127); //strcpy(OldAn1, "?"); /* initial value */ data/ngspice-33+ds/src/sharedspice.c:1656:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(OldAn2, Analyse, 127); // strcpy(OldAn2, "?"); /* initial value */ data/ngspice-33+ds/src/sharedspice.c:1758:14: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(OldAn1, Analyse, 127); data/ngspice-33+ds/src/sharedspice.c:1760:14: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(OldAn2, Analyse, 127); data/ngspice-33+ds/src/sharedspice.c:1795:9: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(10000); data/ngspice-33+ds/src/sharedspice.c:1815:5: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(100000); data/ngspice-33+ds/src/spicelib/analysis/cktsgen.c:205:4: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). strlen(Sfilter))) data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:40:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). msg_p = msg_buf + strlen(msg_buf); data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:61:15: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). msg_p += strlen(msg_p); data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:77:14: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). msg_p += strlen(msg_p); data/ngspice-33+ds/src/spicelib/analysis/ckttroub.c:91:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). emsg = TMALLOC(char, strlen(msg_buf) + 1); data/ngspice-33+ds/src/spicelib/analysis/cluster.c:172:4: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(500);/*wait for the sever to start*/ data/ngspice-33+ds/src/spicelib/analysis/cluster.c:181:7: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (strlen(curr->remote) + strlen(curr->local) + 2)*sizeof(char); data/ngspice-33+ds/src/spicelib/analysis/cluster.c:181:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = (strlen(curr->remote) + strlen(curr->local) + 2)*sizeof(char); data/ngspice-33+ds/src/spicelib/analysis/cluster.c:186:35: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). fwrite(curr->remote,sizeof(char),strlen(curr->remote),curr->stream); data/ngspice-33+ds/src/spicelib/analysis/cluster.c:188:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). fwrite(curr->local,sizeof(char),strlen(curr->local),curr->stream); data/ngspice-33+ds/src/spicelib/analysis/cluster.c:398:5: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(500);/*wait for the sever to start*/ data/ngspice-33+ds/src/spicelib/analysis/distoan.c:423:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(nof2src) + 1); data/ngspice-33+ds/src/spicelib/devices/bjt/bjtask.c:244:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/bjt/bjtask.c:262:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/bjt/bjtask.c:281:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/cap/capask.c:65:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/cap/capask.c:84:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/cccs/cccsask.c:53:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/cccs/cccsask.c:68:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsask.c:51:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/ccvs/ccvsask.c:65:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/cpl/cplsetup.c:517:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(message) + 1); data/ngspice-33+ds/src/spicelib/devices/csw/cswask.c:40:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/csw/cswask.c:53:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/dio/dioask.c:78:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetask.c:120:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/hfet1/hfetask.c:132:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2ask.c:118:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/hfet2/hfet2ask.c:130:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/ind/indask.c:62:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/ind/indask.c:72:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/isrc/isrcask.c:85:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/jfet/jfetask.c:118:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/jfet/jfetask.c:130:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2ask.c:127:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/jfet2/jfet2ask.c:139:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mes/mesask.c:104:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mes/mesask.c:116:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mesa/mesaask.c:126:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mesa/mesaask.c:138:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ask.c:356:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ask.c:367:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ask.c:384:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos1/mos1ask.c:402:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ask.c:356:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ask.c:367:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ask.c:384:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos2/mos2ask.c:402:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ask.c:361:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ask.c:372:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ask.c:389:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos3/mos3ask.c:407:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ask.c:389:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ask.c:401:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ask.c:419:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos6/mos6ask.c:438:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ask.c:358:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ask.c:369:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ask.c:386:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/mos9/mos9ask.c:404:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/ndev/ndevset.c:49:6: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(here->Ndevinfo.NDEVname, here->gen.GENname, 32); data/ngspice-33+ds/src/spicelib/devices/ndev/ndevset.c:67:11: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(here->PINinfos[i].name,here->bname[i],32); data/ngspice-33+ds/src/spicelib/devices/sw/swask.c:43:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/sw/swask.c:56:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/vccs/vccsask.c:114:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/vccs/vccsask.c:130:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsask.c:119:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/vcvs/vcvsask.c:133:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosask.c:124:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosask.c:140:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/vdmos/vdmosask.c:155:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcask.c:90:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/devices/vsrc/vsrcask.c:103:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). errMsg = TMALLOC(char, strlen(msg) + 1); data/ngspice-33+ds/src/spicelib/parser/inp2dot.c:314:25: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (*name == 'v' && strlen(name) == 1) { data/ngspice-33+ds/src/spicelib/parser/inp2dot.c:335:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). } else if (*name == 'i' && strlen(name) == 1) { data/ngspice-33+ds/src/spicelib/parser/inp2dot.c:432:25: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (*name == 'v' && strlen(name) == 1) { data/ngspice-33+ds/src/spicelib/parser/inp2dot.c:455:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). } else if (*name == 'i' && strlen(name) == 1) { data/ngspice-33+ds/src/spicelib/parser/inp2r.c:115:45: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). p = TMALLOC(char, left_length + 5 + strlen(s) + 1); data/ngspice-33+ds/src/spicelib/parser/inp2r.c:122:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(p, current->line, left_length); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:124:60: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). internal1 = TMALLOC(char, 10 + strlen(name)); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:134:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). rname1 = TMALLOC(char, 10 + strlen(name)); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:145:60: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). internal2 = TMALLOC(char, 10 + strlen(name)); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:149:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). rname2 = TMALLOC(char, 10 + strlen(name)); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:161:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). rname3 = TMALLOC(char, 10 + strlen(name)); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:179:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). cname1 = TMALLOC(char, 10 + strlen(name)); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:190:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). cname2 = TMALLOC(char, 10 + strlen(name)); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:202:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). cname3 = TMALLOC(char, 10 + strlen(name)); data/ngspice-33+ds/src/spicelib/parser/inp2y.c:214:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). cname4 = TMALLOC(char, 10 + strlen(name)); data/ngspice-33+ds/src/spicelib/parser/inperrc.c:42:35: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *a_ch_b = INPcat(strlen(a), a, sepchar, data/ngspice-33+ds/src/spicelib/parser/inperrc.c:43:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). strlen(b), b); data/ngspice-33+ds/src/spicelib/parser/inpgmod.c:534:24: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). int length = (int) strlen(name); data/ngspice-33+ds/src/spicelib/parser/inpgmod.c:561:24: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). int length = (int) strlen(name); data/ngspice-33+ds/src/spicelib/parser/inpgmod.c:571:50: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if ((match == length) && (match == (int) strlen(table[test].keyword))) { data/ngspice-33+ds/src/spicelib/parser/inpgstr.c:54:12: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). (void) strncpy(*token, *line, (size_t) (point - *line)); data/ngspice-33+ds/src/spicelib/parser/inpmktmp.c:19:11: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = strlen(string); data/ngspice-33+ds/src/spicelib/parser/inpptree-parser.c:908:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). # define yystrlen strlen data/ngspice-33+ds/src/spicelib/parser/inpptree.c:1232:46: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). values[i].sValue = TMALLOC(char, strlen(buf) + 1); data/ngspice-33+ds/src/spicelib/parser/inpptree.c:1431:13: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(tmp, sbuf, (size_t) (s - sbuf)); data/ngspice-33+ds/src/tclspice.c:708:13: [1] (obsolete) usleep: This C routine is considered obsolete (as opposed to the shell command by the same name). The interaction of this function with SIGALRM and other timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead. usleep(10000); data/ngspice-33+ds/src/tclspice.c:773:9: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat(buf, " "); data/ngspice-33+ds/src/tclspice.c:1749:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). int printed = strlen(string), i; data/ngspice-33+ds/src/tclspice.c:2211:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(ident, argv[5], sizeof(ident)); data/ngspice-33+ds/src/tclspice.c:2367:99: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). Tcl_ListObjAppendElement(interp, list, Tcl_NewStringObj(vectors[popedEvent->vector].name, strlen(vectors[popedEvent->vector].name))); data/ngspice-33+ds/src/tclspice.c:2377:84: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). Tcl_ListObjAppendElement(interp, list, Tcl_NewStringObj(popedEvent->ident, strlen(popedEvent->ident))); data/ngspice-33+ds/src/tclspice.c:2412:92: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). Tcl_ListObjAppendElement(interp, list, Tcl_NewStringObj(vectors[tmp->vector].name, strlen(vectors[tmp->vector].name))); data/ngspice-33+ds/src/tclspice.c:2644:28: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int prolog_len = strlen(prolog); data/ngspice-33+ds/src/tclspice.c:2645:28: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int epilog_len = strlen(epilog); data/ngspice-33+ds/src/tclspice.c:2682:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(p, prolog, prolog_len); data/ngspice-33+ds/src/unsupported/spiced.c:193:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). i = read(s, buf, BUFSIZ); data/ngspice-33+ds/src/winmain.c:193:38: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). NameW = TMALLOC(wchar_t, 2 * strlen(Name) + 1); data/ngspice-33+ds/src/winmain.c:194:67: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). MultiByteToWideChar(CP_UTF8, 0, Name, -1, NameW, 2 * (int)strlen(Name) + 1); data/ngspice-33+ds/src/winmain.c:267:13: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(OldAn, Analyse, 127); data/ngspice-33+ds/src/winmain.c:394:9: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i = strlen(Line); data/ngspice-33+ds/src/winmain.c:414:37: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). TWBuffer = TMALLOC(wchar_t, 2 * strlen(TBuffer) + 1); data/ngspice-33+ds/src/winmain.c:415:73: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (MultiByteToWideChar(CP_UTF8, 0, TBuffer, -1, TWBuffer, 2 * (int)strlen(TBuffer) + 1) == 0) data/ngspice-33+ds/src/winmain.c:416:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). swprintf(TWBuffer, 2 * strlen(TBuffer), L"UTF-8 to UTF-16 conversion failed with 0x%x\n%hs could not be converted\n", GetLastError(), TBuffer); data/ngspice-33+ds/src/winmain.c:602:45: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). newtextW = TMALLOC(wchar_t, 2 * strlen(newtext) + 1); data/ngspice-33+ds/src/winmain.c:604:66: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). CP_UTF8, 0, newtext, -1, newtextW, 2 * (int) strlen(newtext) + 1); data/ngspice-33+ds/src/winmain.c:637:46: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const int n_char_returned = (int)strlen(SBuffer); data/ngspice-33+ds/src/winmain.c:880:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (i = (signed)strlen(pWorkString) - 1; i >= 0; i--) data/ngspice-33+ds/src/winmain.c:891:13: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (strlen(pWorkString)) data/ngspice-33+ds/src/winmain.c:897:37: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (i = 0; i < (signed)strlen(pWorkString); i++) data/ngspice-33+ds/src/winmain.c:1403:16: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). return fgetc(stream); data/ngspice-33+ds/src/xspice/cmpp/ifs_lex.c:1262:14: [1] (buffer) getc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ data/ngspice-33+ds/src/xspice/cmpp/ifs_lex.c:2519:37: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). return yy_scan_bytes( yystr, (int) strlen(yystr) ); data/ngspice-33+ds/src/xspice/cmpp/ifs_yacc.c:1411:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). # define yystrlen strlen data/ngspice-33+ds/src/xspice/cmpp/mod_lex.c:1051:14: [1] (buffer) getc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ data/ngspice-33+ds/src/xspice/cmpp/mod_lex.c:2212:37: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). return yy_scan_bytes( yystr, (int) strlen(yystr) ); data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:385:20: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). int len = (int) strlen (str); data/ngspice-33+ds/src/xspice/cmpp/mod_yacc.c:1244:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). # define yystrlen strlen data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:694:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t n = strlen(model_info[j].path_name); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:699:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n_byte_needed += 1 + strlen(IFSPEC_FILENAME) + 1; data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:813:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t n = strlen(node_info[j].path_name); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:818:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). n_byte_needed += 1 + strlen(UDNFUNC_FILENAME) + 1; data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1548:13: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). c = fgetc(fp); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1552:17: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). c = fgetc(fp); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1555:25: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). c = fgetc(fp); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1557:29: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). c = fgetc(fp); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1578:21: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). c = fgetc(fp); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1584:21: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). c = fgetc(fp); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1588:29: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). c = fgetc(fp); data/ngspice-33+ds/src/xspice/cmpp/pp_lst.c:1616:17: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). strlen(name) + 1)) == (char *) NULL) { data/ngspice-33+ds/src/xspice/cmpp/pp_mod.c:87:60: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t prefix_len = p ? (size_t) (p - filename) : strlen(filename); data/ngspice-33+ds/src/xspice/cmpp/pp_mod.c:88:27: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t ext_len = strlen(ext); data/ngspice-33+ds/src/xspice/cmpp/util.c:126:39: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t len_prefix = strlen(e); data/ngspice-33+ds/src/xspice/cmpp/util.c:127:41: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). const size_t len_filename = strlen(filename); data/ngspice-33+ds/src/xspice/cmpp/writ_ifs.c:1220:29: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). str_len = (int) strlen(value.svalue); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:131:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). card = TMALLOC(char, strlen(d->line) + 2); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:132:9: [1] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant character. strcpy(card,"*"); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:402:27: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). inst_card_len += 2 * (strlen(name) + 1); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:405:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). inst_card_len += strlen(out_conn[i]) + 1; data/ngspice-33+ds/src/xspice/enh/enhtrans.c:407:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). inst_card_len += strlen(in_conn[i]) + 1; data/ngspice-33+ds/src/xspice/enh/enhtrans.c:410:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). mod_card_len += strlen(name) + 1; data/ngspice-33+ds/src/xspice/enh/enhtrans.c:412:25: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). mod_card_len += strlen(coef[i]) + 1; data/ngspice-33+ds/src/xspice/enh/enhtrans.c:420:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), "%s ", name); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:425:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), "%%vd [ "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:427:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), "%%vnam [ "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:431:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), "%s ", in_conn[i]); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:434:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), "] "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:440:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), "%%vd ( "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:442:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), "%%id ( "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:445:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), "%s ", out_conn[i]); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:447:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), ") "); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:451:26: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*inst_card + strlen(*inst_card), "a$poly$%s", name); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:457:29: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*mod_card + strlen(*mod_card), "%s ", coef[i]); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:458:5: [1] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source is a constant character. sprintf(*mod_card + strlen(*mod_card), "]"); data/ngspice-33+ds/src/xspice/enh/enhtrans.c:458:25: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). sprintf(*mod_card + strlen(*mod_card), "]"); data/ngspice-33+ds/src/xspice/evt/evtdeque.c:311:25: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. Mif_Boolean_t equal; data/ngspice-33+ds/src/xspice/evt/evtdeque.c:333:18: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. &equal); data/ngspice-33+ds/src/xspice/evt/evtdeque.c:334:14: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(! equal) { data/ngspice-33+ds/src/xspice/evt/evtdeque.c:345:18: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. &equal); data/ngspice-33+ds/src/xspice/evt/evtdeque.c:346:14: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(! equal) { data/ngspice-33+ds/src/xspice/evt/evtdeque.c:355:10: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(! equal) { data/ngspice-33+ds/src/xspice/evt/evtdump.c:156:25: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. Mif_Boolean_t equal; data/ngspice-33+ds/src/xspice/evt/evtdump.c:209:30: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). name_len = (int) strlen(name); data/ngspice-33+ds/src/xspice/evt/evtdump.c:290:28: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. &equal); data/ngspice-33+ds/src/xspice/evt/evtdump.c:292:21: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(!equal) { data/ngspice-33+ds/src/xspice/evt/evtdump.c:405:25: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. Mif_Boolean_t equal; data/ngspice-33+ds/src/xspice/evt/evtdump.c:446:29: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). name_len = (int)strlen(name); data/ngspice-33+ds/src/xspice/evt/evtdump.c:517:22: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. &equal); data/ngspice-33+ds/src/xspice/evt/evtdump.c:519:22: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if (!equal) { data/ngspice-33+ds/src/xspice/evt/evtiter.c:124:25: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. Mif_Boolean_t equal; data/ngspice-33+ds/src/xspice/evt/evtiter.c:194:26: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. &equal); data/ngspice-33+ds/src/xspice/evt/evtiter.c:195:22: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(! equal) { data/ngspice-33+ds/src/xspice/evt/evtiter.c:209:18: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(! equal) { data/ngspice-33+ds/src/xspice/evt/evtload.c:506:25: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. Mif_Boolean_t equal; data/ngspice-33+ds/src/xspice/evt/evtload.c:569:22: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. &equal); data/ngspice-33+ds/src/xspice/evt/evtload.c:570:18: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(! equal) { data/ngspice-33+ds/src/xspice/evt/evtload.c:583:22: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. &equal); data/ngspice-33+ds/src/xspice/evt/evtload.c:584:18: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(! equal) { data/ngspice-33+ds/src/xspice/evt/evtload.c:592:14: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(! equal) { data/ngspice-33+ds/src/xspice/evt/evtop.c:59:20: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. Mif_Boolean_t *equal); data/ngspice-33+ds/src/xspice/evt/evtop.c:220:25: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. Mif_Boolean_t equal; data/ngspice-33+ds/src/xspice/evt/evtop.c:265:59: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. EVTnode_compare(ckt, i, &(rhsold[i]), *here, &equal); data/ngspice-33+ds/src/xspice/evt/evtop.c:268:17: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(!equal) data/ngspice-33+ds/src/xspice/evt/evtop.c:299:20: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. Mif_Boolean_t *equal) /* The computed result */ data/ngspice-33+ds/src/xspice/evt/evtop.c:318:13: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. equal); data/ngspice-33+ds/src/xspice/icm/table/support/gettokens.c:29:27: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). buf = (char *) malloc(strlen(*s) + 1); data/ngspice-33+ds/src/xspice/icm/table/support/gettokens.c:73:31: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). ret_str = (char *) malloc(strlen(buf) + 1); data/ngspice-33+ds/src/xspice/icm/table/support/gettokens.c:140:11: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = strlen(str); data/ngspice-33+ds/src/xspice/idn/idndig.c:177:16: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. Boolean_t *equal) data/ngspice-33+ds/src/xspice/ipc/ipc.c:505:16: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = (int) strlen(str); data/ngspice-33+ds/src/xspice/ipc/ipc.c:839:7: [1] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant character. strcpy (fmt_buffer, " "); /* save room for the length byte */ data/ngspice-33+ds/src/xspice/ipc/ipc.c:841:7: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat (fmt_buffer, " "); data/ngspice-33+ds/src/xspice/ipc/ipc.c:846:63: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). len = stuff_binary_v1 (value, 0.0, 1, fmt_buffer, (int) strlen(fmt_buffer)); data/ngspice-33+ds/src/xspice/ipc/ipc.c:874:7: [1] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). Risk is low because the source is a constant character. strcpy (fmt_buffer, " "); /* save room for the length byte */ data/ngspice-33+ds/src/xspice/ipc/ipc.c:876:7: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat (fmt_buffer, " "); data/ngspice-33+ds/src/xspice/ipc/ipc.c:882:36: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). (int) strlen(fmt_buffer)); data/ngspice-33+ds/src/xspice/ipc/ipc.c:921:20: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if((len + (int) strlen(print_val) + 100) >= OUT_BUFFER_SIZE) { data/ngspice-33+ds/src/xspice/ipc/ipc.c:933:21: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). buff_len = (int) strlen(buff); data/ngspice-33+ds/src/xspice/ipc/ipc.c:969:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). buff_ptr += strlen(print_val); data/ngspice-33+ds/src/xspice/ipc/ipc.c:970:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). buff_len += (int) strlen(print_val); data/ngspice-33+ds/src/xspice/ipc/ipcaegis.c:92:37: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). mbx_$create_server (server_name, strlen (server_name), mbx_$serv_msg_max, data/ngspice-33+ds/src/xspice/ipc/ipcsockets.c:426:17: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). count = (int) read (stream, buffer, (size_t) length); data/ngspice-33+ds/src/xspice/ipc/ipcsockets.c:439:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). count = (int) read (stream, buf2, (size_t) length); data/ngspice-33+ds/src/xspice/ipc/ipcstdio.c:52:17: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). *len = (int) strlen (str); data/ngspice-33+ds/src/xspice/ipc/ipctiein.c:206:15: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). while( (c=fgetc(stdout)) != EOF) { data/ngspice-33+ds/src/xspice/ipc/ipctiein.c:252:15: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). while( (c=fgetc(stderr)) != EOF) { data/ngspice-33+ds/src/xspice/ipc/ipctiein.c:409:35: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). inst_name_len = (int) strlen(inst_name); data/ngspice-33+ds/src/xspice/mif/mifmpara.c:149:58: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). TMALLOC(char, 1 + strlen(value->sValue)); data/ngspice-33+ds/src/xspice/mif/mifmpara.c:191:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). TMALLOC(char, 1 + strlen(value->v.vec.sVec[i])); data/ngspice-33+ds/src/xspice/mif/mifutil.c:158:25: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). buf = TMALLOC(char, strlen(*s) + 2); ANALYSIS SUMMARY: Hits = 2136 Lines analyzed = 653939 in approximately 16.62 seconds (39341 lines/second) Physical Source Lines of Code (SLOC) = 519561 Hits@level = [0] 7947 [1] 457 [2] 1007 [3] 58 [4] 610 [5] 4 Hits@level+ = [0+] 10083 [1+] 2136 [2+] 1679 [3+] 672 [4+] 614 [5+] 4 Hits/KSLOC@level+ = [0+] 19.4068 [1+] 4.11116 [2+] 3.23157 [3+] 1.2934 [4+] 1.18177 [5+] 0.00769881 Dot directories skipped = 1 (--followdotdir overrides) Minimum risk level = 1 Not every hit is necessarily a security vulnerability. There may be other security vulnerabilities; review your code! See 'Secure Programming HOWTO' (https://dwheeler.com/secure-programs) for more information.