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/gnome-panel-3.38.0/modules/menu/gp-screensaver-gen.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-bookmarks.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-places-menu.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-button-applet.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-user-menu.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-login1-manager-gen.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-recent-menu.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-recent-menu.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-screensaver-gen.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-bar-applet.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-volumes.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-lock-logout.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-dm-seat-gen.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-bookmarks.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-utils.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-session-manager-gen.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-session-manager-gen.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-dm-seat-gen.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-lock-logout.c
Examining data/gnome-panel-3.38.0/modules/menu/menu-resources.h
Examining data/gnome-panel-3.38.0/modules/menu/menu-resources.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-button-applet.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-bar-applet.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-bar.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-volumes.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-module.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-utils.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-places-menu.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-login1-manager-gen.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-main-menu-applet.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-main-menu-applet.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-button.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-bar.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-user-menu-applet.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-menu-button.h
Examining data/gnome-panel-3.38.0/modules/menu/gp-user-menu.c
Examining data/gnome-panel-3.38.0/modules/menu/gp-user-menu-applet.h
Examining data/gnome-panel-3.38.0/modules/fish/fish-module.c
Examining data/gnome-panel-3.38.0/modules/fish/fish-applet.h
Examining data/gnome-panel-3.38.0/modules/fish/fish-applet.c
Examining data/gnome-panel-3.38.0/modules/fish/fish-resources.h
Examining data/gnome-panel-3.38.0/modules/fish/fish-resources.c
Examining data/gnome-panel-3.38.0/modules/notification-area/na-tray.h
Examining data/gnome-panel-3.38.0/modules/notification-area/na-tray-child.h
Examining data/gnome-panel-3.38.0/modules/notification-area/na-applet.c
Examining data/gnome-panel-3.38.0/modules/notification-area/fixedtip.h
Examining data/gnome-panel-3.38.0/modules/notification-area/na-tray.c
Examining data/gnome-panel-3.38.0/modules/notification-area/na-tray-manager.c
Examining data/gnome-panel-3.38.0/modules/notification-area/fixedtip.c
Examining data/gnome-panel-3.38.0/modules/notification-area/na-tray-manager.h
Examining data/gnome-panel-3.38.0/modules/notification-area/na-tray-child.c
Examining data/gnome-panel-3.38.0/modules/notification-area/na-applet.h
Examining data/gnome-panel-3.38.0/modules/notification-area/na-module.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-face.h
Examining data/gnome-panel-3.38.0/modules/clock/clock-module.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-sunpos.c
Examining data/gnome-panel-3.38.0/modules/clock/calendar-debug.h
Examining data/gnome-panel-3.38.0/modules/clock/clock-resources.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-utils.h
Examining data/gnome-panel-3.38.0/modules/clock/calendar-client.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-sunpos.h
Examining data/gnome-panel-3.38.0/modules/clock/clock-location-tile.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-location.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-location.h
Examining data/gnome-panel-3.38.0/modules/clock/clock-face.c
Examining data/gnome-panel-3.38.0/modules/clock/calendar-client.h
Examining data/gnome-panel-3.38.0/modules/clock/clock-applet.h
Examining data/gnome-panel-3.38.0/modules/clock/clock-applet.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-location-tile.h
Examining data/gnome-panel-3.38.0/modules/clock/calendar-sources.h
Examining data/gnome-panel-3.38.0/modules/clock/clock-typebuiltins.h
Examining data/gnome-panel-3.38.0/modules/clock/clock-map.h
Examining data/gnome-panel-3.38.0/modules/clock/clock-typebuiltins.c
Examining data/gnome-panel-3.38.0/modules/clock/calendar-sources.c
Examining data/gnome-panel-3.38.0/modules/clock/calendar-window.h
Examining data/gnome-panel-3.38.0/modules/clock/set-timezone.h
Examining data/gnome-panel-3.38.0/modules/clock/calendar-window.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-map.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-resources.h
Examining data/gnome-panel-3.38.0/modules/clock/set-timezone.c
Examining data/gnome-panel-3.38.0/modules/clock/clock-utils.c
Examining data/gnome-panel-3.38.0/modules/separator/separator-module.c
Examining data/gnome-panel-3.38.0/modules/separator/separator-applet.h
Examining data/gnome-panel-3.38.0/modules/separator/separator-applet.c
Examining data/gnome-panel-3.38.0/modules/launcher/gp-launcher-button.c
Examining data/gnome-panel-3.38.0/modules/launcher/gp-custom-launcher-applet.c
Examining data/gnome-panel-3.38.0/modules/launcher/gp-editor.c
Examining data/gnome-panel-3.38.0/modules/launcher/gp-custom-launcher-applet.h
Examining data/gnome-panel-3.38.0/modules/launcher/gp-icon-name-chooser.h
Examining data/gnome-panel-3.38.0/modules/launcher/gp-launcher-applet.c
Examining data/gnome-panel-3.38.0/modules/launcher/launcher-resources.c
Examining data/gnome-panel-3.38.0/modules/launcher/gp-launcher-utils.c
Examining data/gnome-panel-3.38.0/modules/launcher/gp-launcher-utils.h
Examining data/gnome-panel-3.38.0/modules/launcher/gp-launcher-properties.h
Examining data/gnome-panel-3.38.0/modules/launcher/gp-launcher-properties.c
Examining data/gnome-panel-3.38.0/modules/launcher/gp-editor.h
Examining data/gnome-panel-3.38.0/modules/launcher/gp-launcher-button.h
Examining data/gnome-panel-3.38.0/modules/launcher/launcher-resources.h
Examining data/gnome-panel-3.38.0/modules/launcher/gp-launcher-applet.h
Examining data/gnome-panel-3.38.0/modules/launcher/gp-launcher-module.c
Examining data/gnome-panel-3.38.0/modules/launcher/gp-icon-name-chooser.c
Examining data/gnome-panel-3.38.0/modules/action-button/gp-shutdown-applet.c
Examining data/gnome-panel-3.38.0/modules/action-button/panel-force-quit.h
Examining data/gnome-panel-3.38.0/modules/action-button/gp-shutdown-applet.h
Examining data/gnome-panel-3.38.0/modules/action-button/gpab-session-manager-gen.c
Examining data/gnome-panel-3.38.0/modules/action-button/panel-force-quit.c
Examining data/gnome-panel-3.38.0/modules/action-button/gp-action-button-module.c
Examining data/gnome-panel-3.38.0/modules/action-button/action-button-resources.c
Examining data/gnome-panel-3.38.0/modules/action-button/gp-logout-applet.h
Examining data/gnome-panel-3.38.0/modules/action-button/gp-action-button-applet.c
Examining data/gnome-panel-3.38.0/modules/action-button/gpab-screensaver-gen.c
Examining data/gnome-panel-3.38.0/modules/action-button/gp-force-quit-applet.c
Examining data/gnome-panel-3.38.0/modules/action-button/gp-run-applet.c
Examining data/gnome-panel-3.38.0/modules/action-button/gp-action-button-applet.h
Examining data/gnome-panel-3.38.0/modules/action-button/gp-action-button.h
Examining data/gnome-panel-3.38.0/modules/action-button/gpab-screensaver-gen.h
Examining data/gnome-panel-3.38.0/modules/action-button/gp-logout-applet.c
Examining data/gnome-panel-3.38.0/modules/action-button/gp-action-button.c
Examining data/gnome-panel-3.38.0/modules/action-button/gp-run-applet.h
Examining data/gnome-panel-3.38.0/modules/action-button/gp-lock-screen-applet.c
Examining data/gnome-panel-3.38.0/modules/action-button/gp-lock-screen-applet.h
Examining data/gnome-panel-3.38.0/modules/action-button/gpab-session-manager-gen.h
Examining data/gnome-panel-3.38.0/modules/action-button/action-button-resources.h
Examining data/gnome-panel-3.38.0/modules/action-button/gp-force-quit-applet.h
Examining data/gnome-panel-3.38.0/modules/wncklet/window-list.h
Examining data/gnome-panel-3.38.0/modules/wncklet/wncklet-resources.h
Examining data/gnome-panel-3.38.0/modules/wncklet/window-menu.h
Examining data/gnome-panel-3.38.0/modules/wncklet/showdesktop.h
Examining data/gnome-panel-3.38.0/modules/wncklet/window-list.c
Examining data/gnome-panel-3.38.0/modules/wncklet/wncklet-resources.c
Examining data/gnome-panel-3.38.0/modules/wncklet/workspace-switcher.h
Examining data/gnome-panel-3.38.0/modules/wncklet/showdesktop.c
Examining data/gnome-panel-3.38.0/modules/wncklet/window-menu.c
Examining data/gnome-panel-3.38.0/modules/wncklet/wncklet.h
Examining data/gnome-panel-3.38.0/modules/wncklet/wncklet-module.c
Examining data/gnome-panel-3.38.0/modules/wncklet/wncklet.c
Examining data/gnome-panel-3.38.0/modules/wncklet/workspace-switcher.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-dbus-menu-item.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-watcher-v0-gen.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-host.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-host.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-dbus-menu-gen.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-applet.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-host-v0.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-item-v0-gen.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-dbus-menu-item.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-applet.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-item-v0.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-dbus-menu.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-module.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-dbus-menu-gen.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-item.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-host-v0-gen.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-item-v0-gen.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-host-v0-gen.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-dbus-menu.c
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-host-v0.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-item.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-watcher-v0-gen.h
Examining data/gnome-panel-3.38.0/modules/status-notifier/sn-item-v0.h
Examining data/gnome-panel-3.38.0/gnome-panel/gp-theme.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-resources.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-context-menu.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-arrow-button.h
Examining data/gnome-panel-3.38.0/gnome-panel/gp-application.h
Examining data/gnome-panel-3.38.0/gnome-panel/gp-session.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-applet-row.h
Examining data/gnome-panel-3.38.0/gnome-panel/gp-properties-dialog.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-bindings.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-toplevel.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-layout.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-typebuiltins.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-struts.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-main.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-applets-manager.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-arrow-button.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-typebuiltins.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-bindings.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-enums-gsettings.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-widget.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-a11y.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-xutils.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.h
Examining data/gnome-panel-3.38.0/gnome-panel/gp-module-manager.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-lockdown.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-object-loader.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-schemas.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-action-protocol.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-util.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-util.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-object-loader.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-multiscreen.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-layout.c
Examining data/gnome-panel-3.38.0/gnome-panel/applet.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-widget.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-properties-dialog.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-action-protocol.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-xutils.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-add-applet-window.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-resources.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-application.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-multiscreen.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-icon-names.h
Examining data/gnome-panel-3.38.0/gnome-panel/gp-theme.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-struts.h
Examining data/gnome-panel-3.38.0/gnome-panel/gp-add-applet-window.c
Examining data/gnome-panel-3.38.0/gnome-panel/applet.c
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-xdg.h
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-dconf.c
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-glib.c
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-show.h
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-keyfile.h
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-cleanup.c
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-xdg.c
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-error.h
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-gsettings.c
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-cleanup.h
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-dconf.h
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-glib.h
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-keyfile.c
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-error.c
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-gsettings.h
Examining data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-show.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-context-menu.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-a11y.h
Examining data/gnome-panel-3.38.0/gnome-panel/gp-applet-row.c
Examining data/gnome-panel-3.38.0/gnome-panel/gp-session.h
Examining data/gnome-panel-3.38.0/gnome-panel/gp-module-manager.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-applet-frame.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-applet-frame.c
Examining data/gnome-panel-3.38.0/gnome-panel/panel-lockdown.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-toplevel.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-applets-manager.h
Examining data/gnome-panel-3.38.0/gnome-panel/panel-types.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-utils.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-initial-setup-dialog.c
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-initial-setup-dialog.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-applet-private.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-applet-info.c
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-module.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-action-private.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-enum-types.c
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-initial-setup-dialog-private.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-image-menu-item.c
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-action.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-image-menu-item.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-lockdown.c
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-applet.c
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-applet-info-private.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-lockdown.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-utils.c
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-applet-info.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-enum-types.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-module.c
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-action.c
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-applet.h
Examining data/gnome-panel-3.38.0/libgnome-panel/gp-module-private.h

