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/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__alloc.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__dirent.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__private.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__strl.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__glibc.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__alloc.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt_system.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/slist.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt_dlloader.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__argz_.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt_error.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__argz.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__dirent.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt_dlloader.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__strl.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt_error.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/shl_load.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/preopen.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/loadlibrary.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/dlopen.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/dyld.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/load_add_on.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/dld_link.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/libltdl/slist.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_certfp.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_ison.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svskill.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svsjoin.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_links.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_pong.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_trace.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_user.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_lusers.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_unxline.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svspart.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_motd.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_tburst.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_unkline.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_oper.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_set.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/extra/m_opme.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_webirc.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_knock.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_time.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_unresv.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_topic.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_admin.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_post.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_hash.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_capab.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svshost.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_encap.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_names.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svstag.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_undline.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_resv.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_kline.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_nick.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_quit.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_bmask.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_join.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_kill.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_squit.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_mode.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_server.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_die.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_message.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_tmode.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_part.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_error.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_kick.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svinfo.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_whois.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_whowas.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_cap.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_map.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_userhost.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_locops.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svsmode.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_eob.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_who.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_xline.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_etrace.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_globops.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_dline.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_pass.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_wallops.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_connect.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_ping.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_info.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_help.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svsnick.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_away.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_rehash.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_list.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_version.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_module.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_invite.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_restart.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/modules/m_close.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/channel_invite.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/tls_openssl.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/conf_gecos.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/extban.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/serno.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/res.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/watch.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/ircd.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/isupport.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/memory.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/tls.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/restart.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/id.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/client_svstag.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/irc_string.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/misc.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/tls_wolfssl.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/rng_mt.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/channel_mode.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/ipcache.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/send.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/ircd_defs.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/conf_class.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/tls_none.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/patricia.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/motd.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/event.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/fdlist.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/auth.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/tls_gnutls.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/conf_shared.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/packet.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/conf_resv.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/numeric.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/modules.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/conf_db.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/conf_cluster.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/hostmask.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/conf_pseudo.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/list.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/ircd_signal.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/server.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/user.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/ircd_getopt.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/listener.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/hash.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/stdinc.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/reslib.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/conf_service.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/client.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/log.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/s_bsd.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/dbuf.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/parse.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/server_capab.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/conf.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/whowas.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/patchlevel.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/include/defaults.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/list.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/rng_mt.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/send.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/client_svstag.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/match.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_join.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/memory.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/s_bsd_epoll.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/res.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_cluster.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_account.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/s_bsd_devpoll.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_class.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.h
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_gecos.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/packet.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_usermode.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_fingerprint.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/tls_openssl.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/ircd_signal.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_operclass.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/s_bsd_poll.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/s_bsd_kqueue.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/motd.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/parse.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_gecos.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/whowas.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/server.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/tls_gnutls.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/numeric.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/isupport.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/hash.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/log.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_pseudo.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/tls_none.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_nick.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/ipcache.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_server.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_service.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/listener.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/tls_wolfssl.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/dbuf.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_channel.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_shared.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/s_bsd.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/watch.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/irc_string.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/extban_mute.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/ircd.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/hostmask.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/client.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/fdlist.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/misc.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_resv.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/auth.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/id.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/restart.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/getopt.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/modules.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/channel_invite.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/event.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/server_capab.c
Examining data/ircd-hybrid-8.2.31+dfsg.1/src/user.c

FINAL RESULTS:

