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/libnexstar-0.15/testcode/nexstarctl.c Examining data/libnexstar-0.15/testcode/nexstarctl2.c Examining data/libnexstar-0.15/testcode/celtest.c Examining data/libnexstar-0.15/src/deg2str.c Examining data/libnexstar-0.15/src/nexstar_pec.h Examining data/libnexstar-0.15/src/nex_open.h Examining data/libnexstar-0.15/src/deg2str.h Examining data/libnexstar-0.15/src/nexstar_pec.c Examining data/libnexstar-0.15/src/nexstar.h Examining data/libnexstar-0.15/src/nex_open.c Examining data/libnexstar-0.15/src/nexstar.c Examining data/libnexstar-0.15/examples/push_buttons.c Examining data/libnexstar-0.15/examples/get_rade1.c Examining data/libnexstar-0.15/examples/push_left.c Examining data/libnexstar-0.15/examples/get_rade2.c FINAL RESULTS: data/libnexstar-0.15/src/nex_open.c:25:4: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. n=sscanf(device,"tcp://%s",host); data/libnexstar-0.15/examples/get_rade2.c:41: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 ra_str[15]; data/libnexstar-0.15/examples/get_rade2.c:42: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 de_str[15]; data/libnexstar-0.15/src/deg2str.c:21: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 *buff,*b1,format[30]; data/libnexstar-0.15/src/deg2str.c:57:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char str[30]; data/libnexstar-0.15/src/deg2str.c:84:16: [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. if (sign < 0) sprintf(str,"-%d:%02d:%05.2f",deg,min,sec); data/libnexstar-0.15/src/deg2str.c:86:3: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str,"+%d:%02d:%05.2f",deg,min,sec); data/libnexstar-0.15/src/deg2str.c:87:8: [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. else sprintf(str,"%d:%02d:%05.2f",deg,min,sec); data/libnexstar-0.15/src/deg2str.c:90:16: [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. if (sign < 0) sprintf(str,"-%d:%02d:%04.1f",deg,min,sec); data/libnexstar-0.15/src/deg2str.c:92:3: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str,"+%d:%02d:%04.1f",deg,min,sec); data/libnexstar-0.15/src/deg2str.c:93:8: [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. else sprintf(str,"%d:%02d:%04.1f",deg,min,sec); data/libnexstar-0.15/src/deg2str.c:96:16: [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. if (sign < 0) sprintf(str,"-%d:%02d:%02d",deg,min,(int)sec); data/libnexstar-0.15/src/deg2str.c:98:3: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(str,"+%d:%02d:%02d",deg,min,(int)sec); data/libnexstar-0.15/src/deg2str.c:99:8: [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. else sprintf(str,"%d:%02d:%02d",deg,min,(int)sec); data/libnexstar-0.15/src/deg2str.c:141:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char str[30]; data/libnexstar-0.15/src/deg2str.c:166:2: [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(str,"%02d:%02d:%05.2f",hour,min,sec); data/libnexstar-0.15/src/deg2str.c:170:2: [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(str,"%02d:%02d:%04.1f",hour,min,sec); data/libnexstar-0.15/src/deg2str.c:173:2: [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(str,"%02d:%02d:%02d",hour,min,(int)sec); data/libnexstar-0.15/src/nex_open.c:32:11: [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). *port = atoi(strp); data/libnexstar-0.15/src/nex_open.c:42:16: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((dev_fd = open(dev_file, O_RDWR | O_NOCTTY | O_SYNC))==-1) { data/libnexstar-0.15/src/nexstar.c:30: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 host[255]; data/libnexstar-0.15/src/nexstar.c:97: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 reply[7]; data/libnexstar-0.15/src/nexstar.c:127: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 reply[18]; data/libnexstar-0.15/src/nexstar.c:146: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 reply[18]; data/libnexstar-0.15/src/nexstar.c:165: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 nex[30]; data/libnexstar-0.15/src/nexstar.c:189: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 nex[30]; data/libnexstar-0.15/src/nexstar.c:213: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 nex[18]; data/libnexstar-0.15/src/nexstar.c:242: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 reply[2]; data/libnexstar-0.15/src/nexstar.c:254: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 reply[2]; data/libnexstar-0.15/src/nexstar.c:268: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 reply[2]; data/libnexstar-0.15/src/nexstar.c:297: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[2]; data/libnexstar-0.15/src/nexstar.c:311: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 reply[2]; data/libnexstar-0.15/src/nexstar.c:323:2: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char reply[7]; data/libnexstar-0.15/src/nexstar.c:353: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 reply[2]; data/libnexstar-0.15/src/nexstar.c:380: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 cmd[2]; data/libnexstar-0.15/src/nexstar.c:500:11: [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 reply[9]; data/libnexstar-0.15/src/nexstar.c:525:11: [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 cmd[9]; data/libnexstar-0.15/src/nexstar.c:558: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 reply[9]; data/libnexstar-0.15/src/nexstar.c:589:11: [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 cmd[9]; data/libnexstar-0.15/src/nexstar.c:768: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 res[2]; data/libnexstar-0.15/src/nexstar.c:809: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 res[2]; data/libnexstar-0.15/src/nexstar.c:847: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 cmd[8]; data/libnexstar-0.15/src/nexstar.c:918:2: [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(nex, "%04X,%04X", nex1, nex2); data/libnexstar-0.15/src/nexstar.c:936:2: [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(nex, "%08X,%08X", nex1, nex2); data/libnexstar-0.15/src/nexstar_pec.c:12: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 res[2]; data/libnexstar-0.15/src/nexstar_pec.c:63: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 res[2]; data/libnexstar-0.15/src/nexstar_pec.c:96: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 res[2]; data/libnexstar-0.15/src/nexstar_pec.c:110: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 res[2]; data/libnexstar-0.15/src/nexstar_pec.c:139:2: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char res[2]; data/libnexstar-0.15/testcode/celtest.c:76:10: [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). int fd = open (portname, O_RDWR | O_NOCTTY | O_SYNC); data/libnexstar-0.15/testcode/celtest.c:87: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 buf [100]; data/libnexstar-0.15/testcode/nexstarctl.c:9: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 nex[100]; data/libnexstar-0.15/testcode/nexstarctl2.c:9: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 nex[100]; data/libnexstar-0.15/examples/get_rade2.c:45:2: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(ra_str, dh2a(ra/15), 15); data/libnexstar-0.15/examples/get_rade2.c:48:2: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(de_str, dd2a(de,1), 15); data/libnexstar-0.15/src/deg2str.c:25:4: [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=strlen(buff)-1; data/libnexstar-0.15/src/deg2str.c:113:4: [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=strlen(buff)-1; data/libnexstar-0.15/src/nexstar.c:72:32: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). while ((count < len) && ((res=read(devfd,&c,1)) != -1 )) { data/libnexstar-0.15/src/nexstar.c:87:7: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). res=read(devfd,&c,1); data/libnexstar-0.15/src/nexstar.c:665:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"NexStar GPS Series",len); data/libnexstar-0.15/src/nexstar.c:668:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"NexStar i-Series",len); data/libnexstar-0.15/src/nexstar.c:671:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"NexStar i-Series SE",len); data/libnexstar-0.15/src/nexstar.c:674:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"CGE",len); data/libnexstar-0.15/src/nexstar.c:677:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"Advanced GT",len); data/libnexstar-0.15/src/nexstar.c:680:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"SLT",len); data/libnexstar-0.15/src/nexstar.c:683:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"CPC",len); data/libnexstar-0.15/src/nexstar.c:686:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"GT",len); data/libnexstar-0.15/src/nexstar.c:689:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"NexStar 4/5 SE",len); data/libnexstar-0.15/src/nexstar.c:692:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"NexStar 6/8 SE",len); data/libnexstar-0.15/src/nexstar.c:695:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"CGEM",len); data/libnexstar-0.15/src/nexstar.c:698:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"Advanced VX",len); data/libnexstar-0.15/src/nexstar.c:701:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"Nexstar Evolution",len); data/libnexstar-0.15/src/nexstar.c:710:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"EQ6 Series",len); data/libnexstar-0.15/src/nexstar.c:713:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"HEQ5 Series",len); data/libnexstar-0.15/src/nexstar.c:716:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"EQ5 Series",len); data/libnexstar-0.15/src/nexstar.c:719:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"EQ3 Series",len); data/libnexstar-0.15/src/nexstar.c:722:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"EQ8 Series",len); data/libnexstar-0.15/src/nexstar.c:725:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"AZ-EQ6 Series",len); data/libnexstar-0.15/src/nexstar.c:728:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"AZ-EQ5 Series",len); data/libnexstar-0.15/src/nexstar.c:731:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name,"AllView Series",len); data/libnexstar-0.15/src/nexstar.c:735:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name, "AZ Series",len); data/libnexstar-0.15/src/nexstar.c:739:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). Risk is low because the source is a constant string. strncpy(name, "DOB series",len); data/libnexstar-0.15/testcode/celtest.c:89:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). int n = read (fd, buf, sizeof buf); // read up to 100 characters if ready to read ANALYSIS SUMMARY: Hits = 83 Lines analyzed = 2524 in approximately 0.13 seconds (19439 lines/second) Physical Source Lines of Code (SLOC) = 1552 Hits@level = [0] 52 [1] 30 [2] 52 [3] 0 [4] 1 [5] 0 Hits@level+ = [0+] 135 [1+] 83 [2+] 53 [3+] 1 [4+] 1 [5+] 0 Hits/KSLOC@level+ = [0+] 86.9845 [1+] 53.4794 [2+] 34.1495 [3+] 0.64433 [4+] 0.64433 [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.