FINAL RESULTS:

data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-keyfile.c:129: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 (new_data, KEYFILE_TRUSTED_SHEBANG);
data/gnome-panel-3.38.0/modules/clock/calendar-debug.h:33:24:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
#  define dprintf(...) fprintf (stderr, __VA_ARGS__);
data/gnome-panel-3.38.0/modules/clock/calendar-debug.h:35:28:  [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 dprintf(args...) fprintf (stderr, args);
data/gnome-panel-3.38.0/modules/clock/set-timezone.c:45:27:  [4] (shell) system:
  This causes a new program to execute and is difficult to use safely
  (CWE-78). try using a library call that implements the same functionality
  if available.
  static GDBusConnection *system;
data/gnome-panel-3.38.0/modules/clock/set-timezone.c:58:10:  [4] (shell) system:
  This causes a new program to execute and is difficult to use safely
  (CWE-78). try using a library call that implements the same functionality
  if available.
  return system;
data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c:1306:11:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
					     g_get_home_dir ());
data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c:1503:31:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
		dirname = g_build_filename (g_get_home_dir (), dirprefix, NULL);
data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c:1905:44:  [3] (buffer) g_get_tmp_dir:
  This function is synonymous with 'getenv("TMP")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
	save_uri = panel_make_unique_desktop_uri (g_get_tmp_dir (), name);
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:467:33:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
	compare = g_file_new_for_path (g_get_home_dir ());
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:593:25:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It can have any content
  and length, and the same variable can be set more than once (CWE-807,
  CWE-20). Check environment variables carefully before using them.
	else if (strcmp (path, g_get_home_dir ()) == 0)
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:786:27:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
	path = g_build_filename (g_get_home_dir (), location, NULL);