data/ircd-hybrid-8.2.31+dfsg.1/include/stdinc.h:87:41:  [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 AFP(a,b) __attribute__((format (printf, a, b)))
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__private.h:117: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.
  void *		system;		/* system specific data */
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/dlopen.c:229:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      sprintf (attempt, "%s%s", filename, member);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/loadlibrary.c:170: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(wpath, filename);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:522:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf (filename, "%.*s/%s", (int) dirname_len, dirname, dlname);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:718: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 (filename, dir_name);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:724: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 (filename +lendir, base_name);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:785:19:  [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.
  int		notfound	= access (filename, R_OK);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:922:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
		    sprintf (name, "lib%s", p+2);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1212:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      sprintf(attempt, "%s%s", filename, ext);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1307:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
	      sprintf (archive_name, "%s%s.%s", libprefix, name + 3, libext);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1311:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
	      sprintf (archive_name, "%s.%s", name, libext);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1820:3:  [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, dirnam);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2063: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(sym, handle->vtable->sym_prefix);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2064:4:  [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(sym, handle->info.name);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2068: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(sym, handle->info.name);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2072: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(sym, symbol);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2090: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(sym, handle->vtable->sym_prefix);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2091: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(sym, symbol);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2095: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(sym, symbol);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_join.c:277:11:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    len = sprintf(pbuf, "%s ", oldmode->key);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_join.c:303:11:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    len = sprintf(pbuf, "%s ", mode->key);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:347:16:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    uid_ptr += sprintf(uid_ptr, "%s%s ", uid_prefix, target_p->id);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:388:18:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
          slen = sprintf(sptr, " %s", para[lcount]);  /* see? */
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:414:18:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
          slen = sprintf(sptr, " %s", para[lcount]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:441:18:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
          slen = sprintf(sptr, " %s", para[lcount]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:489:14:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      slen = sprintf(sptr, " %s", para[lcount]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:543:11:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    len = sprintf(pbuf, "%s ", oldmode->key);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:566:11:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    len = sprintf(pbuf, "%s ", mode->key);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:634:13:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        l = sprintf(sp, " %s", lpara[i]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:657:11:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      l = sprintf(sp, " %s", lpara[i]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:713:13:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    pbuf += sprintf(pbuf, "%s ", ban->banstr);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_whois.c:85:20:  [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.
  cur_len = mlen = snprintf(buf, sizeof(buf), numeric_form(RPL_WHOISCHANNELS),
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_whois.c:104:14:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      tlen = sprintf(t, "%s%s%s ", show == 2 ? "~" : "", get_member_status(member, true),
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:191: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(t, member->client->id);
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:434:21:  [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.
    char *t = buf + snprintf(buf, sizeof(buf), numeric_form(RPL_NAMREPLY), me.name, client->name,
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:474:14:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        t += sprintf(t, "%s%s!%s@%s ", get_member_status(member, multi_prefix),
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:478:14:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        t += sprintf(t, "%s%s ", get_member_status(member, multi_prefix),
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:300:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      sprintf(pbuf, "%s ", channel->mode.key);
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:816:17:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      int len = sprintf(parptr, (pbl == 0) ? "%s" : " %s", arg);
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:904:19:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
        int len = sprintf(parptr, (pbl == 0) ? "%s" : " %s", arg);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:1336:12:  [4] (crypto) crypt:
  The crypt functions use a poor one-way hashing algorithm; since they only
  accept passwords of 8 characters or fewer and only a two-byte salt, they
  are excessively vulnerable to dictionary attacks given today's faster
  computing equipment (CWE-327). Use a different algorithm, such as SHA-256,
  with a larger, non-repeating salt.
    encr = crypt(password, conf->passwd);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_cluster.c:76:3:  [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.
  vsnprintf(buf, sizeof(buf), pattern, args);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c:2210: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/ircd-hybrid-8.2.31+dfsg.1/src/dbuf.c:105:17:  [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.
  dbuf->size += vsnprintf(dbuf->data + dbuf->size, sizeof(dbuf->data) - dbuf->size, data, args);
data/ircd-hybrid-8.2.31+dfsg.1/src/fdlist.c:149:5:  [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.
    vsnprintf(buf, sizeof(buf), format, args);
data/ircd-hybrid-8.2.31+dfsg.1/src/isupport.c:175:15:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    p += (n = sprintf(p, "%s", support->name));
data/ircd-hybrid-8.2.31+dfsg.1/src/isupport.c:180:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      p += (n = sprintf(p, "=%s", support->options));
data/ircd-hybrid-8.2.31+dfsg.1/src/log.c:112:3:  [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.
  vsnprintf(buf, sizeof(buf), fmt, args);
data/ircd-hybrid-8.2.31+dfsg.1/src/memory.c:75:3:  [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(ret, s);
data/ircd-hybrid-8.2.31+dfsg.1/src/restart.c:77:5:  [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.
    execv(SPATH, myargv);
data/ircd-hybrid-8.2.31+dfsg.1/src/send.c:826:3:  [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.
  vsnprintf(buffer, sizeof(buffer), pattern, args);
data/ircd-hybrid-8.2.31+dfsg.1/src/user.c:728:14:  [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.
      len += snprintf(nickbuf + len, sizeof(nickbuf) - len, len ? " %s" : "%s", client->name);
data/ircd-hybrid-8.2.31+dfsg.1/src/user.c:734:14:  [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.
      len += snprintf(nickbuf + len, sizeof(nickbuf) - len, len ? " %s" : "%s", client->name);
data/ircd-hybrid-8.2.31+dfsg.1/src/user.c:740:14:  [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.
      len += snprintf(nickbuf + len, sizeof(nickbuf) - len, len ? " %s" : "%s", client->name);
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:157:17:  [4] (misc) getpass:
  This function is obsolete and not portable. It was in SUSv2 but removed by
  POSIX.2. What it does exactly varies considerably between systems,
  particularly in where its prompt is displayed and where it gets its data
  (e.g., /dev/tty, stdin, stderr, etc.). In addition, some implementations
  overflow buffers. (CWE-676, CWE-120, CWE-20). Make the specific calls to do
  exactly what you want. If you continue to use it, or write your own, be
  sure to zero the password as soon as possible to avoid leaving the
  cleartext password visible in the process' address space.
    plaintext = getpass("plaintext: ");
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:159:14:  [4] (crypto) crypt:
  The crypt functions use a poor one-way hashing algorithm; since they only
  accept passwords of 8 characters or fewer and only a two-byte salt, they
  are excessively vulnerable to dictionary attacks given today's faster
  computing equipment (CWE-327). Use a different algorithm, such as SHA-256,
  with a larger, non-repeating salt.
  if ((ret = crypt(plaintext, salt)))
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/loadlibrary.c:199:14:  [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.
    module = LoadLibrary (wpath);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1361:22:  [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.
	      search_path = getenv (LTDL_SEARCHPATH_VAR);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1369:22:  [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.
	      search_path = getenv (LT_MODULE_PATH_VAR);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1469: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.
		   && !find_handle (getenv (LTDL_SEARCHPATH_VAR), base_name,
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1472: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.
		   && !find_handle (getenv (LT_MODULE_PATH_VAR), base_name,
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1925: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.
	  is_done = foreach_dirinpath (getenv(LTDL_SEARCHPATH_VAR), 0,
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1932: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.
	  is_done = foreach_dirinpath (getenv(LT_MODULE_PATH_VAR), 0,
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:63:24:  [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.
  for (int c = 0; (c = getopt(argc, argv, "56br:h?l:s:p:R:")) != -1; )
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:295:3:  [3] (random) srandom:
  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.
  srandom(time(NULL));
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:298:25:  [3] (random) random:
  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.
    salt[i] = saltChars[random() % 64];
data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h:65: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 key[KEYLEN + 1];    /**< +k key */
data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h:76: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 topic[TOPICLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h:77: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 topic_info[NICKLEN + USERLEN + HOSTLEN + 3];
data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h:97: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[CHANNELLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h:119: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 banstr[BANSTRLEN];
data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h:120: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[NICKLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h:121: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 user[USERLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h:122: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 host[HOSTLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/include/channel.h:123: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 who[NICKLEN + USERLEN + HOSTLEN + 3];
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:263: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 by[NICKLEN + 1];  /**< Who activated this connection */
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:280: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 topic[TOPICLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:381: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 away[AWAYLEN + 1];  /**< Client's AWAY message. Can be set/unset via AWAY command */
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:382: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[HOSTLEN + 1];  /**< Unique name for a client nick or host */
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:383: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 id[IDLEN + 1];  /**< Client ID, unique ID per client */
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:384: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 account[ACCOUNTLEN + 1];  /**< Services account */
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:393: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 username[USERLEN + 1];  /**< client's username */
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:400: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 host[HOSTLEN + 1];  /**< Client's hostname. Can be faked/spoofed */
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:407: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 realhost[HOSTLEN + 1];  /**< Client's real hostname */
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:414: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 info[REALLEN + 1];  /**< Free form additional client info */
data/ircd-hybrid-8.2.31+dfsg.1/include/client.h:421: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 sockhost[HOSTIPLEN + 1];  /**< This is the host name from the socket ip address as string */
data/ircd-hybrid-8.2.31+dfsg.1/include/conf_db.h: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 filename[HYB_PATH_MAX + 1];  /**< Name of the database file */
data/ircd-hybrid-8.2.31+dfsg.1/include/conf_db.h:39: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 tempname[HYB_PATH_MAX + 1];  /**< Name of the temporary file (for writing) */
data/ircd-hybrid-8.2.31+dfsg.1/include/dbuf.h:39: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 data[DBUF_BLOCK_SIZE];
data/ircd-hybrid-8.2.31+dfsg.1/include/fdlist.h:64:10:  [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).
    bool open;
data/ircd-hybrid-8.2.31+dfsg.1/include/listener.h:48: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[HOSTIPLEN + 1];  /**< Holds an IPv6 or IPv4 address in string representation*/
data/ircd-hybrid-8.2.31+dfsg.1/include/watch.h:39: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[NICKLEN + 1];  /**< Name of the client to watch */
data/ircd-hybrid-8.2.31+dfsg.1/include/whowas.h:42: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 account[ACCOUNTLEN + 1];  /**< Services account */
data/ircd-hybrid-8.2.31+dfsg.1/include/whowas.h: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 name[NICKLEN + 1];  /**< Client's nick name */
data/ircd-hybrid-8.2.31+dfsg.1/include/whowas.h: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 username[USERLEN + 1];  /**< Client's user name */
data/ircd-hybrid-8.2.31+dfsg.1/include/whowas.h:45: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[HOSTLEN + 1];  /**< Client's host name */
data/ircd-hybrid-8.2.31+dfsg.1/include/whowas.h:46: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 realhost[HOSTLEN + 1];  /**< Client's real host name */
data/ircd-hybrid-8.2.31+dfsg.1/include/whowas.h:47: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 sockhost[HOSTIPLEN + 1];  /**< Client's IP address as string */
data/ircd-hybrid-8.2.31+dfsg.1/include/whowas.h:48: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 realname[REALLEN + 1];  /**< Client's real name/gecos */
data/ircd-hybrid-8.2.31+dfsg.1/include/whowas.h:49: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 servername[HOSTLEN + 1];  /**< Name of the server the client is using */
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__dirent.h:65: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 d_name[LT_FILENAME_MAX];
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/dyld.c:326: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 saveError[256] = "Symbol not found";
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/loadlibrary.c:139: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		wpath[MAX_PATH];
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__alloc.c:87: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 (newmem, mem, n);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__argz.c:69: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 (argz + *pargz_len, buf, buf_len);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__argz.c:166: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  (before, entry, entry_len);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__dirent.c:51: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 file_spec[LT_FILENAME_MAX];
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt_error.c:36:14:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (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	error_strings[LT_ERROR_MAX][LT_ERROR_LEN_MAX + 1] =
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:756: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 ((*pfile = fopen (filename, LT_READTEXT_MODE)))
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1023:7:  [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(tmp, &str[1], (end - str) - 1);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1383: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).
	  file = fopen (attempt, LT_READTEXT_MODE);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2016: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	lsym[LT_SYMBOL_LENGTH];
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2071: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(sym, "_LTX_");
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_bmask.c:58: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 modebuf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_bmask.c:59: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 parabuf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_bmask.c:60: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 banbuf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_die.c:52: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_join.c:93: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 modebuf[MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_join.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 parabuf[MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_join.c:290: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.
    len = sprintf(pbuf, "%u ", mode->limit);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_join.c:336: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 lmodebuf[MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_join.c:337: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 sendbuf[MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_join.c:338: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.
  const char *lpara[MAXMODEPARAMS];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_kick.c:60: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 reason[KICKLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_kick.c:139: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 reason[KICKLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_kill.c:58: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[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_kill.c:168: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[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_mode.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 buf[UMODE_MAX_STR] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_mode.c:222: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 modebuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_mode.c:223: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 parabuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_nick.c:232: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 buf[UMODE_MAX_STR] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_nick.c:344: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).
  client_p->hopcount = atoi(parv[2]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_nick.c:367: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(&client_p->ip, res->ai_addr, res->ai_addrlen);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_nick.c:620: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 nick[NICKLEN + 1] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_nick.c:670: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 nick[NICKLEN + 1] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_quit.c:51: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 reason[KICKLEN + 1] = "Quit: ";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_quit.c:75: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 reason[KICKLEN + 1] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_server.c:121: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[UMODE_MAX_STR] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_server.c:588: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).
  source_p->hopcount = atoi(parv[2]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_server.c:759: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).
  target_p->hopcount = atoi(parv[2]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:77: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           uid_prefix[CMEMBER_STATUS_FLAGS_LEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:85: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 uid_buf[IRCD_BUFSIZE];  /* buffer for modes/prefixes */
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:90: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.
  const char *para[MAXMODEPARAMS];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:91: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 sendbuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:92: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 modebuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:93: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 parabuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:127:22:  [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).
        mode.limit = atoi(parv[4 + args]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:559: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.
    len = sprintf(pbuf, "%u ", mode->limit);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:606: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 lmodebuf[MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:607: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 sendbuf[MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:609: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.
  const char *lpara[MAXMODEPARAMS];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:678: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 modebuf[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:679: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 parabuf[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_squit.c:57: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 comment[REASONLEN + 1] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c:48: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c:121: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 nick[NICKLEN + 1] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c:122: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 user[USERLEN + 1] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c:123: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 host[HOSTLEN + 1] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_cap.c:154: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 capbuf[IRCD_BUFSIZE] = "", pfx[16];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_cap.c:155: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 cmdbuf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_dline.c:89: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_encap.c:46: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 buffer[IRCD_BUFSIZE] = "", *ptr = buffer;
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_help.c:45: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 line[HELPLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_help.c:47: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 ((file = fopen(path, "r")) == NULL)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_help.c:95: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 path[sizeof(HPATH) + IRCD_BUFSIZE + 1];  /* +1 for / */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_ison.c:51: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[IRCD_BUFSIZE] = "";  /* Essential that buf[0] = '\0' */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_kline.c:90: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_list.c:74:20:  [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 ((i = atoi(opt + 1)) > 0)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_list.c:80:20:  [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 ((i = atoi(opt + 1)) >= 0)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_list.c:90: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).
              if ((i = atoi(opt + 1)) >= 0)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_list.c:96: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).
              if ((i = atoi(opt + 1)) >= 0)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_list.c:112: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).
              if ((i = atoi(opt + 1)) >= 0)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_list.c:118: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).
              if ((i = atoi(opt + 1)) >= 0)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_map.c:42: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 prompt[64];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_map.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 buf[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_map.c:83: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(p, "|-");
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_pass.c:70: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).
    if (atoi(parv[3]) >= 6 && valid_sid(parv[4]))
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_restart.c:52: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_set.c:260: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.
  const char *names[4] = { "", "", "", "" };
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_set.c:343:22:  [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).
            newval = atoi(intarg);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:99: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 buf[sizeof(flag_table) / sizeof(flag_table[0])];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:135: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[sizeof(flag_table) / sizeof(flag_table[0]) + 1];  /* +1 for 'c' */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:178: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[sizeof(flag_table) / sizeof(flag_table[0]) + 1];  /* +1 for 'C' */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:265: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/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:507: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 ipaddr[HOSTIPLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:676: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 buf[USERLEN + 16];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:845: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[32];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:897: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/ircd-hybrid-8.2.31+dfsg.1/modules/m_svinfo.c:58:20:  [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 (TS_CURRENT < atoi(parv[2]) || atoi(parv[1]) < TS_MIN)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svinfo.c:58:37:  [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 (TS_CURRENT < atoi(parv[2]) || atoi(parv[1]) < TS_MIN)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svskill.c:55: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 reason[REASONLEN + 1] = "SVSKilled: ";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svsmode.c:171: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[UMODE_MAX_STR] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_svsnick.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[UMODE_MAX_STR] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_topic.c:84: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 topic_info[NICKLEN + USERLEN + HOSTLEN + 3];  /* +3 for !, @, \0 */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_topic.c:138: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 topic_info[NICKLEN + USERLEN + HOSTLEN + 3];  /* +3 for !, @, \0 */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_userhost.c:55: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 response[NICKLEN + USERLEN + HOSTLEN + 6]; /* +6 for "*=+@ \0" */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_userhost.c:56: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[IRCD_BUFSIZE] = "";  /* Essential that buf[0] = '\0' */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c:78: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 def[2] = "l";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c:144: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 buf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_webirc.c:109: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(&source_p->ip, res->ai_addr, res->ai_addrlen);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_who.c:59: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 status[8] = "";  /* sizeof("Gr*@%+") + 2 */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_whois.c:72: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_whowas.c:52: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).
    max = atoi(parv[2]);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_xline.c:72: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/auth.c:244: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 *vector[USERID_TOKEN_COUNT];
data/ircd-hybrid-8.2.31+dfsg.1/src/auth.c:328: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[RFC1413_BUFSIZ + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/auth.c:377: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 authbuf[16];
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:152: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:215: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 mbuf[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:216: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 pbuf[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:260: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 modebuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:261: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 parabuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:424: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[IRCD_BUFSIZE + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:507: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 buffer[CMEMBER_STATUS_FLAGS_LEN + 1];  /* +1 for \0 */
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:1071: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[KICKLEN + 1] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:82: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 buf[MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:107: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 mask[MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:244: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 mask[MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:292: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.
      pbuf += sprintf(pbuf, "%u ", channel->mode.limit);
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:533: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 buf[MAXPARA][MODEBUFLEN];
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:626: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).
    if (EmptyString(lstr) || (limit = atoi(lstr)) <= 0)
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:629: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(lstr, "%d", limit);
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:756: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 modebuf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:757: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 parabuf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:844: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 modebuf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:845: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 parabuf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/client.c:108: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(client->username, "unknown");
data/ircd-hybrid-8.2.31+dfsg.1/src/client.c:208: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[32];  /* 32 = sizeof("Ping timeout: 999999999 seconds") */
data/ircd-hybrid-8.2.31+dfsg.1/src/client.c:515: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 buf[HOSTLEN * 2 + USERLEN + 4];  /* +4 for [,@,],\0 */
data/ircd-hybrid-8.2.31+dfsg.1/src/client.c:831: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 splitstr[HOSTLEN + HOSTLEN + 2];
data/ircd-hybrid-8.2.31+dfsg.1/src/client.c:913: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 errmsg[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:79: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 conffilebuf[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:148: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(conf->addr, res->ai_addr, res->ai_addrlen);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:292: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 non_ident[USERLEN + 1] = "~";
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:789: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 buffer[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:948: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:951: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).
  conf_parser_ctx.conf_file = fopen(ConfigGeneral.configfile, "r");
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:1235: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 user[USERLEN * 2 + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:1236: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 host[HOSTLEN * 2 + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_cluster.c:73: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:100: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).
  f->fp = fopen(f->filename, "rb");
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:149:12:  [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).
  int fd = open(f->tempname, O_WRONLY | O_CREAT | O_EXCL, 0666);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c:1717: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 linebuf[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c:1718: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 conffilebuf[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c:1725: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 conffile[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c:2052:19:  [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).
{ yylval.number = atoi(yytext); return NUMBER; }
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c:4351: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 filenamebuf[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c:4370: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 *tmp_fbfile_in = fopen(filenamebuf, "r");
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c:110: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c:2459: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/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c:2648: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/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c:3128: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c:3154: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c:3180: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c:5128:7:  [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(conf->bind, res->ai_addr, res->ai_addrlen);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_pseudo.c:54: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 buffer[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_resv.c:111: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 nick[NICKLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_resv.c:112: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 user[USERLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_resv.c:113: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 host[HOSTLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/dbuf.c:129: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(&block->data[block->size], buf, avail);
data/ircd-hybrid-8.2.31+dfsg.1/src/extban.c:258: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 extban_chars[256] = { 0 };
data/ircd-hybrid-8.2.31+dfsg.1/src/extban.c:259: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 buf[sizeof(extban_chars) + 3 /* +3 = $,\0 */ ];
data/ircd-hybrid-8.2.31+dfsg.1/src/fdlist.c:145: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[FD_DESC_SIZE + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/fdlist.c:172: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).
    if (open("/dev/null", O_RDWR) < 0)
data/ircd-hybrid-8.2.31+dfsg.1/src/getopt.c:90:40:  [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 *)opts[i].argloc) = atoi((*argv)[1]);
data/ircd-hybrid-8.2.31+dfsg.1/src/getopt.c:103: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.
            *((char **)opts[i].argloc) = xstrdup((*argv)[1]);
data/ircd-hybrid-8.2.31+dfsg.1/src/hash.c:498: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 listbuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/hash.c:499: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 modebuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/hash.c:500: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 parabuf[MODEBUFLEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/hostmask.c:179: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.
  const char *digits[4];
data/ircd-hybrid-8.2.31+dfsg.1/src/id.c:32: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 new_uid[TOTALSIDUID + 1];  /* Allow for \0 */
data/ircd-hybrid-8.2.31+dfsg.1/src/ircd.c:204: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).
  if ((fb = fopen(filename, "w")))
data/ircd-hybrid-8.2.31+dfsg.1/src/ircd.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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/ircd.c:234: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/ircd.c:236: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).
  if ((fb = fopen(filename, "r")))
data/ircd-hybrid-8.2.31+dfsg.1/src/ircd.c:243:19:  [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).
      pid_t pid = atoi(buf);
data/ircd-hybrid-8.2.31+dfsg.1/src/isupport.c:156: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 isupportbuffer[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/isupport.c:186: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.
      p += (n = sprintf(p, "=%d", support->number));
data/ircd-hybrid-8.2.31+dfsg.1/src/listener.c:77: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 buf[HOSTLEN + HOSTIPLEN + PORTNAMELEN + 4];  /* +4 for [,/,],\0 */
data/ircd-hybrid-8.2.31+dfsg.1/src/listener.c:103:30:  [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).
  assert(listener->fd->flags.open);
data/ircd-hybrid-8.2.31+dfsg.1/src/listener.c:253:36:  [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).
        assert(listener->fd->flags.open);
data/ircd-hybrid-8.2.31+dfsg.1/src/listener.c:272:32:  [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).
    assert(listener->fd->flags.open);
data/ircd-hybrid-8.2.31+dfsg.1/src/listener.c:320: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 portname[PORTNAMELEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/listener.c:347: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((struct sockaddr*)&vaddr, res->ai_addr, res->ai_addrlen);
data/ircd-hybrid-8.2.31+dfsg.1/src/listener.c:369: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((struct sockaddr*)&vaddr, res->ai_addr, res->ai_addrlen);
data/ircd-hybrid-8.2.31+dfsg.1/src/listener.c:388:34:  [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).
      assert(listener->fd->flags.open);
data/ircd-hybrid-8.2.31+dfsg.1/src/log.c:49: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).
    log->file = fopen(log->path, "a");
data/ircd-hybrid-8.2.31+dfsg.1/src/log.c:69: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).
    log->file = fopen(log->path, "a");
data/ircd-hybrid-8.2.31+dfsg.1/src/log.c:105: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[LOG_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/log.c:130: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).
  log->file = fopen(log->path, "a");
data/ircd-hybrid-8.2.31+dfsg.1/src/misc.c:36: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 buf[80];
data/ircd-hybrid-8.2.31+dfsg.1/src/misc.c:54: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 buf[MAX_DATE_STRING];
data/ircd-hybrid-8.2.31+dfsg.1/src/misc.c:84: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 buf[MAX_DATE_STRING];
data/ircd-hybrid-8.2.31+dfsg.1/src/misc.c:102: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 buf[32];  /* 32 = sizeof("9999999999999999 days, 23:59:59") */
data/ircd-hybrid-8.2.31+dfsg.1/src/modules.c:313: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 module_fq_name[HYB_PATH_MAX + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/modules.c:364: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 module_name[HYB_PATH_MAX + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/modules.c:391: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 path[HYB_PATH_MAX + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/motd.c:101: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 line[MOTD_LINESIZE + 2];  /* +2 for \r\n */
data/ircd-hybrid-8.2.31+dfsg.1/src/motd.c:134: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 *file = fopen(motd->path, "r");
data/ircd-hybrid-8.2.31+dfsg.1/src/motd.c:163: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(motd->cache, cache, sizeof(*motd->cache) + (MOTD_LINESIZE * cache->count));
data/ircd-hybrid-8.2.31+dfsg.1/src/packet.c:45: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 readBuf[READBUF_SIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/parse.c:247: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 *para[MAXPARA + 2];  /* <command> + <parameters> + NULL */
data/ircd-hybrid-8.2.31+dfsg.1/src/parse.c:259:40:  [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).
  assert(client->connection->fd->flags.open);
data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c:70:38:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    if (mask % 8 == 0 || (((unsigned char *)addr)[n] & m) == (((unsigned char *)dest)[n] & m))
data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c:70:74:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    if (mask % 8 == 0 || (((unsigned char *)addr)[n] & m) == (((unsigned char *)dest)[n] & m))
data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c:83: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 buf[INET6_ADDRSTRLEN + sizeof("/128")];
data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c:93: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 + strlen(buf), "/%d", prefix->bitlen);
data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c:120: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(&prefix->add.sin6, dest, addr_size);
data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c:140: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 save[INET6_ADDRSTRLEN];
data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c:172: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).
    bitlen = atoi(cp + 1);
data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c:175: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(save, string, length);
data/ircd-hybrid-8.2.31+dfsg.1/src/res.c:89: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[RFC1035_MAX_DOMAIN_LENGTH + 1];  /**< Hostname for this request. */
data/ircd-hybrid-8.2.31+dfsg.1/src/res.c:253: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.
  unsigned char buf[MAXPACKET];
data/ircd-hybrid-8.2.31+dfsg.1/src/res.c:286: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 host_name[RFC1035_MAX_DOMAIN_LENGTH + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/res.c:309: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 ipbuf[128] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/res.c:399: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 hostbuf[RFC1035_MAX_DOMAIN_LENGTH + 100]; /* working buffer */
data/ircd-hybrid-8.2.31+dfsg.1/src/res.c:463: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(&v4->sin_addr, current, sizeof(struct in_addr));
data/ircd-hybrid-8.2.31+dfsg.1/src/res.c:477: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(&v6->sin6_addr, current, sizeof(struct in6_addr));
data/ircd-hybrid-8.2.31+dfsg.1/src/res.c:512: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.
  unsigned char buf[sizeof(HEADER) + MAXPACKET];
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:95:14:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (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 digitvalue[256] = {
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:157: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(&irc_nsaddr_list[irc_nscount].ss, res->ai_addr, res->ai_addrlen);
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:174: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 input[MAXLINE];
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.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 ((file = fopen("/etc/resolv.conf", "r")) == NULL)
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:273: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.
  unsigned char tmp[NS_MAXCDNAME];
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:333: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(dstp, srcp, l);
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:668: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.
        dn += sprintf(dn, "\\[x");
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:670:23:  [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.
                dn += sprintf(dn, "%02x", *cp & 0xff);
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:673:23:  [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.
                dn += sprintf(dn, "%02x", tc & (0xff << (8 - b)));
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:676: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.
               dn += sprintf(dn, "%1x",
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:679: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.
        dn += sprintf(dn, "/%d]", blen);
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:936: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(dstp, srcp, n + 1);
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:957: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.
  unsigned char tmp[NS_MAXCDNAME];
data/ircd-hybrid-8.2.31+dfsg.1/src/reslib.c:1168: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.
	const unsigned char *dnptrs[20], **dpp, **lastdnptr;
data/ircd-hybrid-8.2.31+dfsg.1/src/restart.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 buffer[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/s_bsd_devpoll.c:56:21:  [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 ((devpoll_fd = open("/dev/poll", O_RDWR)) < 0)
data/ircd-hybrid-8.2.31+dfsg.1/src/send.c:818: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 buffer[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/server.c:61: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/server.c:67: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 *file = fopen(ConfigServerHide.flatten_links_file, "w");
data/ircd-hybrid-8.2.31+dfsg.1/src/server.c:115: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[IRCD_BUFSIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/server.c:120: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 *file = fopen(ConfigServerHide.flatten_links_file, "r");
data/ircd-hybrid-8.2.31+dfsg.1/src/server.c:384: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[HOSTIPLEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/server_capab.c:130: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 buf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_gnutls.c:170: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 buf[128];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_gnutls.c:183: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 buf[256];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_gnutls.c:333: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.
  unsigned char digestbuf[TLS_GNUTLS_MAX_HASH_SIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_gnutls.c:335: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[TLS_GNUTLS_MAX_HASH_SIZE * 2 + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_openssl.c:196: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 buf[128];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_openssl.c:206: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 buf[256];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_openssl.c:371: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[EVP_MAX_MD_SIZE * 2 + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_openssl.c:372: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.
  unsigned char md[EVP_MAX_MD_SIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_wolfssl.c:176: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 buf[128];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_wolfssl.c:186: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 buf[256];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_wolfssl.c:350: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[EVP_MAX_MD_SIZE * 2 + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/tls_wolfssl.c:351: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.
  unsigned char md[EVP_MAX_MD_SIZE];
data/ircd-hybrid-8.2.31+dfsg.1/src/user.c:56: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 umode_buffer[UMODE_MAX_STR];
data/ircd-hybrid-8.2.31+dfsg.1/src/user.c:206: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[UMODE_MAX_STR] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/user.c:322: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 username[USERLEN + 1] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/user.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 buf[IRCD_BUFSIZE] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/user.c:681: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[UMODE_MAX_STR] = "";
data/ircd-hybrid-8.2.31+dfsg.1/src/user.c:719: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 modebuf[CMEMBER_STATUS_FLAGS_LEN + 1];
data/ircd-hybrid-8.2.31+dfsg.1/src/user.c:720: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 nickbuf[CMEMBER_STATUS_FLAGS_LEN * NICKLEN + CMEMBER_STATUS_FLAGS_LEN] = "";
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:79: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).
        if ((length = atoi(optarg)) < 0)
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:84: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).
        if ((rounds = atoi(optarg)) < 0)
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:170: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 salt[21];
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:188: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 salt[21];
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:211: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 salt[21];
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:229: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 salt[21];
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:252: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 salt[31];
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:253: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 tbuf[3];
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:272: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 salt[31];
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:273: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 tbuf[3];
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:309: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).
  if ((fd = open("/dev/random", O_RDONLY)) < 0)
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__dirent.h:46: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).
#  define D_NAMLEN(dirent) (strlen((dirent)->d_name))
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/libltdl/lt__dirent.h:54: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).
#  define D_NAMLEN(dirent)	(strlen((dirent)->d_name))
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/dlopen.c:222: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 *attempt = MALLOC (char, len + strlen (member) + 1);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/loaders/loadlibrary.c:179: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).
	    len = strlen (wpath);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__alloc.c:95: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).
  return (char *) lt__memdup (string, strlen (string) +1);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__argz.c:91: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).
  argz_len = 1+ strlen (str);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__argz.c:141: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).
    return argz_append (pargz, pargz_len, entry, 1+ strlen (entry));
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__argz.c:150: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).
    size_t entry_len	= 1+ strlen (entry);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__dirent.c:101: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).
  entry->file_info.d_namlen = strlen (entry->file_info.d_name);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/lt__strl.c:61: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).
  length=strlen(dst);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1293: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).
	  archive_name = MALLOC (char, strlen (libprefix) + LT_STRLEN (name) + strlen (libext) + 2);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1293: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).
	  archive_name = MALLOC (char, strlen (libprefix) + LT_STRLEN (name) + strlen (libext) + 2);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1731: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).
    error = argz_append (pargz, pargz_len, entry, 1 + strlen (entry));
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1821:3:  [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/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:1822:3:  [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, dp->d_name, end_offset);
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.c:2166:48:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      assert ((int) (before - *ppath) <= (int) strlen (*ppath));
data/ircd-hybrid-8.2.31+dfsg.1/libltdl/ltdl.h:44: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).
#define LT_STRLEN(s)	(((s) && (s)[0]) ? strlen (s) : 0)
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_bmask.c:110: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).
    tlen = strlen(s);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_bmask.c:119: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).
      tlen = strlen(mask);
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_kill.c:70: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).
    if (strlen(reason) > (size_t)REASONLEN)
data/ircd-hybrid-8.2.31+dfsg.1/modules/core/m_sjoin.c:309: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_uid = strlen(target_p->id);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c:54: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).
  size_t len = strlen(me.name) + strlen(source_p->name) + 10;
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c:54: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(me.name) + strlen(source_p->name) + 10;
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c:59: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).
    size_t masklen = strlen(accept_p->nickptr) +
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c:60: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).
                     strlen(accept_p->userptr) +
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_accept.c:61: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).
                     strlen(accept_p->hostptr) + 3;  /* +3 for ! + @ + space */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_encap.c:55: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(parv[i]) + 1;  /* +1 for the space */
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_encap.c:85: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).
  mptr->bytes += strlen(buffer);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_ison.c:56: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).
  size_t len = strlen(me.name) + strlen(source_p->name) + 10;
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_ison.c:56: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(me.name) + strlen(source_p->name) + 10;
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_ison.c:66: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).
    if ((bufptr - buf) + strlen(target_p->name) + len + 1 /* +1 for space */ > sizeof(buf))
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_pass.c:66: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).
  source_p->connection->password = xstrndup(parv[1], IRCD_MIN(strlen(parv[1]), PASSWDLEN));
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:406: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).
        safelist_memory += strlen(node2->data);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_stats.c:409: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).
        safelist_memory += strlen(node2->data);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_userhost.c:62: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).
  size_t len = strlen(me.name) + strlen(source_p->name) + 10;
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_userhost.c:62: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(me.name) + strlen(source_p->name) + 10;
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c:176: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).
      count = strlen(source_p->name) + strlen(me.name) + 10 + strlen(buf);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c:176: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).
      count = strlen(source_p->name) + strlen(me.name) + 10 + strlen(buf);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c:176: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).
      count = strlen(source_p->name) + strlen(me.name) + 10 + strlen(buf);
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c:182: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 (count + strlen(watch->name) + 1 > IRCD_BUFSIZE - 2)
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c:186: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).
          count = strlen(source_p->name) + strlen(me.name) + 10;
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c:186: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).
          count = strlen(source_p->name) + strlen(me.name) + 10;
data/ircd-hybrid-8.2.31+dfsg.1/modules/m_watch.c:191: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).
        count += strlen(watch->name) + 1;
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:164: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).
    tlen = strlen(member->client->id) + 1;  /* +1 for space */
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:193: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).
    t += strlen(t);
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:446: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).
        tlen = strlen(member->client->name) + strlen(member->client->username) +
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:446: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).
        tlen = strlen(member->client->name) + strlen(member->client->username) +
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:447: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).
               strlen(member->client->host) + 3;  /* +3 for ! + @ + space */
data/ircd-hybrid-8.2.31+dfsg.1/src/channel.c:449: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).
        tlen = strlen(member->client->name) + 1;  /* +1 for space */
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:76:5:  [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(str, "*");
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:778: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).
      arglen = strlen(arg);
data/ircd-hybrid-8.2.31+dfsg.1/src/channel_mode.c:865: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).
        arglen = strlen(arg);
data/ircd-hybrid-8.2.31+dfsg.1/src/client.c:109:3:  [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(client->account, "*");
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:205: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).
    memset(conf->passwd, 0, strlen(conf->passwd));
data/ircd-hybrid-8.2.31+dfsg.1/src/conf.c:207: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).
    memset(conf->spasswd, 0, strlen(conf->spasswd));
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:294:12:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int c1 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:295:12:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int c2 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:329:12:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int c1 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:330:12:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int c2 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:331:12:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int c3 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:332:12:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int c4 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:371:16:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int64_t c1 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:372:16:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int64_t c2 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:373:16:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int64_t c3 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:374:16:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int64_t c4 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:375:16:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int64_t c5 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:376:16:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int64_t c6 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:377:16:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int64_t c7 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:378:16:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  int64_t c8 = fgetc(f->fp);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_db.c:461: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).
  uint32_t len = strlen(s);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c:1737: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).
  return fgets(lbuf, max_size, conf_parser_ctx.conf_file) == NULL ? 0 : strlen(lbuf);
data/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c:1855: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/ircd-hybrid-8.2.31+dfsg.1/src/conf_lexer.c:4058: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/ircd-hybrid-8.2.31+dfsg.1/src/conf_parser.c:2356: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/ircd-hybrid-8.2.31+dfsg.1/src/conf_resv.c:102: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).
  resv->reason = xstrndup(reason, IRCD_MIN(strlen(reason), REASONLEN));
data/ircd-hybrid-8.2.31+dfsg.1/src/hash.c:306: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 (IsDigit(*name) && strlen(name) == IRC_MAXSID)
data/ircd-hybrid-8.2.31+dfsg.1/src/hostmask.c:393: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).
  for (p = text + strlen(text) - 1; p >= text; --p)
data/ircd-hybrid-8.2.31+dfsg.1/src/id.c:37: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).
  if (strlen(sid) == IRC_MAXSID)
data/ircd-hybrid-8.2.31+dfsg.1/src/id.c:48: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).
  if (strlen(uid) != TOTALSIDUID)
data/ircd-hybrid-8.2.31+dfsg.1/src/irc_string.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).
  char *tmp = txt + strlen(txt) - 1;
data/ircd-hybrid-8.2.31+dfsg.1/src/irc_string.c:170: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).
    return dlen + strlen(src);
data/ircd-hybrid-8.2.31+dfsg.1/src/ircd.c:374:3:  [1] (access) umask:
  Ensure that umask is given most restrictive possible setting (e.g., 066 or
  077) (CWE-732).
  umask(077);  /* umask 077: u=rwx,g=,o= */
data/ircd-hybrid-8.2.31+dfsg.1/src/isupport.c:162: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 reserve = strlen(me.name) + HOSTLEN + strlen(numeric_form(RPL_ISUPPORT));
data/ircd-hybrid-8.2.31+dfsg.1/src/isupport.c:162:48:  [1] (buffer) strlen:
  Does not handle 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 reserve = strlen(me.name) + HOSTLEN + strlen(numeric_form(RPL_ISUPPORT));
data/ircd-hybrid-8.2.31+dfsg.1/src/memory.c:70: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).
  void *ret = malloc(strlen(s) + 1);
data/ircd-hybrid-8.2.31+dfsg.1/src/motd.c:429: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).
    mtm += MotdList.local->path ? (strlen(MotdList.local->path) + 1) : 0;
data/ircd-hybrid-8.2.31+dfsg.1/src/motd.c:436: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).
    mtm += MotdList.remote->path ? (strlen(MotdList.remote->path) + 1) : 0;
data/ircd-hybrid-8.2.31+dfsg.1/src/motd.c:445: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).
    mtm += motd->path ? (strlen(motd->path) + 1) : 0;
data/ircd-hybrid-8.2.31+dfsg.1/src/parse.c:119: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).
  if ((IsDigit(*lsender) && strlen(lsender) <= IRC_MAXSID) || strchr(lsender, '.'))
data/ircd-hybrid-8.2.31+dfsg.1/src/patricia.c:93: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).
    sprintf(buf + strlen(buf), "/%d", prefix->bitlen);
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:172: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 (saltpara && strlen(saltpara) <= 16)
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:213: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 (saltpara && strlen(saltpara) <= 16)
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:255: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 (saltpara && strlen(saltpara) >= 22)
data/ircd-hybrid-8.2.31+dfsg.1/tools/mkpasswd.c:314:7:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (read(fd, buf, length) != (ssize_t)length)

ANALYSIS SUMMARY:

Hits = 467
Lines analyzed = 66487 in approximately 1.79 seconds (37183 lines/second)
Physical Source Lines of Code (SLOC) = 44015
Hits@level = [0] 215 [1]  94 [2] 306 [3]  10 [4]  57 [5]   0
Hits@level+ = [0+] 682 [1+] 467 [2+] 373 [3+]  67 [4+]  57 [5+]   0
Hits/KSLOC@level+ = [0+] 15.4947 [1+] 10.61 [2+] 8.47438 [3+] 1.52221 [4+] 1.29501 [5+]   0
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.