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/bitstream-1.5/atsc/a52.h Examining data/bitstream-1.5/common.h Examining data/bitstream-1.5/dvb/ci.h Examining data/bitstream-1.5/dvb/si.h Examining data/bitstream-1.5/dvb/si/bat.h Examining data/bitstream-1.5/dvb/si/bat_print.h Examining data/bitstream-1.5/dvb/si/datetime.h Examining data/bitstream-1.5/dvb/si/desc_40.h Examining data/bitstream-1.5/dvb/si/desc_41.h Examining data/bitstream-1.5/dvb/si/desc_42.h Examining data/bitstream-1.5/dvb/si/desc_43.h Examining data/bitstream-1.5/dvb/si/desc_44.h Examining data/bitstream-1.5/dvb/si/desc_45.h Examining data/bitstream-1.5/dvb/si/desc_46.h Examining data/bitstream-1.5/dvb/si/desc_47.h Examining data/bitstream-1.5/dvb/si/desc_48.h Examining data/bitstream-1.5/dvb/si/desc_49.h Examining data/bitstream-1.5/dvb/si/desc_4a.h Examining data/bitstream-1.5/dvb/si/desc_4b.h Examining data/bitstream-1.5/dvb/si/desc_4c.h Examining data/bitstream-1.5/dvb/si/desc_4d.h Examining data/bitstream-1.5/dvb/si/desc_4e.h Examining data/bitstream-1.5/dvb/si/desc_4f.h Examining data/bitstream-1.5/dvb/si/desc_50.h Examining data/bitstream-1.5/dvb/si/desc_51.h Examining data/bitstream-1.5/dvb/si/desc_52.h Examining data/bitstream-1.5/dvb/si/desc_53.h Examining data/bitstream-1.5/dvb/si/desc_54.h Examining data/bitstream-1.5/dvb/si/desc_55.h Examining data/bitstream-1.5/dvb/si/desc_56.h Examining data/bitstream-1.5/dvb/si/desc_57.h Examining data/bitstream-1.5/dvb/si/desc_58.h Examining data/bitstream-1.5/dvb/si/desc_59.h Examining data/bitstream-1.5/dvb/si/desc_5a.h Examining data/bitstream-1.5/dvb/si/desc_5b.h Examining data/bitstream-1.5/dvb/si/desc_5c.h Examining data/bitstream-1.5/dvb/si/desc_5d.h Examining data/bitstream-1.5/dvb/si/desc_5e.h Examining data/bitstream-1.5/dvb/si/desc_5f.h Examining data/bitstream-1.5/dvb/si/desc_60.h Examining data/bitstream-1.5/dvb/si/desc_61.h Examining data/bitstream-1.5/dvb/si/desc_62.h Examining data/bitstream-1.5/dvb/si/desc_63.h Examining data/bitstream-1.5/dvb/si/desc_64.h Examining data/bitstream-1.5/dvb/si/desc_65.h Examining data/bitstream-1.5/dvb/si/desc_66.h Examining data/bitstream-1.5/dvb/si/desc_67.h Examining data/bitstream-1.5/dvb/si/desc_68.h Examining data/bitstream-1.5/dvb/si/desc_69.h Examining data/bitstream-1.5/dvb/si/desc_6a.h Examining data/bitstream-1.5/dvb/si/desc_6b.h Examining data/bitstream-1.5/dvb/si/desc_6c.h Examining data/bitstream-1.5/dvb/si/desc_6d.h Examining data/bitstream-1.5/dvb/si/desc_6e.h Examining data/bitstream-1.5/dvb/si/desc_7a.h Examining data/bitstream-1.5/dvb/si/desc_7b.h Examining data/bitstream-1.5/dvb/si/desc_7c.h Examining data/bitstream-1.5/dvb/si/desc_83p28.h Examining data/bitstream-1.5/dvb/si/desc_88p28.h Examining data/bitstream-1.5/dvb/si/descs_list.h Examining data/bitstream-1.5/dvb/si/dit.h Examining data/bitstream-1.5/dvb/si/dit_print.h Examining data/bitstream-1.5/dvb/si/eit.h Examining data/bitstream-1.5/dvb/si/eit_print.h Examining data/bitstream-1.5/dvb/si/nit.h Examining data/bitstream-1.5/dvb/si/nit_print.h Examining data/bitstream-1.5/dvb/si/numbers.h Examining data/bitstream-1.5/dvb/si/rst.h Examining data/bitstream-1.5/dvb/si/rst_print.h Examining data/bitstream-1.5/dvb/si/sdt.h Examining data/bitstream-1.5/dvb/si/sdt_print.h Examining data/bitstream-1.5/dvb/si/sit.h Examining data/bitstream-1.5/dvb/si/sit_print.h Examining data/bitstream-1.5/dvb/si/st.h Examining data/bitstream-1.5/dvb/si/strings.h Examining data/bitstream-1.5/dvb/si/tdt.h Examining data/bitstream-1.5/dvb/si/tdt_print.h Examining data/bitstream-1.5/dvb/si/tot.h Examining data/bitstream-1.5/dvb/si/tot_print.h Examining data/bitstream-1.5/dvb/si_print.h Examining data/bitstream-1.5/dvb/sim.h Examining data/bitstream-1.5/dvb/sub.h Examining data/bitstream-1.5/dvb/telx.h Examining data/bitstream-1.5/dvb/vbi.h Examining data/bitstream-1.5/examples/dvb_ecmg.c Examining data/bitstream-1.5/examples/dvb_ecmg_test.c Examining data/bitstream-1.5/examples/dvb_gen_si.c Examining data/bitstream-1.5/examples/dvb_print_si.c Examining data/bitstream-1.5/examples/mpeg_print_pcr.c Examining data/bitstream-1.5/examples/mpeg_restamp.c Examining data/bitstream-1.5/examples/rtp_check_seqnum.c Examining data/bitstream-1.5/ieee/ethernet.h Examining data/bitstream-1.5/ietf/ip.h Examining data/bitstream-1.5/ietf/rfc4175.h Examining data/bitstream-1.5/ietf/rtcp.h Examining data/bitstream-1.5/ietf/rtcp3611.h Examining data/bitstream-1.5/ietf/rtcp_fb.h Examining data/bitstream-1.5/ietf/rtcp_rr.h Examining data/bitstream-1.5/ietf/rtcp_sdes.h Examining data/bitstream-1.5/ietf/rtcp_sr.h Examining data/bitstream-1.5/ietf/rtp.h Examining data/bitstream-1.5/ietf/rtp2250.h Examining data/bitstream-1.5/ietf/rtp3551.h Examining data/bitstream-1.5/ietf/rtp3640.h Examining data/bitstream-1.5/ietf/rtp6184.h Examining data/bitstream-1.5/ietf/rtp7587.h Examining data/bitstream-1.5/ietf/udp.h Examining data/bitstream-1.5/itu/h265.h Examining data/bitstream-1.5/mpeg/aac.h Examining data/bitstream-1.5/mpeg/h264.h Examining data/bitstream-1.5/mpeg/mp2v.h Examining data/bitstream-1.5/mpeg/mpga.h Examining data/bitstream-1.5/mpeg/pes.h Examining data/bitstream-1.5/mpeg/psi.h Examining data/bitstream-1.5/mpeg/psi/cat.h Examining data/bitstream-1.5/mpeg/psi/cat_print.h Examining data/bitstream-1.5/mpeg/psi/desc_02.h Examining data/bitstream-1.5/mpeg/psi/desc_03.h Examining data/bitstream-1.5/mpeg/psi/desc_04.h Examining data/bitstream-1.5/mpeg/psi/desc_05.h Examining data/bitstream-1.5/mpeg/psi/desc_06.h Examining data/bitstream-1.5/mpeg/psi/desc_07.h Examining data/bitstream-1.5/mpeg/psi/desc_08.h Examining data/bitstream-1.5/mpeg/psi/desc_09.h Examining data/bitstream-1.5/mpeg/psi/desc_0a.h Examining data/bitstream-1.5/mpeg/psi/desc_0b.h Examining data/bitstream-1.5/mpeg/psi/desc_0c.h Examining data/bitstream-1.5/mpeg/psi/desc_0d.h Examining data/bitstream-1.5/mpeg/psi/desc_0e.h Examining data/bitstream-1.5/mpeg/psi/desc_0f.h Examining data/bitstream-1.5/mpeg/psi/desc_10.h Examining data/bitstream-1.5/mpeg/psi/desc_11.h Examining data/bitstream-1.5/mpeg/psi/desc_12.h Examining data/bitstream-1.5/mpeg/psi/desc_1b.h Examining data/bitstream-1.5/mpeg/psi/desc_1c.h Examining data/bitstream-1.5/mpeg/psi/desc_1d.h Examining data/bitstream-1.5/mpeg/psi/desc_1e.h Examining data/bitstream-1.5/mpeg/psi/desc_1f.h Examining data/bitstream-1.5/mpeg/psi/desc_20.h Examining data/bitstream-1.5/mpeg/psi/desc_21.h Examining data/bitstream-1.5/mpeg/psi/desc_22.h Examining data/bitstream-1.5/mpeg/psi/desc_23.h Examining data/bitstream-1.5/mpeg/psi/desc_24.h Examining data/bitstream-1.5/mpeg/psi/desc_25.h Examining data/bitstream-1.5/mpeg/psi/desc_26.h Examining data/bitstream-1.5/mpeg/psi/desc_27.h Examining data/bitstream-1.5/mpeg/psi/desc_28.h Examining data/bitstream-1.5/mpeg/psi/desc_2a.h Examining data/bitstream-1.5/mpeg/psi/desc_2b.h Examining data/bitstream-1.5/mpeg/psi/desc_2c.h Examining data/bitstream-1.5/mpeg/psi/descriptors.h Examining data/bitstream-1.5/mpeg/psi/descs_list.h Examining data/bitstream-1.5/mpeg/psi/descs_print.h Examining data/bitstream-1.5/mpeg/psi/pat.h Examining data/bitstream-1.5/mpeg/psi/pat_print.h Examining data/bitstream-1.5/mpeg/psi/pmt.h Examining data/bitstream-1.5/mpeg/psi/pmt_print.h Examining data/bitstream-1.5/mpeg/psi/psi.h Examining data/bitstream-1.5/mpeg/psi/tsdt.h Examining data/bitstream-1.5/mpeg/psi/tsdt_print.h Examining data/bitstream-1.5/mpeg/psi_print.h Examining data/bitstream-1.5/mpeg/ts.h Examining data/bitstream-1.5/scte/104.h Examining data/bitstream-1.5/scte/35.h Examining data/bitstream-1.5/scte/35_print.h Examining data/bitstream-1.5/smpte/2010.h Examining data/bitstream-1.5/smpte/2022_1_fec.h Examining data/bitstream-1.5/smpte/2022_6_hbrmt.h Examining data/bitstream-1.5/smpte/291.h Examining data/bitstream-1.5/smpte/337.h Examining data/bitstream-1.5/smpte/352.h Examining data/bitstream-1.5/smpte/rdd08.h FINAL RESULTS: data/bitstream-1.5/common.h:49:75: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. typedef void (*f_print)(void *, const char *, ...) __attribute__ ((format(printf, 2, 3))); data/bitstream-1.5/dvb/si/desc_55.h:93:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(rating_txt, "%s", "undefined"); data/bitstream-1.5/dvb/si/desc_55.h:97:13: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(rating_txt, "%s", "unknown"); data/bitstream-1.5/examples/dvb_print_si.c:132: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(psz_fmt, psz_format); data/bitstream-1.5/examples/dvb_print_si.c:134:5: [4] (format) vprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. vprintf(psz_fmt, args); data/bitstream-1.5/examples/dvb_ecmg_test.c:497:5: [3] (random) srand: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. srand(time(NULL)); data/bitstream-1.5/examples/dvb_print_si.c:1109:17: [3] (buffer) getopt_long: Some older implementations do not protect against internal buffer overflows (CWE-120, CWE-20). Check implementation on installation, or limit the size of all string inputs. while ((c = getopt_long(i_argc, ppsz_argv, "x:hVT:", long_options, NULL)) != -1) data/bitstream-1.5/dvb/si/datetime.h:134:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(output, "%04d-%02d-%02d %02d:%02d:%02d UTC", data/bitstream-1.5/dvb/si/desc_40.h:61:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + 2, p_network_name, i_length); data/bitstream-1.5/dvb/si/desc_48.h:72:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p + 1, p_provider, i_length); data/bitstream-1.5/dvb/si/desc_48.h:89:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p + 1, p_service, i_length); data/bitstream-1.5/dvb/si/desc_4d.h:82:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p + 1, p_event_name, i_length); data/bitstream-1.5/dvb/si/desc_4d.h:99:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p + 1, p_text, i_length); data/bitstream-1.5/dvb/si/desc_4e.h:131:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc_n + 1, item_description, i_length); data/bitstream-1.5/dvb/si/desc_4e.h:145:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p + 1, item_text, i_length); data/bitstream-1.5/dvb/si/desc_4e.h:159:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p + 1, p_text, i_length); data/bitstream-1.5/dvb/si/desc_50.h:108:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + DESC50_HEADER_SIZE, p_text, i_length); data/bitstream-1.5/dvb/si/desc_55.h:90:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char rating_txt[16]; data/bitstream-1.5/dvb/si/desc_55.h:95:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(rating_txt, "min %d years", rating + 3); data/bitstream-1.5/dvb/si/desc_57.h:95:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + DESC57_HEADER_SIZE, p_country_prefix, i_length); data/bitstream-1.5/dvb/si/desc_57.h:115:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + DESC57_HEADER_SIZE data/bitstream-1.5/dvb/si/desc_57.h:138:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + DESC57_HEADER_SIZE data/bitstream-1.5/dvb/si/desc_57.h:163:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + DESC57_HEADER_SIZE data/bitstream-1.5/dvb/si/desc_57.h:190:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + DESC57_HEADER_SIZE data/bitstream-1.5/dvb/si/desc_58.h:146:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char txt_time_of_change[24]; data/bitstream-1.5/dvb/si/desc_5b.h:75:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc_n + 4, p_network_name, i_length); data/bitstream-1.5/dvb/si/desc_5d.h:75:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc_n + 4, p_network_name, i_length); data/bitstream-1.5/dvb/si/desc_5d.h:92:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc_n + 5 + desc5dn_get_provider_name_length(p_desc_n), data/bitstream-1.5/dvb/si/desc_5e.h:86:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc_n + 4, p_text, i_length); data/bitstream-1.5/dvb/si/desc_64.h:91:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + 6, p_selector_byte, i_length); data/bitstream-1.5/dvb/si/desc_64.h:122:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p + 1, p_text, i_length); data/bitstream-1.5/dvb/si/desc_64.h:151: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 psz_selector_byte[2 * 255 + 1]; data/bitstream-1.5/dvb/si/desc_64.h:152: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 psz_selector_byte_txt[255 + 1]; data/bitstream-1.5/dvb/si/desc_64.h:155:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_selector_byte + 2 * i, "%02x", p_selector_byte[i]); data/bitstream-1.5/dvb/si/desc_66.h:80:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + 4, p_selector_byte, i_length); data/bitstream-1.5/dvb/si/desc_66.h:95: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 psz_selector_byte[2 * 255 + 1]; data/bitstream-1.5/dvb/si/desc_66.h:96:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char psz_selector_byte_txt[255 + 1]; data/bitstream-1.5/dvb/si/desc_66.h:99:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_selector_byte + 2 * i, "%02x", p_selector_byte[i]); data/bitstream-1.5/dvb/si/desc_67.h:69:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + 2, p_bytes, i_length); data/bitstream-1.5/dvb/si/desc_67.h:85:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char psz_bytes[2 * 255 + 1]; data/bitstream-1.5/dvb/si/desc_67.h:86: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 psz_bytes_txt[255 + 1]; data/bitstream-1.5/dvb/si/desc_67.h:89:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_bytes + 2 * i, "%02x", p_bytes[i]); data/bitstream-1.5/dvb/si/eit_print.h:101:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char start_str[24]; data/bitstream-1.5/dvb/si/strings.h:111:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_encoded, p_string, i_length); data/bitstream-1.5/dvb/si/strings.h:120:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_encoded + 1, p_string, i_length); data/bitstream-1.5/dvb/si/strings.h:132:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_encoded + 3, p_string, i_length); data/bitstream-1.5/dvb/si/strings.h:171:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(psz_string, p_string, i_length); data/bitstream-1.5/dvb/si/strings.h:230:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(psz2, "<", strlen("<")); data/bitstream-1.5/dvb/si/strings.h:234:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(psz2, ">", strlen(">")); data/bitstream-1.5/dvb/si/strings.h:238:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(psz2, "&", strlen("&")); data/bitstream-1.5/dvb/si/strings.h:242:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(psz2, """, strlen(""")); data/bitstream-1.5/dvb/si/strings.h:246:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(psz2, "'", strlen("'")); data/bitstream-1.5/dvb/si/tdt_print.h:52: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 ts_str[24]; data/bitstream-1.5/dvb/si/tot_print.h:50:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ts_str[24]; data/bitstream-1.5/dvb/sim.h:222:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_tlv_n + 4, p_data, i_length); data/bitstream-1.5/examples/dvb_ecmg_test.c:256:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pi_cw, &i_rand, 4); data/bitstream-1.5/examples/dvb_ecmg_test.c:258:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pi_cw + 4, &i_rand, 4); data/bitstream-1.5/examples/dvb_ecmg_test.c:493:24: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). i_wanted_streams = atoi(ppsz_argv[1]); data/bitstream-1.5/examples/dvb_ecmg_test.c:494:16: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). i_period = atoi(ppsz_argv[2]); data/bitstream-1.5/examples/dvb_gen_si.c:1871:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(cat_get_descl(cat), desc_loop + DESCS_HEADER_SIZE, data/bitstream-1.5/examples/dvb_gen_si.c:1917:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(tsdt_get_descl(tsdt), desc_loop + DESCS_HEADER_SIZE, data/bitstream-1.5/examples/dvb_print_si.c:116:14: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static const char * const ppsz_all_tables[TABLE_END] = { data/bitstream-1.5/examples/dvb_print_si.c:129:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char psz_fmt[strlen(psz_format) + 2]; data/bitstream-1.5/examples/dvb_print_si.c:144:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(psz_string, p_string, i_length); data/bitstream-1.5/examples/rtp_check_seqnum.c:60:25: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). i_packet_size = atoi(ppsz_argv[1]); data/bitstream-1.5/ieee/ethernet.h:67:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_addr, p_ethernet, ETHERNET_ADDR_LEN); data/bitstream-1.5/ieee/ethernet.h:72:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ethernet_dstaddr(p_ethernet), p_addr, ETHERNET_ADDR_LEN); data/bitstream-1.5/ieee/ethernet.h:82:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_addr, p_ethernet + ETHERNET_ADDR_LEN, ETHERNET_ADDR_LEN); data/bitstream-1.5/ieee/ethernet.h:87:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ethernet_srcaddr(p_ethernet), p_addr, ETHERNET_ADDR_LEN); data/bitstream-1.5/mpeg/psi/desc_0d.h:83:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + DESC0D_HEADER_SIZE, p_additional_copyright_info, i_length); data/bitstream-1.5/mpeg/psi/desc_0d.h:97: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 psz_value[2 * 255 + 1]; data/bitstream-1.5/mpeg/psi/desc_0d.h:100:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_value + 2 * i, "%2.2hhx", p_add_copy_info[i]); data/bitstream-1.5/mpeg/psi/desc_24.h:131:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + ofs + 2, p_data, i_length); data/bitstream-1.5/mpeg/psi/desc_24.h:250:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + ofs + 1, p_data, i_length); data/bitstream-1.5/mpeg/psi/desc_24.h:292:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char psz_content[2 * 255 + 1]; data/bitstream-1.5/mpeg/psi/desc_24.h:293: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 psz_time_base[2 * 255 + 1]; data/bitstream-1.5/mpeg/psi/desc_24.h:296:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_content + 2 * i, "%02x", p_content_reference_id[i]); data/bitstream-1.5/mpeg/psi/desc_24.h:300:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_time_base + 2 * i, "%02x", p_time_base_association_data[i]); data/bitstream-1.5/mpeg/psi/desc_25.h:151:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + ofs + 3, p_data, i_length); data/bitstream-1.5/mpeg/psi/desc_25.h:259: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 psz_metadata_locator_record[2 * 255 + 1]; data/bitstream-1.5/mpeg/psi/desc_25.h:262:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_metadata_locator_record + 2 * i, "%02x", p_metadata_locator_record[i]); data/bitstream-1.5/mpeg/psi/desc_26.h:119:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + ofs + 3, p_data, i_length); data/bitstream-1.5/mpeg/psi/desc_26.h:153:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + ofs + 1, p_data, i_length); data/bitstream-1.5/mpeg/psi/desc_26.h:179:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_desc + ofs + 1, p_data, i_length); data/bitstream-1.5/mpeg/psi/desc_26.h:237: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 psz_service_identification_record[2 * 256 + 1]; data/bitstream-1.5/mpeg/psi/desc_26.h:241: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 psz_extra[2 * 256 + 1]; data/bitstream-1.5/mpeg/psi/desc_26.h:244:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_service_identification_record + 2 * i, "%02x", p_service_identification_record[i]); data/bitstream-1.5/mpeg/psi/desc_26.h:255:9: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_extra + 2 * i, "%02x", p_extra[i]); data/bitstream-1.5/mpeg/psi/descriptors.h:78:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char psz_value[2 * i_length + 1]; data/bitstream-1.5/mpeg/psi/descriptors.h:81:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_value + 2 * i, "%2.2hhx", p_desc[2 + i]); data/bitstream-1.5/mpeg/psi/descriptors.h:123: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 psz_value[2 * 255 + 1]; data/bitstream-1.5/mpeg/psi/descriptors.h:133:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(psz_value + 2 * i, "%02x", p_desc[2 + i]); data/bitstream-1.5/mpeg/psi/psi.h:358:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(*pp_psi_buffer + *pi_psi_buffer_used, *pp_payload, i_copy_size); data/bitstream-1.5/mpeg/psi/psi.h:428:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(p_ts + *pi_ts_offset, p_section + *pi_section_offset, i_copy); data/bitstream-1.5/mpeg/psi/psi.h:467:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(pp_dest, pp_src, PSI_TABLE_MAX_SECTIONS * sizeof(uint8_t *)); data/bitstream-1.5/scte/35_print.h:102: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 psz_duration[256]; data/bitstream-1.5/scte/35_print.h:126: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 psz_splice_time[256]; data/bitstream-1.5/dvb/si/strings.h:210:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i_output_size += strlen("<"); data/bitstream-1.5/dvb/si/strings.h:213:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i_output_size += strlen("&"); data/bitstream-1.5/dvb/si/strings.h:217:34: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). i_output_size += strlen("""); data/bitstream-1.5/dvb/si/strings.h:230:38: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). memcpy(psz2, "<", strlen("<")); data/bitstream-1.5/dvb/si/strings.h:231: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). psz2 += strlen("<"); data/bitstream-1.5/dvb/si/strings.h:234:38: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). memcpy(psz2, ">", strlen(">")); data/bitstream-1.5/dvb/si/strings.h:235: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). psz2 += strlen(">"); data/bitstream-1.5/dvb/si/strings.h:238:39: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). memcpy(psz2, "&", strlen("&")); data/bitstream-1.5/dvb/si/strings.h:239: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). psz2 += strlen("&"); data/bitstream-1.5/dvb/si/strings.h:242:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). memcpy(psz2, """, strlen(""")); data/bitstream-1.5/dvb/si/strings.h:243: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). psz2 += strlen("""); data/bitstream-1.5/dvb/si/strings.h:246:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). memcpy(psz2, "'", strlen("'")); data/bitstream-1.5/dvb/si/strings.h:247: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). psz2 += strlen("'"); data/bitstream-1.5/examples/dvb_ecmg.c:103:26: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ssize_t i_read = read(STDIN_FILENO, p_buf + i_received, data/bitstream-1.5/examples/dvb_ecmg_test.c:87:26: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ssize_t i_read = read(STDIN_FILENO, p_buf + i_received, data/bitstream-1.5/examples/dvb_gen_si.c:586:59: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc40_set_networkname(desc, (uint8_t *)network_name, strlen(network_name)); data/bitstream-1.5/examples/dvb_gen_si.c:735:59: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc47_set_bouquetname(desc, (uint8_t *)bouquet_name, strlen(bouquet_name)); data/bitstream-1.5/examples/dvb_gen_si.c:745:57: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc48_set_provider(desc, (uint8_t *)provider_name, strlen(provider_name)); data/bitstream-1.5/examples/dvb_gen_si.c:746:55: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc48_set_service(desc, (uint8_t *)service_name, strlen(service_name)); data/bitstream-1.5/examples/dvb_gen_si.c:917:56: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc4d_set_event_name(desc, (uint8_t *)event_name, strlen(event_name)); data/bitstream-1.5/examples/dvb_gen_si.c:918:44: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc4d_set_text(desc, (uint8_t *)text, strlen(text)); data/bitstream-1.5/examples/dvb_gen_si.c:947:69: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc4en_set_item_description(item_n, (uint8_t *)item1_desc, strlen(item1_desc)); data/bitstream-1.5/examples/dvb_gen_si.c:948:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc4en_set_item_text(item_n, (uint8_t *)item1_text, strlen(item1_text)); data/bitstream-1.5/examples/dvb_gen_si.c:951:69: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc4en_set_item_description(item_n, (uint8_t *)item2_desc, strlen(item2_desc)); data/bitstream-1.5/examples/dvb_gen_si.c:952:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc4en_set_item_text(item_n, (uint8_t *)item2_text, strlen(item2_text)); data/bitstream-1.5/examples/dvb_gen_si.c:955:69: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc4en_set_item_description(item_n, (uint8_t *)item3_desc, strlen(item3_desc)); data/bitstream-1.5/examples/dvb_gen_si.c:956:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc4en_set_item_text(item_n, (uint8_t *)item3_text, strlen(item3_text)); data/bitstream-1.5/examples/dvb_gen_si.c:962:44: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc4e_set_text(desc, (uint8_t *)text, strlen(text)); data/bitstream-1.5/examples/dvb_gen_si.c:981:44: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc50_set_text(desc, (uint8_t *)text, strlen(text)); // Not required data/bitstream-1.5/examples/dvb_gen_si.c:1145:53: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc57_set_country_prefix(desc, country_prefix, strlen(country_prefix)); data/bitstream-1.5/examples/dvb_gen_si.c:1146:71: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc57_set_international_area_code(desc, international_area_code, strlen(international_area_code)); data/bitstream-1.5/examples/dvb_gen_si.c:1147:51: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc57_set_operator_code(desc, operator_code, strlen(operator_code)); data/bitstream-1.5/examples/dvb_gen_si.c:1148:61: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc57_set_national_area_code(desc, national_area_code, strlen(national_area_code)); data/bitstream-1.5/examples/dvb_gen_si.c:1149:47: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc57_set_core_number(desc, core_number, strlen(core_number)); data/bitstream-1.5/examples/dvb_gen_si.c:1239:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5bn_set_networkname(data_n, (uint8_t *)network_name, strlen(network_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1243:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5bn_set_networkname(data_n, (uint8_t *)network_name, strlen(network_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1247:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5bn_set_networkname(data_n, (uint8_t *)network_name, strlen(network_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1264:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5cn_set_bouquetname(data_n, (uint8_t *)bouquet_name, strlen(bouquet_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1268:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5cn_set_bouquetname(data_n, (uint8_t *)bouquet_name, strlen(bouquet_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1272:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5cn_set_bouquetname(data_n, (uint8_t *)bouquet_name, strlen(bouquet_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1290:65: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5dn_set_provider_name(data_n, (uint8_t *)provider_name, strlen(provider_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1291:63: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5dn_set_service_name(data_n, (uint8_t *)service_name, strlen(service_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1295:65: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5dn_set_provider_name(data_n, (uint8_t *)provider_name, strlen(provider_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1296:63: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5dn_set_service_name(data_n, (uint8_t *)service_name, strlen(service_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1300:65: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5dn_set_provider_name(data_n, (uint8_t *)provider_name, strlen(provider_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1301:63: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5dn_set_service_name(data_n, (uint8_t *)service_name, strlen(service_name)); data/bitstream-1.5/examples/dvb_gen_si.c:1320:47: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5en_set_text(data_n, (uint8_t *)text, strlen(text)); data/bitstream-1.5/examples/dvb_gen_si.c:1324:47: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5en_set_text(data_n, (uint8_t *)text, strlen(text)); data/bitstream-1.5/examples/dvb_gen_si.c:1328:47: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc5en_set_text(data_n, (uint8_t *)text, strlen(text)); data/bitstream-1.5/examples/dvb_gen_si.c:1399:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc64_set_selector_byte(desc, (uint8_t *)selector_byte, strlen(selector_byte)); data/bitstream-1.5/examples/dvb_gen_si.c:1401:44: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc64_set_text(desc, (uint8_t *)text, strlen(text)); data/bitstream-1.5/examples/dvb_gen_si.c:1416:62: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc66_set_selector_byte(desc, (uint8_t *)selector_byte, strlen(selector_byte)); data/bitstream-1.5/examples/dvb_gen_si.c:1422:46: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc67_set_bytes(desc, (uint8_t *)bytes, strlen(bytes)); data/bitstream-1.5/examples/dvb_gen_si.c:1429:51: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). desc68_set_bytes(desc, (uint8_t *)dsng_bytes, strlen(dsng_bytes)); data/bitstream-1.5/examples/dvb_print_si.c:129:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char psz_fmt[strlen(psz_format) + 2]; data/bitstream-1.5/examples/dvb_print_si.c:133:5: [1] (buffer) strcat: Does not check for buffer overflows when concatenating to destination [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or snprintf (warning: strncat is easily misused). Risk is low because the source is a constant character. strcat(psz_fmt, "\n"); data/bitstream-1.5/examples/mpeg_restamp.c:141:26: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ssize_t i_read = read(STDIN_FILENO, p_buffer, i_mtu); data/bitstream-1.5/examples/rtp_check_seqnum.c:69:19: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if ((toto=read(STDIN_FILENO, p_buffer, i_packet_size)) != i_packet_size) { ANALYSIS SUMMARY: Hits = 155 Lines analyzed = 34047 in approximately 1.00 seconds (34195 lines/second) Physical Source Lines of Code (SLOC) = 22755 Hits@level = [0] 115 [1] 58 [2] 90 [3] 2 [4] 5 [5] 0 Hits@level+ = [0+] 270 [1+] 155 [2+] 97 [3+] 7 [4+] 5 [5+] 0 Hits/KSLOC@level+ = [0+] 11.8655 [1+] 6.81169 [2+] 4.2628 [3+] 0.307625 [4+] 0.219732 [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.