data/gnome-panel-3.38.0/gnome-panel/panel.c:702:31:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
		file = g_file_new_for_path (g_get_home_dir ());
data/gnome-panel-3.38.0/gnome-panel/panel.c:757:30:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
	home = g_file_new_for_path (g_get_home_dir ());
data/gnome-panel-3.38.0/modules/launcher/gp-launcher-applet.c:1070:41:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
      g_str_has_prefix (priv->location, g_get_home_dir ()))
data/gnome-panel-3.38.0/modules/menu/gp-menu-utils.c:200:34:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
  compare = g_file_new_for_path (g_get_home_dir ());
data/gnome-panel-3.38.0/modules/menu/gp-places-menu.c:420:31:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';it returns untrustable
  input if the environment can beset by an attacker. It 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.
  file = g_file_new_for_path (g_get_home_dir ());
data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-keyfile.c:130: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 (new_data + strlen (KEYFILE_TRUSTED_SHEBANG),
data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c:446:33:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
                real_argv[i] = (char *)the_argv[j];
data/gnome-panel-3.38.0/gnome-panel/panel-toplevel.c:1556:15:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
	static const char *description[4][4] = {
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:280:2:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
	char  filename[NAME_MAX];
data/gnome-panel-3.38.0/modules/fish/fish-applet.c:467:2:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
	char        output[4096];
data/gnome-panel-3.38.0/modules/fish/fish-applet.c:704: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.
	static char  location [256];
data/gnome-panel-3.38.0/modules/fish/fish-applet.c:710:9:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	zone = fopen("/etc/timezone", "r");
data/gnome-panel-3.38.0/modules/fish/fish-applet.c:735:2:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
	memcpy (location, &buffer [i + 2], len - i - 2);
data/gnome-panel-3.38.0/modules/notification-area/na-tray-manager.c:344:4:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
	  memcpy ((msg->str + msg->len - msg->remaining_len),
data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.c:173: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).
  module_id = g_strndup (iid, strlen (iid) - strlen (applet_id));
data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.c:173:46:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  module_id = g_strndup (iid, strlen (iid) - strlen (applet_id));
data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.c:211:31:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  module_id = g_strndup (iid, strlen (iid) - strlen (applet_id));
data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.c:211:46:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  module_id = g_strndup (iid, strlen (iid) - strlen (applet_id));
data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.c:334: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).
  module_id = g_strndup (iid, strlen (iid) - strlen (applet_id));
data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.c:334:46:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  module_id = g_strndup (iid, strlen (iid) - strlen (applet_id));
data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.c:440: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).
  module_id = g_strndup (iid, strlen (iid) - strlen (applet_id));
