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/libsmpp34-1.14.0/src/smpp34.h
Examining data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c
Examining data/libsmpp34-1.14.0/src/smpp34_dumpPdu.c
Examining data/libsmpp34-1.14.0/src/smpp34_heap.c
Examining data/libsmpp34-1.14.0/src/smpp34_heap.h
Examining data/libsmpp34-1.14.0/src/smpp34_pack.c
Examining data/libsmpp34-1.14.0/src/smpp34_params.c
Examining data/libsmpp34-1.14.0/src/smpp34_params.h
Examining data/libsmpp34-1.14.0/src/smpp34_structs.c
Examining data/libsmpp34-1.14.0/src/smpp34_structs.h
Examining data/libsmpp34-1.14.0/src/smpp34_unpack.c
Examining data/libsmpp34-1.14.0/test_apps/analizer.c
Examining data/libsmpp34-1.14.0/test_apps/esme.c
Examining data/libsmpp34-1.14.0/test_apps/esme.h
Examining data/libsmpp34-1.14.0/test_apps/sendwp.c
Examining data/libsmpp34-1.14.0/test_apps/sendwp.h
Examining data/libsmpp34-1.14.0/test_apps/smpp.c
Examining data/libsmpp34-1.14.0/test_apps/smpp_smsc.c
Examining data/libsmpp34-1.14.0/test_apps/smpp_smsc.h
Examining data/libsmpp34-1.14.0/test_apps/smsc_main.c
Examining data/libsmpp34-1.14.0/test_apps/tcp.c
Examining data/libsmpp34-1.14.0/test_pdu/alert_notification_test.c
Examining data/libsmpp34-1.14.0/test_pdu/bind_receiver_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/bind_receiver_test.c
Examining data/libsmpp34-1.14.0/test_pdu/bind_transceiver_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/bind_transceiver_test.c
Examining data/libsmpp34-1.14.0/test_pdu/bind_transmitter_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/bind_transmitter_test.c
Examining data/libsmpp34-1.14.0/test_pdu/cancel_sm_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/cancel_sm_test.c
Examining data/libsmpp34-1.14.0/test_pdu/core.c
Examining data/libsmpp34-1.14.0/test_pdu/core.h
Examining data/libsmpp34-1.14.0/test_pdu/data_sm_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/data_sm_test.c
Examining data/libsmpp34-1.14.0/test_pdu/deliver_sm_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/deliver_sm_test.c
Examining data/libsmpp34-1.14.0/test_pdu/enquire_link_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/enquire_link_test.c
Examining data/libsmpp34-1.14.0/test_pdu/generic_nack_test.c
Examining data/libsmpp34-1.14.0/test_pdu/outbind_test.c
Examining data/libsmpp34-1.14.0/test_pdu/query_sm_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/query_sm_test.c
Examining data/libsmpp34-1.14.0/test_pdu/replace_sm_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/replace_sm_test.c
Examining data/libsmpp34-1.14.0/test_pdu/submit_multi_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/submit_multi_test.c
Examining data/libsmpp34-1.14.0/test_pdu/submit_sm_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/submit_sm_test.c
Examining data/libsmpp34-1.14.0/test_pdu/unbind_resp_test.c
Examining data/libsmpp34-1.14.0/test_pdu/unbind_test.c

FINAL RESULTS:

