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/voronota-1.21.3070/src/apollota/tangent_sphere_of_four_spheres.h Examining data/voronota-1.21.3070/src/apollota/constrained_contact_remainder.h Examining data/voronota-1.21.3070/src/apollota/rolling_topology.h Examining data/voronota-1.21.3070/src/apollota/rotation.h Examining data/voronota-1.21.3070/src/apollota/constrained_contacts_construction.h Examining data/voronota-1.21.3070/src/apollota/polynomial_curves.h Examining data/voronota-1.21.3070/src/apollota/triangulation.h Examining data/voronota-1.21.3070/src/apollota/bounding_spheres_hierarchy.h Examining data/voronota-1.21.3070/src/apollota/basic_operations_on_spheres.h Examining data/voronota-1.21.3070/src/apollota/constrained_contact_contour.h Examining data/voronota-1.21.3070/src/apollota/safer_summation.h Examining data/voronota-1.21.3070/src/apollota/search_for_spherical_collisions.h Examining data/voronota-1.21.3070/src/apollota/simple_polygon_utilities.h Examining data/voronota-1.21.3070/src/apollota/hyperboloid_between_two_spheres.h Examining data/voronota-1.21.3070/src/apollota/safer_quadratic_equation_root.h Examining data/voronota-1.21.3070/src/apollota/polar_sorting.h Examining data/voronota-1.21.3070/src/apollota/spheres_boundary_construction.h Examining data/voronota-1.21.3070/src/apollota/subdivided_icosahedron.h Examining data/voronota-1.21.3070/src/apollota/triangulation_queries.h Examining data/voronota-1.21.3070/src/apollota/tuple.h Examining data/voronota-1.21.3070/src/apollota/tangent_plane_of_three_spheres.h Examining data/voronota-1.21.3070/src/apollota/triangulation_output.h Examining data/voronota-1.21.3070/src/apollota/tangent_sphere_of_three_spheres.h Examining data/voronota-1.21.3070/src/apollota/safer_comparison_of_numbers.h Examining data/voronota-1.21.3070/src/apollota/splitting_of_spheres.h Examining data/voronota-1.21.3070/src/apollota/constrained_contacts_utilities.h Examining data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h Examining data/voronota-1.21.3070/src/apollota/spherical_contacts_construction.h Examining data/voronota-1.21.3070/src/scripting/operators_common.h Examining data/voronota-1.21.3070/src/scripting/selection_manager.h Examining data/voronota-1.21.3070/src/scripting/basic_assertions.h Examining data/voronota-1.21.3070/src/scripting/virtual_file_storage.h Examining data/voronota-1.21.3070/src/scripting/figure.h Examining data/voronota-1.21.3070/src/scripting/variant_serialization.h Examining data/voronota-1.21.3070/src/scripting/io_selectors.h Examining data/voronota-1.21.3070/src/scripting/heterogeneous_storage.h Examining data/voronota-1.21.3070/src/scripting/variant_types.h Examining data/voronota-1.21.3070/src/scripting/operators_utilities.h Examining data/voronota-1.21.3070/src/scripting/command_documentation.h Examining data/voronota-1.21.3070/src/scripting/scoring_of_data_managers_using_cad_score.h Examining data/voronota-1.21.3070/src/scripting/script_execution_manager_with_variant_output.h Examining data/voronota-1.21.3070/src/scripting/congregation_of_data_managers.h Examining data/voronota-1.21.3070/src/scripting/operators_base.h Examining data/voronota-1.21.3070/src/scripting/data_manager.h Examining data/voronota-1.21.3070/src/scripting/loading_of_data.h Examining data/voronota-1.21.3070/src/scripting/json_writer.h Examining data/voronota-1.21.3070/src/scripting/scoring_of_data_manager_using_voromqa.h Examining data/voronota-1.21.3070/src/scripting/script_partitioner.h Examining data/voronota-1.21.3070/src/scripting/testing_of_atoms_and_contacts.h Examining data/voronota-1.21.3070/src/scripting/basic_types.h Examining data/voronota-1.21.3070/src/scripting/command_input.h Examining data/voronota-1.21.3070/src/scripting/operators/export_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/pick_objects.h Examining data/voronota-1.21.3070/src/scripting/operators/explain_command.h Examining data/voronota-1.21.3070/src/scripting/operators/delete_selections_of_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/set_adjunct_of_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/export_cartoon_as_pymol_cgo.h Examining data/voronota-1.21.3070/src/scripting/operators/export_triangulation.h Examining data/voronota-1.21.3070/src/scripting/operators/import_selection_of_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/estimate_axis.h Examining data/voronota-1.21.3070/src/scripting/operators/print_virtual_file.h Examining data/voronota-1.21.3070/src/scripting/operators/export_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/source.h Examining data/voronota-1.21.3070/src/scripting/operators/import_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/color_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/export_global_adjuncts.h Examining data/voronota-1.21.3070/src/scripting/operators/set_chain_name.h Examining data/voronota-1.21.3070/src/scripting/operators/voromqa_global.h Examining data/voronota-1.21.3070/src/scripting/operators/set_alias.h Examining data/voronota-1.21.3070/src/scripting/operators/rename_selection_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/voromqa_interface_frustration.h Examining data/voronota-1.21.3070/src/scripting/operators/move_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/unset_aliases.h Examining data/voronota-1.21.3070/src/scripting/operators/zoom_by_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/import_selection_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/cad_score_many.h Examining data/voronota-1.21.3070/src/scripting/operators/rename_selection_of_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/show_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/calculate_burial_depth.h Examining data/voronota-1.21.3070/src/scripting/operators/export_atoms_and_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/restrict_atoms_and_renumber_residues_by_adjunct.h Examining data/voronota-1.21.3070/src/scripting/operators/export_contacts_as_pymol_cgo.h Examining data/voronota-1.21.3070/src/scripting/operators/calculate_betweenness.h Examining data/voronota-1.21.3070/src/scripting/operators/delete_adjuncts_of_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/download_virtual_file.h Examining data/voronota-1.21.3070/src/scripting/operators/set_tag_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/set_adjunct_of_atoms_by_residue_pooling.h Examining data/voronota-1.21.3070/src/scripting/operators/construct_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/export_selection_of_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/color_figures.h Examining data/voronota-1.21.3070/src/scripting/operators/order_atoms_by_residue_id.h Examining data/voronota-1.21.3070/src/scripting/operators/delete_tags_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/list_selections_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/export_adjuncts_of_atoms_as_casp_qa_line.h Examining data/voronota-1.21.3070/src/scripting/operators/reset_time.h Examining data/voronota-1.21.3070/src/scripting/operators/set_tag_of_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/delete_adjuncts_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/select_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/spectrum_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/set_tag_of_atoms_by_secondary_structure.h Examining data/voronota-1.21.3070/src/scripting/operators/list_objects.h Examining data/voronota-1.21.3070/src/scripting/operators/mock.h Examining data/voronota-1.21.3070/src/scripting/operators/delete_selections_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/show_figures.h Examining data/voronota-1.21.3070/src/scripting/operators/upload_virtual_file.h Examining data/voronota-1.21.3070/src/scripting/operators/select_atoms_by_triangulation_query.h Examining data/voronota-1.21.3070/src/scripting/operators/print_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/add_figure_of_triangulation.h Examining data/voronota-1.21.3070/src/scripting/operators/set_atom_serials.h Examining data/voronota-1.21.3070/src/scripting/operators/print_figures.h Examining data/voronota-1.21.3070/src/scripting/operators/cat_files.h Examining data/voronota-1.21.3070/src/scripting/operators/color_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/delete_tags_of_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/import.h Examining data/voronota-1.21.3070/src/scripting/operators/make_undrawable_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/zoom_by_objects.h Examining data/voronota-1.21.3070/src/scripting/operators/set_adjunct_of_atoms_by_contact_adjuncts.h Examining data/voronota-1.21.3070/src/scripting/operators/export_triangulation_voxels.h Examining data/voronota-1.21.3070/src/scripting/operators/rename_object.h Examining data/voronota-1.21.3070/src/scripting/operators/rename_global_adjunct.h Examining data/voronota-1.21.3070/src/scripting/operators/voromqa_membrane_place.h Examining data/voronota-1.21.3070/src/scripting/operators/export_selection_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/mark_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/construct_triangulation.h Examining data/voronota-1.21.3070/src/scripting/operators/export_figures_as_pymol_cgo.h Examining data/voronota-1.21.3070/src/scripting/operators/list_figures.h Examining data/voronota-1.21.3070/src/scripting/operators/spectrum_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/clash_score.h Examining data/voronota-1.21.3070/src/scripting/operators/tournament_sort.h Examining data/voronota-1.21.3070/src/scripting/operators/set_adjunct_of_atoms_by_sequence_alignment.h Examining data/voronota-1.21.3070/src/scripting/operators/echo.h Examining data/voronota-1.21.3070/src/scripting/operators/exit.h Examining data/voronota-1.21.3070/src/scripting/operators/make_drawable_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/list_commands.h Examining data/voronota-1.21.3070/src/scripting/operators/delete_figures.h Examining data/voronota-1.21.3070/src/scripting/operators/find_connected_components.h Examining data/voronota-1.21.3070/src/scripting/operators/generate_residue_voromqa_energy_profile.h Examining data/voronota-1.21.3070/src/scripting/operators/print_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/distance.h Examining data/voronota-1.21.3070/src/scripting/operators/center_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/zoom_by_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/delete_objects.h Examining data/voronota-1.21.3070/src/scripting/operators/delete_virtual_files.h Examining data/voronota-1.21.3070/src/scripting/operators/list_selections_of_contacts.h Examining data/voronota-1.21.3070/src/scripting/operators/describe_exposure.h Examining data/voronota-1.21.3070/src/scripting/operators/export_adjuncts_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/summarize_linear_structure.h Examining data/voronota-1.21.3070/src/scripting/operators/setup_voromqa.h Examining data/voronota-1.21.3070/src/scripting/operators/split_pdb_file.h Examining data/voronota-1.21.3070/src/scripting/operators/print_sequence.h Examining data/voronota-1.21.3070/src/scripting/operators/add_figure.h Examining data/voronota-1.21.3070/src/scripting/operators/cad_score.h Examining data/voronota-1.21.3070/src/scripting/operators/mark_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/set_chain_names_by_guessing.h Examining data/voronota-1.21.3070/src/scripting/operators/voromqa_local.h Examining data/voronota-1.21.3070/src/scripting/operators/import_adjuncts_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/voromqa_frustration.h Examining data/voronota-1.21.3070/src/scripting/operators/set_adjunct_of_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/list_virtual_files.h Examining data/voronota-1.21.3070/src/scripting/operators/check_distance_constraint.h Examining data/voronota-1.21.3070/src/scripting/operators/set_adjunct_of_atoms_by_contact_areas.h Examining data/voronota-1.21.3070/src/scripting/operators/print_time.h Examining data/voronota-1.21.3070/src/scripting/operators/export_atoms_as_pymol_cgo.h Examining data/voronota-1.21.3070/src/scripting/operators/copy_object.h Examining data/voronota-1.21.3070/src/scripting/operators/print_global_adjuncts.h Examining data/voronota-1.21.3070/src/scripting/operators/set_adjunct_of_atoms_by_expression.h Examining data/voronota-1.21.3070/src/scripting/operators/setup_loading.h Examining data/voronota-1.21.3070/src/scripting/operators/print_triangulation.h Examining data/voronota-1.21.3070/src/scripting/operators/show_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/show_objects.h Examining data/voronota-1.21.3070/src/scripting/operators/restrict_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators/select_atoms.h Examining data/voronota-1.21.3070/src/scripting/operators_all.h Examining data/voronota-1.21.3070/src/scripting/filtering_of_triangulation.h Examining data/voronota-1.21.3070/src/scripting/membrane_placement_for_data_manager_using_voromqa.h Examining data/voronota-1.21.3070/src/scripting/script_execution_manager.h Examining data/voronota-1.21.3070/src/scripting/long_name.h Examining data/voronota-1.21.3070/src/compatability/tr1_usage.h Examining data/voronota-1.21.3070/src/common/construction_of_contact_effect_groupings.h Examining data/voronota-1.21.3070/src/common/construction_of_voromqa_score.h Examining data/voronota-1.21.3070/src/common/construction_of_atomic_balls.h Examining data/voronota-1.21.3070/src/common/contacts_scoring_utilities.h Examining data/voronota-1.21.3070/src/common/construction_of_bonding_links.h Examining data/voronota-1.21.3070/src/common/construction_of_cad_score.h Examining data/voronota-1.21.3070/src/common/properties_value.h Examining data/voronota-1.21.3070/src/common/construction_of_path_centralities.h Examining data/voronota-1.21.3070/src/common/construction_of_contacts.h Examining data/voronota-1.21.3070/src/common/writing_atomic_balls_in_pdb_format.h Examining data/voronota-1.21.3070/src/common/ball_value.h Examining data/voronota-1.21.3070/src/common/matching_utilities.h Examining data/voronota-1.21.3070/src/common/contact_value.h Examining data/voronota-1.21.3070/src/common/conversion_of_descriptors.h Examining data/voronota-1.21.3070/src/common/chain_residue_atom_descriptor.h Examining data/voronota-1.21.3070/src/common/sequence_utilities.h Examining data/voronota-1.21.3070/src/common/construction_of_secondary_structure.h Examining data/voronota-1.21.3070/src/common/statistics_utilities.h Examining data/voronota-1.21.3070/src/common/construction_of_triangulation.h Examining data/voronota-1.21.3070/src/common/construction_of_structural_cartoon.h Examining data/voronota-1.21.3070/src/common/construction_of_primary_structure.h Examining data/voronota-1.21.3070/src/voronota.cpp Examining data/voronota-1.21.3070/src/modes/mode_query_balls_clashes.cpp Examining data/voronota-1.21.3070/src/modes/mode_get_balls_from_atoms_file.cpp Examining data/voronota-1.21.3070/src/modes/mode_reprint_hbp.cpp Examining data/voronota-1.21.3070/src/modes/mode_demo_hypercut.cpp Examining data/voronota-1.21.3070/src/modes/mode_query_contacts_solvation_values.cpp Examining data/voronota-1.21.3070/src/modes/mode_score_contacts_quality.cpp Examining data/voronota-1.21.3070/src/modes/mode_compare_files_as_sets.cpp Examining data/voronota-1.21.3070/src/modes/mode_query_balls.cpp Examining data/voronota-1.21.3070/src/modes/mode_place_membrane.cpp Examining data/voronota-1.21.3070/src/modes/mode_score_contacts_potentials_stats.cpp Examining data/voronota-1.21.3070/src/modes/mode_compare_contacts.cpp Examining data/voronota-1.21.3070/src/modes/mode_score_contacts_energy.cpp Examining data/voronota-1.21.3070/src/modes/mode_plot_contacts.cpp Examining data/voronota-1.21.3070/src/modes/mode_score_contacts_potential.cpp Examining data/voronota-1.21.3070/src/modes/mode_vectorize_contacts.cpp Examining data/voronota-1.21.3070/src/modes/mode_split_atoms_file.cpp Examining data/voronota-1.21.3070/src/modes/mode_score_scores.cpp Examining data/voronota-1.21.3070/src/modes/mode_calculate_mock_solvent.cpp Examining data/voronota-1.21.3070/src/modes/mode_score_contacts_global_energy_by_cuts.cpp Examining data/voronota-1.21.3070/src/modes/mode_query_contacts_interface_exposure_values.cpp Examining data/voronota-1.21.3070/src/modes/mode_query_balls_sequences_pairings_stats.cpp Examining data/voronota-1.21.3070/src/modes/mode_calculate_contacts.cpp Examining data/voronota-1.21.3070/src/modes/mode_query_contacts_simulating_unfolding.cpp Examining data/voronota-1.21.3070/src/modes/mode_demo_ses.cpp Examining data/voronota-1.21.3070/src/modes/mode_rotational_optimization_demo.cpp Examining data/voronota-1.21.3070/src/modes/mode_calculate_vertices_in_parallel.cpp Examining data/voronota-1.21.3070/src/modes/mode_vectorize_contact_environments.cpp Examining data/voronota-1.21.3070/src/modes/mode_demo_blank.cpp Examining data/voronota-1.21.3070/src/modes/mode_write_qa_scores_in_casp_format.cpp Examining data/voronota-1.21.3070/src/modes/modescommon/mock_solvent_utilities.h Examining data/voronota-1.21.3070/src/modes/modescommon/filepath_utilities.h Examining data/voronota-1.21.3070/src/modes/modescommon/vectorization_utilities.h Examining data/voronota-1.21.3070/src/modes/modescommon/drawing_utilities.h Examining data/voronota-1.21.3070/src/modes/modescommon/svg_writer.h Examining data/voronota-1.21.3070/src/modes/modescommon/generic_utilities.h Examining data/voronota-1.21.3070/src/modes/mode_calculate_vertices.cpp Examining data/voronota-1.21.3070/src/modes/mode_write_balls_to_atoms_file.cpp Examining data/voronota-1.21.3070/src/modes/mode_draw_balls.cpp Examining data/voronota-1.21.3070/src/modes/mode_run_script.cpp Examining data/voronota-1.21.3070/src/modes/mode_expand_descriptors.cpp Examining data/voronota-1.21.3070/src/modes/mode_simulate_potential_for_membrane_proteins.cpp Examining data/voronota-1.21.3070/src/modes/mode_draw_contacts.cpp Examining data/voronota-1.21.3070/src/modes/mode_vectorize_points.cpp Examining data/voronota-1.21.3070/src/modes/mode_query_contacts.cpp Examining data/voronota-1.21.3070/src/modes/mode_draw_values_bitmap.cpp Examining data/voronota-1.21.3070/src/modes/mode_demo_polygon_triangulation.cpp Examining data/voronota-1.21.3070/src/modes/mode_score_contacts_energy_stats.cpp Examining data/voronota-1.21.3070/src/modes/mode_calculate_path_centralities.cpp Examining data/voronota-1.21.3070/src/modes/mode_query_balls_distances.cpp Examining data/voronota-1.21.3070/src/modes/mode_query_contacts_depth_values.cpp Examining data/voronota-1.21.3070/src/auxiliaries/atoms_io.h Examining data/voronota-1.21.3070/src/auxiliaries/time_utilities.h Examining data/voronota-1.21.3070/src/auxiliaries/program_options_handler.h Examining data/voronota-1.21.3070/src/auxiliaries/atom_radius_assigner.h Examining data/voronota-1.21.3070/src/auxiliaries/io_utilities.h Examining data/voronota-1.21.3070/src/auxiliaries/pairwise_sequence_alignment.h Examining data/voronota-1.21.3070/src/auxiliaries/opengl_printer.h Examining data/voronota-1.21.3070/src/auxiliaries/xml_writer.h Examining data/voronota-1.21.3070/src/auxiliaries/residue_letters_coding.h Examining data/voronota-1.21.3070/src/auxiliaries/residue_atoms_reference.h Examining data/voronota-1.21.3070/src/auxiliaries/color_utilities.h FINAL RESULTS: data/voronota-1.21.3070/src/modes/mode_calculate_vertices_in_parallel.cpp:222:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(argv_[i], argv[i].c_str()); data/voronota-1.21.3070/src/common/chain_residue_atom_descriptor.h:469:9: [3] (random) setstate: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. input.setstate(std::ios::failbit); data/voronota-1.21.3070/src/modes/mode_draw_values_bitmap.cpp:81:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. unsigned char the_color[3]={0, 0, 0}; data/voronota-1.21.3070/src/scripting/io_selectors.h:37:17: [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). disk_stream_.open(filename.c_str(), std::ios::in); data/voronota-1.21.3070/src/scripting/io_selectors.h:89:17: [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). disk_stream_.open(filename.c_str(), std::ios::out); data/voronota-1.21.3070/src/scripting/script_partitioner.h:179:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. const char symbols_open[5]={'"', '{', '(', '<', '['}; data/voronota-1.21.3070/src/scripting/script_partitioner.h:180:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. const char symbols_close[5]={'"', '}', ')', '>', ']'}; data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:40:10: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (equal(a.x, b.x) && equal(a.y, b.y) && equal(a.z, b.z)); data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:40:29: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (equal(a.x, b.x) && equal(a.y, b.y) && equal(a.z, b.z)); data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:40:48: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (equal(a.x, b.x) && equal(a.y, b.y) && equal(a.z, b.z)); data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:227:5: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(equal(squared_point_module(a2), 0.0)) data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:232:5: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(equal(squared_point_module(b2), 0.0)) data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:263:6: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(!equal(b.x, 0.0) && (!equal(b.y, 0.0) || !equal(b.z, 0.0))) data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:263:27: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(!equal(b.x, 0.0) && (!equal(b.y, 0.0) || !equal(b.z, 0.0))) data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:263:47: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(!equal(b.x, 0.0) && (!equal(b.y, 0.0) || !equal(b.z, 0.0))) data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:268:11: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. else if(!equal(b.y, 0.0) && (!equal(b.x, 0.0) || !equal(b.z, 0.0))) data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:268:32: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. else if(!equal(b.y, 0.0) && (!equal(b.x, 0.0) || !equal(b.z, 0.0))) data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:268:52: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. else if(!equal(b.y, 0.0) && (!equal(b.x, 0.0) || !equal(b.z, 0.0))) data/voronota-1.21.3070/src/apollota/basic_operations_on_points.h:273:11: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. else if(!equal(b.x, 0.0)) data/voronota-1.21.3070/src/apollota/basic_operations_on_spheres.h:38:10: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (equal(a.x, b.x, epsilon) && equal(a.y, b.y, epsilon) && equal(a.z, b.z, epsilon) && equal(a.r, b.r, epsilon)); data/voronota-1.21.3070/src/apollota/basic_operations_on_spheres.h:38:38: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (equal(a.x, b.x, epsilon) && equal(a.y, b.y, epsilon) && equal(a.z, b.z, epsilon) && equal(a.r, b.r, epsilon)); data/voronota-1.21.3070/src/apollota/basic_operations_on_spheres.h:38:66: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (equal(a.x, b.x, epsilon) && equal(a.y, b.y, epsilon) && equal(a.z, b.z, epsilon) && equal(a.r, b.r, epsilon)); data/voronota-1.21.3070/src/apollota/basic_operations_on_spheres.h:38:94: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (equal(a.x, b.x, epsilon) && equal(a.y, b.y, epsilon) && equal(a.z, b.z, epsilon) && equal(a.r, b.r, epsilon)); data/voronota-1.21.3070/src/apollota/basic_operations_on_spheres.h:92:9: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return equal(distance_from_point_to_point(a, b), (a.r+b.r)); data/voronota-1.21.3070/src/apollota/basic_operations_on_spheres.h:148:6: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(equal(angle_oac, 0.0) || equal(angle_oac, pi_value())) data/voronota-1.21.3070/src/apollota/basic_operations_on_spheres.h:148:31: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(equal(angle_oac, 0.0) || equal(angle_oac, pi_value())) data/voronota-1.21.3070/src/apollota/hyperboloid_between_two_spheres.h:103:50: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(greater(t1, 0) && less(t1, ab.module()) && equal(tp1.z, sqrt(k*tp1.x*tp1.x+k*tp1.y*tp1.y+m), 0.000001)) data/voronota-1.21.3070/src/apollota/hyperboloid_between_two_spheres.h:107:55: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. else if(greater(t2, 0) && less(t2, ab.module()) && equal(tp2.z, sqrt(k*tp2.x*tp2.x+k*tp2.y*tp2.y+m), 0.000001)) data/voronota-1.21.3070/src/apollota/safer_comparison_of_numbers.h:16:13: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. inline bool equal(const double a, const double b, const double e) data/voronota-1.21.3070/src/apollota/safer_comparison_of_numbers.h:21:13: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. inline bool equal(const double a, const double b) data/voronota-1.21.3070/src/apollota/safer_comparison_of_numbers.h:23:9: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return equal(a, b, default_comparison_epsilon()); data/voronota-1.21.3070/src/apollota/safer_comparison_of_numbers.h:38:24: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (less(a, b) || equal(a, b)); data/voronota-1.21.3070/src/apollota/safer_comparison_of_numbers.h:43:27: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (greater(a, b) || equal(a, b)); data/voronota-1.21.3070/src/apollota/tangent_plane_of_three_spheres.h:41:11: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return (equal( (((sp2+t*s2.r)-(sp1+t*s1.r)) * t), 0 ) && data/voronota-1.21.3070/src/apollota/tangent_plane_of_three_spheres.h:42:5: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. equal( (((sp3+t*s3.r)-(sp1+t*s1.r)) * t), 0 )); data/voronota-1.21.3070/src/apollota/tangent_sphere_of_four_spheres.h:34:22: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. for(int i=0;i<3 && equal(fabs(signed_volume_of_tetrahedron(usm, s1, s2, s3)), 0.0);i++) data/voronota-1.21.3070/src/apollota/tangent_sphere_of_three_spheres.h:190:11: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(equal(candidate.r, custom_tangent_sphere_radius)) data/voronota-1.21.3070/src/modes/mode_demo_hypercut.cpp:169:26: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. if(voronota::apollota::equal(x.module(), 0.0)) ANALYSIS SUMMARY: Hits = 38 Lines analyzed = 48670 in approximately 1.09 seconds (44818 lines/second) Physical Source Lines of Code (SLOC) = 41901 Hits@level = [0] 0 [1] 31 [2] 5 [3] 1 [4] 1 [5] 0 Hits@level+ = [0+] 38 [1+] 38 [2+] 7 [3+] 2 [4+] 1 [5+] 0 Hits/KSLOC@level+ = [0+] 0.9069 [1+] 0.9069 [2+] 0.16706 [3+] 0.0477316 [4+] 0.0238658 [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.