data/gnome-panel-3.38.0/gnome-panel/gp-applet-manager.c:440:46:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  module_id = g_strndup (iid, strlen (iid) - strlen (applet_id));
data/gnome-panel-3.38.0/gnome-panel/gp-applet-row.c:163: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).
                          strlen (self->iid));
data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-dconf.c:85: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).
                                val[strlen (val) - 1] = '\0';
data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-glib.c:101:6:  [1] (buffer) strlen:
  Does not handle 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 (needle) == 0) return haystack;
data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-glib.c:102:6:  [1] (buffer) strlen:
  Does not handle 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 (haystack) == 0) return NULL;
data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-glib.c:104: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).
	nuni = g_alloca (sizeof (gunichar) * strlen (needle));
data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-keyfile.c:126: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).
		new_length = length + strlen (KEYFILE_TRUSTED_SHEBANG);
data/gnome-panel-3.38.0/gnome-panel/libpanel-util/panel-keyfile.c:130: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).
		memcpy (new_data + strlen (KEYFILE_TRUSTED_SHEBANG),
data/gnome-panel-3.38.0/gnome-panel/panel-layout.c:301: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).
        keyname = key + strlen (PANEL_LAYOUT_INSTANCE_CONFIG_SUBPATH);
data/gnome-panel-3.38.0/gnome-panel/panel-layout.c:371: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).
        id = group + strlen (group_prefix);
