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/ghemical-3.0.0/src/gpcview_wcl.cpp Examining data/ghemical-3.0.0/src/gtk_eldview_wnd.cpp Examining data/ghemical-3.0.0/src/gtk_p2dview_wnd.h Examining data/ghemical-3.0.0/src/gtk_p2dview_wnd.cpp Examining data/ghemical-3.0.0/src/gtk_glade_dialog.h Examining data/ghemical-3.0.0/src/p2dview_wcl.h Examining data/ghemical-3.0.0/src/local_i18n.h Examining data/ghemical-3.0.0/src/appdefine.h Examining data/ghemical-3.0.0/src/eldview_wcl.h Examining data/ghemical-3.0.0/src/pangofont_wcl.cpp Examining data/ghemical-3.0.0/src/gtk_trajview_dialog.cpp Examining data/ghemical-3.0.0/src/gtk_project.cpp Examining data/ghemical-3.0.0/src/ac_stor_wcl.h Examining data/ghemical-3.0.0/src/ogl_surface.h Examining data/ghemical-3.0.0/src/gtk_rcpview_wnd.cpp Examining data/ghemical-3.0.0/src/gtk_progress_dialog.h Examining data/ghemical-3.0.0/src/custom_camera.h Examining data/ghemical-3.0.0/src/custom_app.cpp Examining data/ghemical-3.0.0/src/color.h Examining data/ghemical-3.0.0/src/gtk_moldyn_dialog.h Examining data/ghemical-3.0.0/src/gtk_progress_dialog.cpp Examining data/ghemical-3.0.0/src/gtk_setup_dialog.cpp Examining data/ghemical-3.0.0/src/gtk_file_export_dialog.cpp Examining data/ghemical-3.0.0/src/spline.h Examining data/ghemical-3.0.0/src/ogl_surface.cpp Examining data/ghemical-3.0.0/src/gpcview_wcl.h Examining data/ghemical-3.0.0/src/gtk_gpcview_wnd.cpp Examining data/ghemical-3.0.0/src/rcpview_wcl.h Examining data/ghemical-3.0.0/src/pangofont_wcl.h Examining data/ghemical-3.0.0/src/gtk_stereo_dialog.h Examining data/ghemical-3.0.0/src/oglview_wcl.h Examining data/ghemical-3.0.0/src/gtk_p1dview_wnd.cpp Examining data/ghemical-3.0.0/src/gtk_geomopt_dialog.cpp Examining data/ghemical-3.0.0/src/gtk_main.cpp Examining data/ghemical-3.0.0/src/gtk_oglview_wnd.cpp Examining data/ghemical-3.0.0/src/gtk_glade_dialog.cpp Examining data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp Examining data/ghemical-3.0.0/src/gtk_rcpview_wnd.h Examining data/ghemical-3.0.0/src/gtk_geomopt_dialog.h Examining data/ghemical-3.0.0/src/p2dview_wcl.cpp Examining data/ghemical-3.0.0/src/ogl_ribbon.h Examining data/ghemical-3.0.0/src/ac_stor_wcl.cpp Examining data/ghemical-3.0.0/src/ogl_ribbon.cpp Examining data/ghemical-3.0.0/src/gtk_trajview_dialog.h Examining data/ghemical-3.0.0/src/gtk_main.h Examining data/ghemical-3.0.0/src/gtk_wnd.h Examining data/ghemical-3.0.0/src/oglview_wcl.cpp Examining data/ghemical-3.0.0/src/custom_lights.h Examining data/ghemical-3.0.0/src/gtk_eldview_wnd.h Examining data/ghemical-3.0.0/src/custom_camera.cpp Examining data/ghemical-3.0.0/src/gtk_stereo_dialog.cpp Examining data/ghemical-3.0.0/src/p1dview_wcl.h Examining data/ghemical-3.0.0/src/gtk_simple_dialogs.h Examining data/ghemical-3.0.0/src/gtk_file_export_dialog.h Examining data/ghemical-3.0.0/src/gtk_file_import_dialog.h Examining data/ghemical-3.0.0/src/custom_lights.cpp Examining data/ghemical-3.0.0/src/gtk_moldyn_dialog.cpp Examining data/ghemical-3.0.0/src/gtk_p1dview_wnd.h Examining data/ghemical-3.0.0/src/gtk_wnd.cpp Examining data/ghemical-3.0.0/src/ogl_plane.h Examining data/ghemical-3.0.0/src/fileio.cpp Examining data/ghemical-3.0.0/src/custom_app.h Examining data/ghemical-3.0.0/src/ogl_plane.cpp Examining data/ghemical-3.0.0/src/eldview_wcl.cpp Examining data/ghemical-3.0.0/src/gtk_app.h Examining data/ghemical-3.0.0/src/spline.cpp Examining data/ghemical-3.0.0/src/gtk_file_import_dialog.cpp Examining data/ghemical-3.0.0/src/gtk_setup_dialog.h Examining data/ghemical-3.0.0/src/gtk_gpcview_wnd.h Examining data/ghemical-3.0.0/src/gtk_project.h Examining data/ghemical-3.0.0/src/gtk_oglview_wnd.h Examining data/ghemical-3.0.0/src/p1dview_wcl.cpp Examining data/ghemical-3.0.0/src/gtk_app.cpp Examining data/ghemical-3.0.0/src/project.cpp Examining data/ghemical-3.0.0/src/rcpview_wcl.cpp Examining data/ghemical-3.0.0/src/project.h Examining data/ghemical-3.0.0/src/filetrans.h Examining data/ghemical-3.0.0/src/filetrans.cpp FINAL RESULTS: data/ghemical-3.0.0/src/fileio.cpp:529: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(my_num_locale, setlocale(LC_NUMERIC, NULL)); data/ghemical-3.0.0/src/fileio.cpp:823: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(my_num_locale, setlocale(LC_NUMERIC, NULL)); data/ghemical-3.0.0/src/fileio.cpp:944: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(my_num_locale, setlocale(LC_NUMERIC, NULL)); data/ghemical-3.0.0/src/gtk_app.cpp:844: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(msgbuff, msg); data/ghemical-3.0.0/src/gtk_app.cpp:2086:2: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. system(str.str().c_str()); data/ghemical-3.0.0/src/gtk_app.cpp:2116: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(about, about_str.str().c_str()); data/ghemical-3.0.0/src/gtk_main.cpp:89: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(project::appdata_path, APPDATA_PATH); data/ghemical-3.0.0/src/gtk_main.cpp:109: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(project::appdata_path, tmpstr); data/ghemical-3.0.0/src/gtk_moldyn_dialog.cpp:213: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(ref->param->filename, buffer); data/ghemical-3.0.0/src/ogl_plane.cpp:277: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(object_name, str.str().c_str()); data/ghemical-3.0.0/src/ogl_plane.cpp:338: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(object_name, str.str().c_str()); data/ghemical-3.0.0/src/ogl_surface.cpp:568: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(object_name, str.str().c_str()); data/ghemical-3.0.0/src/p1dview_wcl.cpp:49:43: [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). else { name1 = new char[strlen(s1) + 1]; strcpy(name1, s1); } data/ghemical-3.0.0/src/p1dview_wcl.cpp:52:43: [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). else { namev = new char[strlen(sv) + 1]; strcpy(namev, sv); } data/ghemical-3.0.0/src/p2dview_wcl.cpp:53:43: [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). else { name1 = new char[strlen(s1) + 1]; strcpy(name1, s1); } data/ghemical-3.0.0/src/p2dview_wcl.cpp:56:43: [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). else { name2 = new char[strlen(s2) + 1]; strcpy(name2, s2); } data/ghemical-3.0.0/src/p2dview_wcl.cpp:59:43: [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). else { namev = new char[strlen(sv) + 1]; strcpy(namev, sv); } data/ghemical-3.0.0/src/project.cpp:194: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(project_path, path); data/ghemical-3.0.0/src/project.cpp:202: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(project_filename, filename); data/ghemical-3.0.0/src/project.cpp:218: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(localstring1, string); data/ghemical-3.0.0/src/project.cpp:282: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(buffer, ostr.str().c_str()); data/ghemical-3.0.0/src/project.cpp:297: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(buffer, ostr.str().c_str()); data/ghemical-3.0.0/src/project.cpp:315: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(my_num_locale, setlocale(LC_NUMERIC, NULL)); data/ghemical-3.0.0/src/project.cpp:357: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(my_num_locale, setlocale(LC_NUMERIC, NULL)); data/ghemical-3.0.0/src/fileio.cpp:40: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 my_num_locale[32] = "C"; // the locale string returned by setlocale() are stored here... data/ghemical-3.0.0/src/fileio.cpp:54: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 buffer[1024]; data/ghemical-3.0.0/src/fileio.cpp:87: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 buffer[1024]; data/ghemical-3.0.0/src/fileio.cpp:281: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 buffer[1024]; data/ghemical-3.0.0/src/fileio.cpp:323: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 su_cn[16] = "unknown"; // the setup class classname. data/ghemical-3.0.0/src/fileio.cpp:524: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 buffer[1024]; data/ghemical-3.0.0/src/fileio.cpp:610: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 su_cn[16] = "unknown"; // the setup class classname. data/ghemical-3.0.0/src/gtk_app.cpp:281: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. const char ** icondata[num_icons] = data/ghemical-3.0.0/src/gtk_app.cpp:301: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. const char * icon_id[num_icons] = data/ghemical-3.0.0/src/gtk_app.cpp:843: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 msgbuff[MSG_BUFF_SZ]; data/ghemical-3.0.0/src/gtk_app.cpp:1379: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 res_id[8] = "?"; data/ghemical-3.0.0/src/gtk_app.cpp:1642: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. const char * bt_strings[4] = data/ghemical-3.0.0/src/gtk_app.cpp:2115: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 about[2048]; data/ghemical-3.0.0/src/gtk_main.cpp:101: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 tmpstr[256]; char * tmploc; data/ghemical-3.0.0/src/gtk_main.cpp:121: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). ifile.open(opt_f, ios::in); data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:139: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 bt_symbols[4] = { 'S', 'D', 'T', 'C' }; data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:194: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 tmp_filename[256]; data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:277:8: [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). ifile.open(filename, ios::in); data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:278:25: [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). ReadGPR(* prj, ifile, !open); data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:281:6: [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) // we're "switching" to this file data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:285: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[256]; data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:336: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 buffer[256]; data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:341: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 tmp_filename[256]; data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:345:8: [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). ofile.open(tmp_filename, ios::out); data/ghemical-3.0.0/src/project.cpp:314: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 my_num_locale[32] = "C"; data/ghemical-3.0.0/src/project.cpp:326: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). ifile.open(filename, ios::in); data/ghemical-3.0.0/src/project.cpp:332: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). ifile.open(filename, ios::in); data/ghemical-3.0.0/src/project.cpp:356: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 my_num_locale[32] = "C"; data/ghemical-3.0.0/src/project.cpp:371: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). ofile.open(filename, ios::out); data/ghemical-3.0.0/src/project.cpp:377: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). ofile.open(filename, ios::out); data/ghemical-3.0.0/src/project.cpp:881: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 kw1[32]; istr >> kw1; // the 1st keyword. data/ghemical-3.0.0/src/project.cpp:979: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 kw2[32]; istr >> kw2; // the 2nd keyword; type of the object to add. data/ghemical-3.0.0/src/project.cpp:983:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw3[32]; istr >> kw3; data/ghemical-3.0.0/src/project.cpp:984:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw4[32]; istr >> kw4; data/ghemical-3.0.0/src/project.cpp:1019:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw3[32]; istr >> kw3; data/ghemical-3.0.0/src/project.cpp:1020:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw4[32]; istr >> kw4; data/ghemical-3.0.0/src/project.cpp:1021:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw5[32]; istr >> kw5; data/ghemical-3.0.0/src/project.cpp:1022:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw6[32]; istr >> kw6; data/ghemical-3.0.0/src/project.cpp:1023:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw7[32]; istr >> kw7; data/ghemical-3.0.0/src/project.cpp:1024:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw8[32]; istr >> kw8; data/ghemical-3.0.0/src/project.cpp:1025:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw9[32]; istr >> kw9; data/ghemical-3.0.0/src/project.cpp:1026:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwA[32]; istr >> kwA; data/ghemical-3.0.0/src/project.cpp:1098:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw3[32]; istr >> kw3; data/ghemical-3.0.0/src/project.cpp:1099:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw4[32]; istr >> kw4; data/ghemical-3.0.0/src/project.cpp:1100:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw5[32]; istr >> kw5; data/ghemical-3.0.0/src/project.cpp:1101:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw6[32]; istr >> kw6; data/ghemical-3.0.0/src/project.cpp:1102:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw7[32]; istr >> kw7; data/ghemical-3.0.0/src/project.cpp:1103:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw8[32]; istr >> kw8; data/ghemical-3.0.0/src/project.cpp:1104:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw9[32]; istr >> kw9; data/ghemical-3.0.0/src/project.cpp:1173:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw3[32]; istr >> kw3; // vf1 data/ghemical-3.0.0/src/project.cpp:1174:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw4[32]; istr >> kw4; // vf2 data/ghemical-3.0.0/src/project.cpp:1175:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw5[32]; istr >> kw5; // cf data/ghemical-3.0.0/src/project.cpp:1176:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw6[32]; istr >> kw6; // sscale data/ghemical-3.0.0/src/project.cpp:1177:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw7[32]; istr >> kw7; // cscale1 data/ghemical-3.0.0/src/project.cpp:1178:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw8[32]; istr >> kw8; // AUTO/cscale2 data/ghemical-3.0.0/src/project.cpp:1179:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw9[32]; istr >> kw9; // dim data/ghemical-3.0.0/src/project.cpp:1180:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwA[32]; istr >> kwA; // res data/ghemical-3.0.0/src/project.cpp:1181:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwB[32]; istr >> kwB; // solid data/ghemical-3.0.0/src/project.cpp:1182:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwC[32]; istr >> kwC; // tp data/ghemical-3.0.0/src/project.cpp:1183:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwD[32]; istr >> kwD; // alpha data/ghemical-3.0.0/src/project.cpp:1284:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw3[32]; istr >> kw3; // vf1 data/ghemical-3.0.0/src/project.cpp:1285:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw4[32]; istr >> kw4; // vf2 data/ghemical-3.0.0/src/project.cpp:1286:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw5[32]; istr >> kw5; // cf1 data/ghemical-3.0.0/src/project.cpp:1287:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw6[32]; istr >> kw6; // cf2 data/ghemical-3.0.0/src/project.cpp:1288:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw7[32]; istr >> kw7; // sscale1 data/ghemical-3.0.0/src/project.cpp:1289:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw8[32]; istr >> kw8; // sscale2 data/ghemical-3.0.0/src/project.cpp:1290:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw9[32]; istr >> kw9; // cscale1 data/ghemical-3.0.0/src/project.cpp:1291:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwA[32]; istr >> kwA; // AUTO/cscale2 data/ghemical-3.0.0/src/project.cpp:1292:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwB[32]; istr >> kwB; // dim data/ghemical-3.0.0/src/project.cpp:1293:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwC[32]; istr >> kwC; // res data/ghemical-3.0.0/src/project.cpp:1294:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwD[32]; istr >> kwD; // solid data/ghemical-3.0.0/src/project.cpp:1295:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwE[32]; istr >> kwE; // tp data/ghemical-3.0.0/src/project.cpp:1296:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kwF[32]; istr >> kwF; // alpha data/ghemical-3.0.0/src/project.cpp:1463: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 kw2[32]; istr >> kw2; // the 2nd keyword; cycles. data/ghemical-3.0.0/src/project.cpp:1464: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 kw3[32]; istr >> kw3; // the 3rd keyword; optsteps. data/ghemical-3.0.0/src/project.cpp:1479: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 kw2[32]; istr >> kw2; // the 2nd keyword; divisions. data/ghemical-3.0.0/src/project.cpp:1480: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 kw3[32]; istr >> kw3; // the 3rd keyword; optsteps. data/ghemical-3.0.0/src/project.cpp:1492: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 kw2[32]; istr >> kw2; // the 2nd keyword; n_init_steps. data/ghemical-3.0.0/src/project.cpp:1493: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 kw3[32]; istr >> kw3; // the 3rd keyword; n_simul_steps. data/ghemical-3.0.0/src/project.cpp:1494: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 kw4[32]; istr >> kw4; // the 4th keyword; optsteps. data/ghemical-3.0.0/src/project.cpp:1507: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 kw2[32]; istr >> kw2; // A data/ghemical-3.0.0/src/project.cpp:1508: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 kw3[32]; istr >> kw3; // B data/ghemical-3.0.0/src/project.cpp:1509: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 kw4[32]; istr >> kw4; // C data/ghemical-3.0.0/src/project.cpp:1510: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 kw5[32]; istr >> kw5; // D data/ghemical-3.0.0/src/project.cpp:1511:3: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char kw6[32]; istr >> kw6; // div data/ghemical-3.0.0/src/project.cpp:1512: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 kw7[32]; istr >> kw7; // start_ang data/ghemical-3.0.0/src/project.cpp:1513: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 kw8[32]; istr >> kw8; // end_ang data/ghemical-3.0.0/src/project.cpp:1514: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 kw9[32]; istr >> kw9; // optsteps data/ghemical-3.0.0/src/project.cpp:1536: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 kw2[32]; istr >> kw2; // A data/ghemical-3.0.0/src/project.cpp:1537: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 kw3[32]; istr >> kw3; // B data/ghemical-3.0.0/src/project.cpp:1538: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 kw4[32]; istr >> kw4; // C data/ghemical-3.0.0/src/project.cpp:1539: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 kw5[32]; istr >> kw5; // D data/ghemical-3.0.0/src/project.cpp:1540: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 kw6[32]; istr >> kw6; // div data/ghemical-3.0.0/src/project.cpp:1541: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 kw7[32]; istr >> kw7; // start_ang data/ghemical-3.0.0/src/project.cpp:1542: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 kw8[32]; istr >> kw8; // end_ang data/ghemical-3.0.0/src/project.cpp:1543: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 kw9[32]; istr >> kw9; // I data/ghemical-3.0.0/src/project.cpp:1544: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 kwA[32]; istr >> kwA; // J data/ghemical-3.0.0/src/project.cpp:1545: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 kwB[32]; istr >> kwB; // K data/ghemical-3.0.0/src/project.cpp:1546: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 kwC[32]; istr >> kwC; // L data/ghemical-3.0.0/src/project.cpp:1547: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 kwD[32]; istr >> kwD; // div data/ghemical-3.0.0/src/project.cpp:1548: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 kwE[32]; istr >> kwE; // start_ang data/ghemical-3.0.0/src/project.cpp:1549: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 kwF[32]; istr >> kwF; // end_ang data/ghemical-3.0.0/src/project.cpp:1550: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 kwG[32]; istr >> kwG; // optsteps data/ghemical-3.0.0/src/project.cpp:1595: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 kw2[32]; istr >> kw2; // the 2nd keyword; delta-E per step. data/ghemical-3.0.0/src/project.cpp:1596: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 kw3[32]; istr >> kw3; // the 3rd keyword; initial force constant. data/ghemical-3.0.0/src/project.cpp:1608: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 kw2[32]; istr >> kw2; // the 2nd keyword; steps. data/ghemical-3.0.0/src/project.cpp:1619: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 kw2[32]; istr >> kw2; // the 2nd keyword; the orbital index. data/ghemical-3.0.0/src/project.cpp:1642: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 kw2[4096]; istr >> kw2; // sequence data/ghemical-3.0.0/src/project.cpp:1643: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 kw3[32]; istr >> kw3; // helix/sheet (optional) data/ghemical-3.0.0/src/project.cpp:1680: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 kw2[4096]; istr >> kw2; // sequence data/ghemical-3.0.0/src/project.cpp:1731: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 kw2[32]; istr >> kw2; // xdim data/ghemical-3.0.0/src/project.cpp:1732: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 kw3[32]; istr >> kw3; // ydim data/ghemical-3.0.0/src/project.cpp:1733: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 kw4[32]; istr >> kw4; // zdim data/ghemical-3.0.0/src/project.cpp:1734: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 kw5[32] = ""; istr >> kw5; // density (optional) data/ghemical-3.0.0/src/project.cpp:1735: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 kw6[256] = ""; istr >> kw6; // filename (optional) data/ghemical-3.0.0/src/project.cpp:1736: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 kw7[64] = ""; istr >> kw7; // export (optional) data/ghemical-3.0.0/src/project.cpp:1766: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 kw2[32]; istr >> kw2; // rad_solute data/ghemical-3.0.0/src/project.cpp:1767: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 kw3[32]; istr >> kw3; // rad_solvent data/ghemical-3.0.0/src/project.cpp:1768: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 kw4[32] = ""; istr >> kw4; // density (optional) data/ghemical-3.0.0/src/project.cpp:1769: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 kw5[256] = ""; istr >> kw5; // filename (optional) data/ghemical-3.0.0/src/project.cpp:1800: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 kw2[32]; istr >> kw2; // the 2nd keyword; index. data/ghemical-3.0.0/src/project.cpp:1801: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 kw3[32]; istr >> kw3; // the 3rd keyword; charge. data/ghemical-3.0.0/src/project.cpp:1837: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 kw2[32]; istr >> kw2; // the 2nd keyword; dt. data/ghemical-3.0.0/src/project.cpp:4061: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 buffer[1024]; data/ghemical-3.0.0/src/project.cpp:4069:3: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buffer, "%4d %10.4e %10.4e \n", n1, sss->optval, sss->optstp); data/ghemical-3.0.0/src/project.h:172: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 appversion[16]; data/ghemical-3.0.0/src/project.h:173: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 appdata_path[256]; // also see libghemical_init()... data/ghemical-3.0.0/src/gtk_app.cpp:837: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(msg) > MSG_BUFF_SZ) data/ghemical-3.0.0/src/gtk_simple_dialogs.cpp:548: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(command) > 0) prj->ProcessCommandString(wcl, command); data/ghemical-3.0.0/src/ogl_plane.cpp:276: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). object_name = new char[strlen(str.str().c_str()) + 1]; data/ghemical-3.0.0/src/ogl_plane.cpp:337: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). object_name = new char[strlen(str.str().c_str()) + 1]; data/ghemical-3.0.0/src/ogl_surface.cpp:567: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). object_name = new char[strlen(str.str().c_str()) + 1]; data/ghemical-3.0.0/src/p1dview_wcl.cpp:48: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 (!s1 || !strlen(s1)) assertion_failed(__FILE__, __LINE__, "invalid s1."); data/ghemical-3.0.0/src/p1dview_wcl.cpp:49: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). else { name1 = new char[strlen(s1) + 1]; strcpy(name1, s1); } data/ghemical-3.0.0/src/p1dview_wcl.cpp:51: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 (!sv || !strlen(sv)) assertion_failed(__FILE__, __LINE__, "invalid sv."); data/ghemical-3.0.0/src/p1dview_wcl.cpp:52: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). else { namev = new char[strlen(sv) + 1]; strcpy(namev, sv); } data/ghemical-3.0.0/src/p2dview_wcl.cpp:52: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 (!s1 || !strlen(s1)) assertion_failed(__FILE__, __LINE__, "invalid s1."); data/ghemical-3.0.0/src/p2dview_wcl.cpp:53: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). else { name1 = new char[strlen(s1) + 1]; strcpy(name1, s1); } data/ghemical-3.0.0/src/p2dview_wcl.cpp:55: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 (!s2 || !strlen(s2)) assertion_failed(__FILE__, __LINE__, "invalid s2."); data/ghemical-3.0.0/src/p2dview_wcl.cpp:56: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). else { name2 = new char[strlen(s2) + 1]; strcpy(name2, s2); } data/ghemical-3.0.0/src/p2dview_wcl.cpp:58: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 (!sv || !strlen(sv)) assertion_failed(__FILE__, __LINE__, "invalid sv."); data/ghemical-3.0.0/src/p2dview_wcl.cpp:59: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). else { namev = new char[strlen(sv) + 1]; strcpy(namev, sv); } data/ghemical-3.0.0/src/pangofont_wcl.cpp:93: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). while (count < strlen(str)) data/ghemical-3.0.0/src/pangofont_wcl.cpp:126: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). while (count < strlen(str)) data/ghemical-3.0.0/src/project.cpp:193: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). project_path = new char[strlen(path) + 1]; data/ghemical-3.0.0/src/project.cpp:201: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). project_filename = new char[strlen(filename) + 1]; data/ghemical-3.0.0/src/project.cpp:217: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). char * localstring1 = new char[strlen(string) + 1]; data/ghemical-3.0.0/src/project.cpp:221: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). for (i32s n1 = 0;n1 < (i32s) strlen(localstring1);n1++) data/ghemical-3.0.0/src/project.cpp:245: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). for (i32s n1 = 0;n1 < (i32s) strlen(localstring2);n1++) data/ghemical-3.0.0/src/project.cpp:277: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(ostr.str().c_str()) + 1 >= buffer_size) data/ghemical-3.0.0/src/project.cpp:292: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(ostr.str().c_str()) + 1 >= buffer_size) data/ghemical-3.0.0/src/project.cpp:1647:24: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (int n1 = 0;n1 < strlen(kw2);n1++) data/ghemical-3.0.0/src/project.cpp:1684:24: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (int n1 = 0;n1 < strlen(kw2);n1++) data/ghemical-3.0.0/src/project.cpp:1743: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). fGL density = 1.00; if (strlen(kw5) > 0) density = strtod(kw5, endptr); data/ghemical-3.0.0/src/project.cpp:1747: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(kw6) > 0) data/ghemical-3.0.0/src/project.cpp:1778: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(kw4) > 0) density = strtod(kw4, endptr); data/ghemical-3.0.0/src/project.cpp:1781: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(kw5) > 0) ANALYSIS SUMMARY: Hits = 181 Lines analyzed = 21420 in approximately 0.57 seconds (37822 lines/second) Physical Source Lines of Code (SLOC) = 13438 Hits@level = [0] 2 [1] 30 [2] 127 [3] 0 [4] 24 [5] 0 Hits@level+ = [0+] 183 [1+] 181 [2+] 151 [3+] 24 [4+] 24 [5+] 0 Hits/KSLOC@level+ = [0+] 13.6181 [1+] 13.4693 [2+] 11.2368 [3+] 1.78598 [4+] 1.78598 [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.