data/libsmpp34-1.14.0/src/smpp34_dumpPdu.c:85:14:  [4] (format) snprintf:
  If format strings can be influenced by an attacker, they can be exploited,
  and note that sprintf variations do not always \0-terminate (CWE-134). Use
  a constant for the format specification.
    lenval = snprintf((char*)l_dest, sizeof(l_dest),\
data/libsmpp34-1.14.0/src/smpp34_structs.h:249:16:  [4] (format) snprintf:
  If format strings can be influenced by an attacker, they can be exploited,
  and note that sprintf variations do not always \0-terminate (CWE-134). Use
  a constant for the format specification.
    lenerror = snprintf((char*)ptrerror,lefterror,format,#param,value,parse);\
data/libsmpp34-1.14.0/test_apps/analizer.c:97:18:  [3] (buffer) getopt:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    while( (co = getopt(argc, argv, "f:h")) != EOF ){
data/libsmpp34-1.14.0/test_apps/esme.c:52:18:  [3] (buffer) getopt:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    while( (co = getopt(argc, argv, "c:h")) != EOF ){
data/libsmpp34-1.14.0/test_apps/sendwp.c:53:18:  [3] (buffer) getopt:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    while( (co = getopt(argc, argv, "c:h")) != EOF ){
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:39:8:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
extern char smpp34_strerror[2048];
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:63:25:  [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.
                dest += sprintf((char*)dest, "%*c%02X ", ind, ' ', (uint8_t)buffer[i]);
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:67:25:  [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.
                dest += sprintf((char*)dest, "%02X   ", (uint8_t)buffer[i]);
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:71:25:  [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.
                dest += sprintf((char*)dest, "%02X   ", (uint8_t)buffer[i]);
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:76:33:  [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.
                        dest += sprintf((char*)dest, "%c", buffer[j]);
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:84:25:  [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.
                dest += sprintf((char*)dest, "%02X ", (uint8_t)buffer[i]);
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:92:21:  [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.
            dest += sprintf((char*)dest, "   ");
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:94:25:  [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.
                dest += sprintf((char*)dest, "  ");
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:96:17:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
        dest += sprintf((char*)dest, "  ");
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:102:25:  [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.
                dest += sprintf((char*)dest, "%c", (char) buffer[j]);
data/libsmpp34-1.14.0/src/smpp34_dumpPdu.c:38:8:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
extern char smpp34_strerror[2048];
data/libsmpp34-1.14.0/src/smpp34_dumpPdu.c:46: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 dummy_b[SMALL_BUFF];
data/libsmpp34-1.14.0/src/smpp34_dumpPdu.c:169: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(&l_lenval, ((inst par) - sizeof(uint16_t)), sizeof(uint16_t));\
data/libsmpp34-1.14.0/src/smpp34_dumpPdu.c:239: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(&cmdid, tt+4, sizeof(uint32_t));
data/libsmpp34-1.14.0/src/smpp34_pack.c:38:8:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
extern char smpp34_strerror[2048];
data/libsmpp34-1.14.0/src/smpp34_pack.c:46: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 dummy_b[SMALL_BUFF];
data/libsmpp34-1.14.0/src/smpp34_pack.c: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(aux, &v32, lenval);\
data/libsmpp34-1.14.0/src/smpp34_pack.c:93: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(aux, &v16, lenval);\
data/libsmpp34-1.14.0/src/smpp34_pack.c:110: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(aux,&inst par, sizeof(inst par));\
data/libsmpp34-1.14.0/src/smpp34_pack.c:130: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(aux, &inst par, sizeval);\
data/libsmpp34-1.14.0/src/smpp34_pack.c:136: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(aux, &inst par, lenval);\
data/libsmpp34-1.14.0/src/smpp34_pack.c:153: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(aux, &inst par, (lenval > sizeval)?sizeval:lenval);\
data/libsmpp34-1.14.0/src/smpp34_pack.c:161: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(&l_lenval, ((inst par) - sizeof(uint16_t)), sizeof(uint16_t));\
data/libsmpp34-1.14.0/src/smpp34_pack.c:171: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(aux, &inst par, (l_lenval > sizeval)?sizeval:l_lenval);\
data/libsmpp34-1.14.0/src/smpp34_pack.c:217: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(aux2, &v, sizeof(uint32_t));     /* escribe largo en el dest   */
data/libsmpp34-1.14.0/src/smpp34_pack.c:229: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(&cmdid, tt+4, sizeof(uint32_t));
data/libsmpp34-1.14.0/src/smpp34_params.c:42: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(dummy, source, sizeof( udad_t ));
data/libsmpp34-1.14.0/src/smpp34_params.c:77: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(dummy, source, sizeof( dad_t ));
data/libsmpp34-1.14.0/src/smpp34_params.c:111: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(dummy, source, sizeof( tlv_t ));
data/libsmpp34-1.14.0/src/smpp34_params.c:213: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 numero[20];
data/libsmpp34-1.14.0/src/smpp34_structs.c:37:1:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
char smpp34_strerror[2048];
data/libsmpp34-1.14.0/src/smpp34_structs.h:37:8:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
extern char smpp34_strerror[2048];
data/libsmpp34-1.14.0/src/smpp34_unpack.c:39:8:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
extern char smpp34_strerror[2048];
data/libsmpp34-1.14.0/src/smpp34_unpack.c:47: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 dummy_b[SMALL_BUFF];
data/libsmpp34-1.14.0/src/smpp34_unpack.c: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(&inst par, aux, lenval);\
data/libsmpp34-1.14.0/src/smpp34_unpack.c:85: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(&inst par, aux, lenval);\
data/libsmpp34-1.14.0/src/smpp34_unpack.c:103: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(&inst par, aux, lenval);\
data/libsmpp34-1.14.0/src/smpp34_unpack.c:141: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(inst par, aux, lenval);\
data/libsmpp34-1.14.0/src/smpp34_unpack.c:158: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(&inst par, aux, (lenval>size)?size:lenval);\
data/libsmpp34-1.14.0/src/smpp34_unpack.c:165: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(&l_lenval, (inst par - sizeof(uint16_t)), sizeof(uint16_t));\
data/libsmpp34-1.14.0/src/smpp34_unpack.c:176: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(&(inst par), aux, (l_lenval>size)?size:l_lenval);\
data/libsmpp34-1.14.0/src/smpp34_unpack.c:232: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(&len_orig, tt, sizeof(uint32_t));
data/libsmpp34-1.14.0/src/smpp34_unpack.c:248: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(&tempo, ptrBuf + 4, sizeof(uint32_t)); /* get command_id PDU */
data/libsmpp34-1.14.0/test_apps/analizer.c:37:1:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
char file_pdu[256];
data/libsmpp34-1.14.0/test_apps/analizer.c:115:15:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
    if( (fd = fopen(file_pdu, "r")) == NULL ){
data/libsmpp34-1.14.0/test_apps/analizer.c:127: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(&tt, (bufPDU+4), 4); id = ntohl( tt );
data/libsmpp34-1.14.0/test_apps/esme.c:34:1:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
char file_config[256];
data/libsmpp34-1.14.0/test_apps/sendwp.c:34:1:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
char file_config[256];
data/libsmpp34-1.14.0/test_apps/smpp.c:43:8:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
extern char smpp34_strerror[2048];
data/libsmpp34-1.14.0/test_apps/smpp.c:138: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 message[256];
data/libsmpp34-1.14.0/test_apps/smpp.c:176: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(b.short_message, TEXTO, b.sm_length);
data/libsmpp34-1.14.0/test_apps/smpp.c:180: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(tlv.value.octet, message, tlv.length);
data/libsmpp34-1.14.0/test_apps/smpp.c:210: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 message[512];
data/libsmpp34-1.14.0/test_apps/smpp_smsc.c:153: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 buf[SMALL_BUFF];
data/libsmpp34-1.14.0/test_apps/smpp_smsc.c:461:4:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
			memcpy(cur, lenptr, sizeof(uint32_t));
data/libsmpp34-1.14.0/test_apps/smpp_smsc.c:538:2:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
	memcpy(&esme->sa, s, esme->sa_len);
data/libsmpp34-1.14.0/test_apps/smpp_smsc.h:36: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 system_id[16+1];
data/libsmpp34-1.14.0/test_apps/smpp_smsc.h:44: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 system_id[16+1];
data/libsmpp34-1.14.0/test_apps/smsc_main.c:39:2:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
	strcpy(smsc->system_id, "OpenBSC");
data/libsmpp34-1.14.0/test_apps/tcp.c:51: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 h[256], local_src[256];
data/libsmpp34-1.14.0/test_apps/tcp.c: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 ahost[1024];
data/libsmpp34-1.14.0/test_apps/tcp.c:93: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(&addr.s_addr, _host.h_addr_list[0], sizeof(struct in_addr));
data/libsmpp34-1.14.0/test_pdu/core.c:37:8:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
extern char smpp34_strerror[2048];
data/libsmpp34-1.14.0/test_pdu/data_sm_test.c: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(tlv.value.octet, TEXTO, tlv.length);
data/libsmpp34-1.14.0/test_pdu/deliver_sm_test.c:74: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(b.short_message, TEXTO, b.sm_length);
data/libsmpp34-1.14.0/test_pdu/deliver_sm_test.c:83: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(tlv.value.octet, TEXTO, tlv.length);
data/libsmpp34-1.14.0/test_pdu/deliver_sm_test.c: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(tlv.value.octet, TEXTO, tlv.length);
data/libsmpp34-1.14.0/test_pdu/replace_sm_test.c:64: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(b.short_message, TEXTO, b.sm_length);
data/libsmpp34-1.14.0/test_pdu/submit_multi_test.c: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(b.short_message, TEXTO, b.sm_length);
data/libsmpp34-1.14.0/test_pdu/submit_multi_test.c:104: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(tlv.value.octet, TEXTO, tlv.length);
data/libsmpp34-1.14.0/test_pdu/submit_sm_test.c: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(b.short_message, TEXTO, b.sm_length);
data/libsmpp34-1.14.0/test_pdu/submit_sm_test.c:84: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(tlv.value.octet, TEXTO, tlv.length);
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:74:33:  [1] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source is a constant character.
                        dest += sprintf((char*)dest, ".");
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:78:33:  [1] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source is a constant character.
                        dest += sprintf((char*)dest, " ");
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:80:25:  [1] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source is a constant character.
                dest += sprintf((char*)dest, "\n");
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:100:25:  [1] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source is a constant character.
                dest += sprintf((char*)dest, ".");
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:104:25:  [1] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source is a constant character.
                dest += sprintf((char*)dest, " ");
data/libsmpp34-1.14.0/src/smpp34_dumpBuf.c:106:17:  [1] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source is a constant character.
        dest += sprintf((char*)dest, "\n");
data/libsmpp34-1.14.0/src/smpp34_pack.c:123: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).
    lenval = strlen((char*)inst par) + 1;\
data/libsmpp34-1.14.0/src/smpp34_unpack.c:130: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).
    lenval = strlen( (char*) aux ) + 1;\
data/libsmpp34-1.14.0/test_apps/analizer.c:123:46:  [1] (buffer) getc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        *(bufPDU + (bufPDULen++)) = (uint8_t)getc( fd );
data/libsmpp34-1.14.0/test_apps/smpp.c:74:19:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  for (i = 0; i < strlen(hex); i++) {
data/libsmpp34-1.14.0/test_apps/smpp.c:81:19:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  for (i = 0; i < strlen(hex); i++) {
data/libsmpp34-1.14.0/test_apps/smpp.c:175:29:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    b.sm_length           = strlen(TEXTO);
data/libsmpp34-1.14.0/test_apps/smpp.c:179: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).
    tlv.length = strlen(message);
data/libsmpp34-1.14.0/test_apps/smpp_smsc.c:447:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		rc = read(ofd->fd, lenptr + esme->read_idx, rdlen);
data/libsmpp34-1.14.0/test_apps/smpp_smsc.c:469:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		rc = read(ofd->fd, msg->tail, OSMO_MIN(rdlen, msgb_tailroom(msg)));
data/libsmpp34-1.14.0/test_apps/tcp.c:71:9:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    if (strlen(local_src) != 0) {
data/libsmpp34-1.14.0/test_pdu/data_sm_test.c:74: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).
    tlv.length = strlen(TEXTO);
data/libsmpp34-1.14.0/test_pdu/deliver_sm_test.c:73:29:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    b.sm_length           = strlen(TEXTO);
data/libsmpp34-1.14.0/test_pdu/deliver_sm_test.c:82: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).
    tlv.length = strlen(TEXTO);
data/libsmpp34-1.14.0/test_pdu/deliver_sm_test.c:88: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).
    tlv.length = strlen(TEXTO);
data/libsmpp34-1.14.0/test_pdu/replace_sm_test.c:63:29:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    b.sm_length           = strlen(TEXTO);
data/libsmpp34-1.14.0/test_pdu/submit_multi_test.c:94:29:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    b.sm_length           = strlen(TEXTO);
data/libsmpp34-1.14.0/test_pdu/submit_multi_test.c:103: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).
    tlv.length = strlen(TEXTO);
data/libsmpp34-1.14.0/test_pdu/submit_sm_test.c:74:29:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    b.sm_length           = strlen(TEXTO);
data/libsmpp34-1.14.0/test_pdu/submit_sm_test.c:83: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).
    tlv.length = strlen(TEXTO);

ANALYSIS SUMMARY:

Hits = 102
Lines analyzed = 5355 in approximately 0.19 seconds (28560 lines/second)
Physical Source Lines of Code (SLOC) = 3375
Hits@level = [0] 174 [1]  25 [2]  72 [3]   3 [4]   2 [5]   0
Hits@level+ = [0+] 276 [1+] 102 [2+]  77 [3+]   5 [4+]   2 [5+]   0
Hits/KSLOC@level+ = [0+] 81.7778 [1+] 30.2222 [2+] 22.8148 [3+] 1.48148 [4+] 0.592593 [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.