data/gnome-panel-3.38.0/gnome-panel/panel-multiscreen.c:88:52:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  return (g_ascii_strncasecmp (info->name, "LVDS", strlen ("LVDS")) == 0);
data/gnome-panel-3.38.0/gnome-panel/panel-resources.c:1960:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/gnome-panel/panel-resources.c:1968:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/gnome-panel/panel-resources.c:1980:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/gnome-panel/panel-resources.c:1987:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c:1042: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).
	retval = g_new0 (char, strlen (exec) + 1);
data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c:1558:13:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	text_len = strlen (gtk_entry_get_text (GTK_ENTRY (entry)));
data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c:1606: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).
		pos = strlen (prefix);
data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c:1629: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).
						  prefix, strlen (prefix),
data/gnome-panel-3.38.0/gnome-panel/panel-run-dialog.c:1939: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).
					(unsigned char *) uri, strlen (uri));
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:201: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).
	if (!g_ascii_strncasecmp (location, "file:", strlen ("file:")))
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:223:46:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	    g_ascii_strncasecmp (location, "file:", strlen ("file:")))
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:287: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).
		    sizeof (filename) - strlen (".desktop") - LENGTH_FOR_TMPFILE_EXT,
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:300: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).
			    sizeof (filename) - strlen (buf) - LENGTH_FOR_TMPFILE_EXT,
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:341: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).
		memmove (name, p + 1, strlen (p + 1) + 1);
data/gnome-panel-3.38.0/gnome-panel/panel-util.c:587:8:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	len = strlen (path);
data/gnome-panel-3.38.0/gnome-panel/panel.c:547: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).
  if (!g_ascii_strncasecmp (location, "file:", strlen ("file:")))
data/gnome-panel-3.38.0/gnome-panel/panel.c:688:6:  [1] (buffer) strlen:
  Does not handle 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 ("x-nautilus-desktop:///")) != 0)
data/gnome-panel-3.38.0/gnome-panel/panel.c:692: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).
	basename = uri + strlen ("x-nautilus-desktop:///");
data/gnome-panel-3.38.0/gnome-panel/panel.c:694: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).
	if (strncmp (basename, "trash", strlen ("trash")) == 0)
data/gnome-panel-3.38.0/gnome-panel/panel.c:697:38:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	else if (strncmp (basename, "home", strlen ("home")) == 0) {
data/gnome-panel-3.38.0/gnome-panel/panel.c:718: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).
	} else if (strncmp (basename, "computer", strlen ("computer")) == 0)
data/gnome-panel-3.38.0/gnome-panel/panel.c:727: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).
	else if (strncmp (basename, "network", strlen ("network")) == 0)
data/gnome-panel-3.38.0/gnome-panel/panel.c:770:42:  [1] (buffer) strlen:
  Does not handle 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 (g_ascii_strncasecmp (uri, "http:", strlen ("http:")) == 0 ||
data/gnome-panel-3.38.0/gnome-panel/panel.c:771: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).
		    g_ascii_strncasecmp (uri, "https:", strlen ("https:")) == 0 ||
data/gnome-panel-3.38.0/gnome-panel/panel.c:772: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).
		    g_ascii_strncasecmp (uri, "ftp:", strlen ("ftp:")) == 0 ||
data/gnome-panel-3.38.0/gnome-panel/panel.c:773: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).
		    g_ascii_strncasecmp (uri, "gopher:", strlen ("gopher:")) == 0 ||
data/gnome-panel-3.38.0/gnome-panel/panel.c:774: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).
		    g_ascii_strncasecmp (uri, "ghelp:", strlen ("ghelp:")) == 0 ||
data/gnome-panel-3.38.0/gnome-panel/panel.c:775:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		    g_ascii_strncasecmp (uri, "help:", strlen ("help:")) == 0 ||
data/gnome-panel-3.38.0/gnome-panel/panel.c:776: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).
		    g_ascii_strncasecmp (uri, "man:", strlen ("man:")) == 0 ||
data/gnome-panel-3.38.0/gnome-panel/panel.c:777:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		    g_ascii_strncasecmp (uri, "info:", strlen ("info:")) == 0) {
data/gnome-panel-3.38.0/gnome-panel/panel.c:787: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).
					 strlen ("x-nautilus-desktop:")) == 0) {
data/gnome-panel-3.38.0/modules/action-button/action-button-resources.c:152:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/action-button/action-button-resources.c:160:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/action-button/action-button-resources.c:172:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/action-button/action-button-resources.c:179:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/clock/calendar-client.c:1401: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).
  len = strlen (uid);
data/gnome-panel-3.38.0/modules/clock/calendar-client.c:1403:14:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  if (len <= strlen (key) && strncmp (uid, key, len) == 0)
data/gnome-panel-3.38.0/modules/clock/clock-resources.c:15211:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/clock/clock-resources.c:15219:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/clock/clock-resources.c:15231:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/clock/clock-resources.c:15238:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/fish/fish-applet.c:712:11:  [1] (buffer) fscanf:
  It's unclear if the %s limit in the format string is small enough
  (CWE-120). Check that the limit is sufficiently small, or use a different
  input function.
		count = fscanf (zone, "%255s", location);
data/gnome-panel-3.38.0/modules/fish/fish-applet.c:725:8:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	len = strlen (buffer);
data/gnome-panel-3.38.0/modules/fish/fish-resources.c:343:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/fish/fish-resources.c:351:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/fish/fish-resources.c:363:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/fish/fish-resources.c:370:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/launcher/gp-editor.c:131:38:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  exec_uri = g_string_new_len (NULL, strlen (filename));
data/gnome-panel-3.38.0/modules/launcher/gp-launcher-properties.c:205:13:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  key_len = strlen (key);
data/gnome-panel-3.38.0/modules/launcher/gp-launcher-properties.c:214:13:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      len = strlen (keys[i]);
data/gnome-panel-3.38.0/modules/launcher/launcher-resources.c:387:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/launcher/launcher-resources.c:395:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/launcher/launcher-resources.c:407:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/launcher/launcher-resources.c:414:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/menu/gp-lock-logout.c:666:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                          8, (guchar *) drag_id, strlen (drag_id));
data/gnome-panel-3.38.0/modules/menu/menu-resources.c:171:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/menu/menu-resources.c:179:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/menu/menu-resources.c:191:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/menu/menu-resources.c:198:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/wncklet/wncklet-resources.c:549:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/wncklet/wncklet-resources.c:557:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  __pragma(section(".CRT$XCU",read)) \
data/gnome-panel-3.38.0/modules/wncklet/wncklet-resources.c:569:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)
data/gnome-panel-3.38.0/modules/wncklet/wncklet-resources.c:576:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  section(".CRT$XCU",read)

ANALYSIS SUMMARY:

Hits = 106
Lines analyzed = 106769 in approximately 3.41 seconds (31265 lines/second)
Physical Source Lines of Code (SLOC) = 80672
Hits@level = [0]   2 [1]  81 [2]   9 [3]  11 [4]   5 [5]   0
Hits@level+ = [0+] 108 [1+] 106 [2+]  25 [3+]  16 [4+]   5 [5+]   0
Hits/KSLOC@level+ = [0+] 1.33875 [1+] 1.31396 [2+] 0.309897 [3+] 0.198334 [4+] 0.0619794 [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.