Changeset 592
- Timestamp:
- Oct 31, 2026, 7:16:07 PM (18 hours ago)
- Location:
- trunk
- Files:
-
- 27 edited
-
configure.ac (modified) (1 diff)
-
docs/Changelog (modified) (1 diff)
-
src/bignum.c (modified) (33 diffs)
-
src/dnmalloc.c (modified) (1 diff)
-
src/sh_checksum.c (modified) (3 diffs)
-
src/sh_error.c (modified) (2 diffs)
-
src/sh_filetype.c (modified) (1 diff)
-
src/sh_hash.c (modified) (2 diffs)
-
src/sh_log_check.c (modified) (1 diff)
-
src/sh_login_track.c (modified) (1 diff)
-
src/sh_mem.c (modified) (5 diffs)
-
src/sh_port2proc.c (modified) (1 diff)
-
src/sh_portcheck.c (modified) (6 diffs)
-
src/sh_processcheck.c (modified) (3 diffs)
-
src/sh_sig.c (modified) (5 diffs)
-
src/sh_socket.c (modified) (2 diffs)
-
src/sh_static.c (modified) (1 diff)
-
src/sh_string.c (modified) (5 diffs)
-
src/sh_suidchk.c (modified) (2 diffs)
-
src/sh_xfer_client.c (modified) (1 diff)
-
src/slib.c (modified) (3 diffs)
-
src/trustfile.c (modified) (4 diffs)
-
src/yulectl.c (modified) (1 diff)
-
test/testrun_1.sh (modified) (1 diff)
-
test/testrun_1a.sh (modified) (1 diff)
-
test/testrun_1b.sh (modified) (1 diff)
-
test/testrun_1i.sh (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/configure.ac
r590 r592 4 4 dnl AU_ALIAS([_AC_INIT_help], [SH_INIT_HELP]) 5 5 6 AC_INIT([samhain],[4.5. 3])6 AC_INIT([samhain],[4.5.4]) 7 7 AC_CONFIG_SRCDIR(src/samhain.c) 8 8 -
trunk/docs/Changelog
r590 r592 1 4.5.3: 1 4.5.4 (31-10-2026): 2 * fix a slew of compiler warnings with gcc 15.2.0 3 * fix some cppcheck warnings (mostly false positives) 4 * modify test script for the case that the utmp file doesn't exist 5 6 4.5.3 (31-10-2025): 2 7 * fix inadvertent inclusion of scripts/logrotate and init/samhain.startSystemd 3 8 (reported by kjd) -
trunk/src/bignum.c
r570 r592 649 649 650 650 bigerr_t 651 big_create(a) 652 bignum *a; 651 big_create(bignum * a) 653 652 { 654 653 /* Make sure that big_create alway returns a NULL bignum … … 681 680 682 681 void 683 big_destroy(a) 684 bignum *a; 682 big_destroy(bignum *a) 685 683 { 686 684 /* Mar 4, 2000 R. Wichmann: check for a == NULL */ … … 691 689 692 690 ulong 693 big_bitcount(a) 694 bignum *a; 691 big_bitcount(bignum *a) 695 692 { 696 693 int bits = 0; … … 711 708 712 709 bigerr_t 713 big_set_big(a, b) 714 bignum *a; 715 bignum *b; 710 big_set_big(bignum *a, bignum *b) 716 711 { 717 712 if ((big_errno != BIG_OK) || (a == b)) … … 731 726 732 727 void 733 big_set_ulong(n, a) 734 ulong n; 735 bignum *a; 728 big_set_ulong(ulong n, bignum *a) 736 729 { 737 730 unsigned int i; … … 766 759 767 760 void 768 big_set_long(n, a) 769 long n; 770 bignum *a; 761 big_set_long(long n, bignum *a) 771 762 { 772 763 ulong m; … … 782 773 783 774 bigerr_t 784 big_set_string(numstr, base, a) 785 char *numstr; 786 int base; 787 bignum *a; 775 big_set_string(char * numstr, int base, bignum *a) 788 776 { 789 777 char *src, *maxdigit, *chrptr; … … 870 858 871 859 int 872 big_ulong(a, n) 873 bignum *a; 874 ulong *n; 860 big_ulong(bignum *a, ulong *n) 875 861 { 876 862 ulong old_n; … … 900 886 901 887 int 902 big_long(a, n) 903 bignum *a; 904 long *n; 888 big_long(bignum *a, long *n) 905 889 { 906 890 long old_n; … … 931 915 932 916 char * 933 big_string(a, base) 934 bignum *a; 935 int base; 917 big_string(bignum *a, int base) 936 918 { 937 919 ulong bit_length, str_length; … … 993 975 994 976 bigerr_t 995 big_negate(a, b) 996 bignum *a; 997 bignum *b; 977 big_negate(bignum *a, bignum *b) 998 978 { 999 979 big_set_big(a, b); … … 1003 983 1004 984 int 1005 big_sign(a) 1006 bignum *a; 985 big_sign(bignum *a) 1007 986 { 1008 987 return a->sign; … … 1010 989 1011 990 bigerr_t 1012 big_abs(a, b) 1013 bignum *a; 1014 bignum *b; 991 big_abs(bignum *a, bignum *b) 1015 992 { 1016 993 big_set_big(a, b); … … 1023 1000 1024 1001 int 1025 big_compare(a, b) 1026 bignum *a; 1027 bignum *b; 1002 big_compare(bignum *a, bignum *b) 1028 1003 { 1029 1004 if (a->sign == b->sign) … … 1042 1017 1043 1018 int 1044 big_lessp(a, b) 1045 bignum *a; 1046 bignum *b; 1019 big_lessp(bignum *a, bignum *b) 1047 1020 { 1048 1021 return big_compare(a, b) < 0; … … 1050 1023 1051 1024 int 1052 big_leqp(a, b) 1053 bignum *a; 1054 bignum *b; 1025 big_leqp(bignum *a, bignum *b) 1055 1026 { 1056 1027 return !(big_compare(a, b) > 0); … … 1058 1029 1059 1030 int 1060 big_equalp(a, b) 1061 bignum *a; 1062 bignum *b; 1031 big_equalp(bignum *a, bignum *b) 1063 1032 { 1064 1033 return big_compare(a, b) == 0; … … 1066 1035 1067 1036 int 1068 big_geqp(a, b) 1069 bignum *a; 1070 bignum *b; 1037 big_geqp(bignum *a, bignum *b) 1071 1038 { 1072 1039 return !(big_compare(a, b) < 0); … … 1074 1041 1075 1042 int 1076 big_greaterp(a, b) 1077 bignum *a; 1078 bignum *b; 1043 big_greaterp(bignum *a, bignum *b) 1079 1044 { 1080 1045 return big_compare(a, b) > 0; … … 1082 1047 1083 1048 int 1084 big_zerop(a) 1085 bignum *a; 1049 big_zerop(bignum *a) 1086 1050 { 1087 1051 return a->sign == BIG_SIGN_0; … … 1089 1053 1090 1054 int 1091 big_evenp(a) 1092 bignum *a; 1055 big_evenp(bignum *a) 1093 1056 { 1094 1057 return ((*a->dp & 0x01) == 0); … … 1096 1059 1097 1060 int 1098 big_oddp(a) 1099 bignum *a; 1061 big_oddp(bignum *a) 1100 1062 { 1101 1063 return ((*a->dp & 0x01) == 1); … … 1103 1065 1104 1066 bigerr_t 1105 big_add(a, b, c) 1106 bignum *a; 1107 bignum *b; 1108 bignum *c; 1067 big_add(bignum *a, bignum *b, bignum *c) 1109 1068 { 1110 1069 int cmp; … … 1160 1119 1161 1120 bigerr_t 1162 big_sub(a, b, c) 1163 bignum *a; 1164 bignum *b; 1165 bignum *c; 1121 big_sub(bignum *a, bignum *b, bignum *c) 1166 1122 { 1167 1123 int cmp; … … 1225 1181 1226 1182 bigerr_t 1227 big_mul(a, b, c) 1228 bignum *a; 1229 bignum *b; 1230 bignum *c; 1183 big_mul(bignum *a, bignum *b, bignum *c) 1231 1184 { 1232 1185 DIGIT *dp_x, *dp_xstart, *dp_xend; … … 1350 1303 1351 1304 bigerr_t 1352 big_trunc(a, b, q, r) 1353 bignum *a; 1354 bignum *b; 1355 bignum *q; 1356 bignum *r; 1305 big_trunc(bignum *a, bignum *b, bignum *q, bignum *r) 1357 1306 { 1358 1307 DIGIT *v_end, *q_end, *r_end, *src, *dst; … … 1598 1547 1599 1548 bigerr_t 1600 big_floor(a, b, q, r) 1601 bignum *a; 1602 bignum *b; 1603 bignum *q; 1604 bignum *r; 1549 big_floor(bignum *a, bignum *b, bignum *q, bignum *r) 1605 1550 { 1606 1551 int b_eq_qr, sign_eq; … … 1633 1578 1634 1579 bigerr_t 1635 big_ceil(a, b, q, r) 1636 bignum *a; 1637 bignum *b; 1638 bignum *q; 1639 bignum *r; 1580 big_ceil(bignum *a, bignum *b, bignum *q, bignum *r) 1640 1581 { 1641 1582 int b_eq_qr, sign_diff; … … 1671 1612 */ 1672 1613 bigerr_t 1673 big_round(a, b, q, r) 1674 bignum *a; 1675 bignum *b; 1676 bignum *q; 1677 bignum *r; 1614 big_round(bignum *a, bignum *b, bignum *q, bignum *r) 1678 1615 { 1679 1616 int b_eq_qr, b_neg_p, a_sgn_neq_b_sgn; … … 1740 1677 1741 1678 bigerr_t 1742 big_random(a, b) 1743 bignum *a; 1744 bignum *b; 1679 big_random(bignum *a, bignum *b) 1745 1680 { 1746 1681 unsigned long i; … … 1791 1726 1792 1727 int 1793 big_expt(a, z, x) 1794 bignum *a; 1795 unsigned long z; 1796 bignum *x; 1728 big_expt(bignum *a, unsigned long z, bignum *x) 1797 1729 { 1798 1730 bignum b; … … 1821 1753 1822 1754 int 1823 big_exptmod(a_in, z_in, n, x) 1824 bignum *a_in; 1825 bignum *z_in; 1826 bignum *n; 1827 bignum *x; 1755 big_exptmod(bignum *a_in, bignum *z_in, bignum *n, bignum *x) 1828 1756 { 1829 1757 bignum a, z, b0, b1, b2, dummy; … … 1870 1798 1871 1799 int 1872 big_gcd(a, b, g) 1873 bignum *a; 1874 bignum *b; 1875 bignum *g; 1800 big_gcd(bignum *a, bignum *b, bignum *g) 1876 1801 { 1877 1802 bignum a1, b1, tmp; -
trunk/src/dnmalloc.c
r569 r592 822 822 * it may actually raise an error. 823 823 */ 824 /* cppcheck-suppress syntaxError */ 824 825 #if defined(HAVE_MALLOC_H) && !defined(__OpenBSD__) && !defined(__FreeBSD__) && !defined(__NetBSD__) && defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 33) 825 826 #include <malloc.h> -
trunk/src/sh_checksum.c
r575 r592 525 525 *buffer = (char)0; 526 526 527 /* cppcheck-suppress uninitvar */ 527 528 return hexdigest; 528 529 } … … 531 532 { 532 533 char keybuf[KEYBUF_SIZE]; 533 c har * s = strstr(str, before);534 const char * s = strstr(str, before); 534 535 535 536 if (s) 536 537 { 537 538 char * p; 539 const char * p1; 538 540 539 541 s += strlen(before); … … 555 557 strcpy(r, hexbuf); /* flawfinder: ignore */ 556 558 r += strlen(hexbuf); 557 p = strchr(s, after);558 strcpy(r, p ); /* flawfinder: ignore */559 p1 = strchr(s, after); 560 strcpy(r, p1); /* flawfinder: ignore */ 559 561 560 562 return ret; -
trunk/src/sh_error.c
r541 r592 1744 1744 { 1745 1745 /* use VA_COPY */ 1746 /* cppcheck-suppress va_list_usedBeforeStarted */ 1747 /* cppcheck-suppress syntaxError */ 1746 1748 /*@i@*/VA_COPY(vl2, vl); 1747 1749 len = sl_strlen(lmsg->msg); … … 1759 1761 lmsg->msg = p; 1760 1762 lmsg->msg_len = required + len + 4; 1761 (void) sl_vsnprintf(&(lmsg->msg[len]), 1762 (required + 1), lmsg->format, vl2); 1763 /* cppcheck-suppress uninitvar */ 1764 /* cppcheck-suppress va_list_usedBeforeStarted */ 1765 (void) sl_vsnprintf(&(lmsg->msg[len]), (required + 1), lmsg->format, vl2); 1763 1766 } 1767 /* cppcheck-suppress va_list_usedBeforeStarted */ 1764 1768 va_end(vl2); 1765 1769 } -
trunk/src/sh_filetype.c
r539 r592 486 486 } 487 487 } 488 sh_ftype_arr[nn] = NULL; 489 sh_ftype_nn = nn; 488 if (sh_ftype_arr) { 489 sh_ftype_arr[nn] = NULL; 490 sh_ftype_nn = nn; 491 } 490 492 491 493 return; -
trunk/src/sh_hash.c
r590 r592 3018 3018 { 3019 3019 char * r = result; 3020 3021 *r = '\0'; /* return empty string if !s */ 3022 3020 3023 if (s) 3021 3024 { … … 3026 3029 *r = '\0'; 3027 3030 } 3031 /* cppcheck-suppress uninitvar */ 3028 3032 return result; 3029 3033 } -
trunk/src/sh_log_check.c
r588 r592 423 423 if (S_ISREG(buf.st_mode) 424 424 #ifdef S_ISLNK 425 /* cppcheck-suppress syntaxError */ 425 426 || S_ISLNK(buf.st_mode) 426 427 #endif -
trunk/src/sh_login_track.c
r583 r592 168 168 static int get_bool(char *bitarray, unsigned int index) 169 169 { 170 int bool;170 int my_bool; 171 171 172 172 bitarray += index / 8; /* skip to char */ 173 bool = (*bitarray & (1 << (index % 8)));174 175 return bool;176 } 177 178 static void set_bool(char *bitarray, unsigned int index, int bool)173 my_bool = (*bitarray & (1 << (index % 8))); 174 175 return my_bool; 176 } 177 178 static void set_bool(char *bitarray, unsigned int index, int my_bool) 179 179 { 180 180 bitarray += index / 8; /* skip to char */ 181 if ( bool)181 if (my_bool) 182 182 *bitarray |= 1 << (index % 8); 183 183 else -
trunk/src/sh_mem.c
r587 r592 150 150 { 151 151 memlist_t * merr = calloc(1,sizeof(memlist_t)); 152 153 memcpy(merr, this, sizeof(memlist_t));154 merr->next = merrlist;155 merrlist = merr;156 152 if (merr) { 153 memcpy(merr, this, sizeof(memlist_t)); 154 merr->next = merrlist; 155 merrlist = merr; 156 } 157 157 this = this->next; 158 158 } … … 198 198 { 199 199 merr = calloc (1,sizeof(memlist_t)); 200 201 memcpy(merr, this, sizeof(memlist_t));202 merr->size = 2;203 204 merr->next = merrlist;205 merrlist = merr;200 if (merr) { 201 memcpy(merr, this, sizeof(memlist_t)); 202 merr->size = 2; 203 merr->next = merrlist; 204 merrlist = merr; 205 } 206 206 } 207 207 else … … 210 210 { 211 211 merr = calloc(1, sizeof(memlist_t)); 212 213 memcpy(merr, this, sizeof(memlist_t));214 merr->size = 1;215 216 merr->next = merrlist;217 merrlist = merr;212 if (merr) { 213 memcpy(merr, this, sizeof(memlist_t)); 214 merr->size = 1; 215 merr->next = merrlist; 216 merrlist = merr; 217 } 218 218 } 219 219 if ( this->real_address[SH_MEMMULT-1] != CHECKBYTE ) 220 220 { 221 221 merr = calloc(1, sizeof(memlist_t)); 222 223 memcpy(merr, this, sizeof(memlist_t));224 merr->size = 0;225 226 merr->next = merrlist;227 merrlist = merr;222 if (merr) { 223 memcpy(merr, this, sizeof(memlist_t)); 224 merr->size = 0; 225 merr->next = merrlist; 226 merrlist = merr; 227 } 228 228 } 229 229 } … … 378 378 { 379 379 merr = calloc(1, sizeof(memlist_t)); 380 381 memcpy(merr, this, sizeof(memlist_t));382 merr->size = 1;383 384 merr->next = merrlist;385 merrlist = merr;380 if (merr) { 381 memcpy(merr, this, sizeof(memlist_t)); 382 merr->size = 1; 383 merr->next = merrlist; 384 merrlist = merr; 385 } 386 386 } 387 387 … … 389 389 { 390 390 merr = calloc(1,sizeof(memlist_t)); 391 392 memcpy(merr, this, sizeof(memlist_t));393 merr->size = 0;394 395 merr->next = merrlist;396 merrlist = merr;391 if (merr) { 392 memcpy(merr, this, sizeof(memlist_t)); 393 merr->size = 0; 394 merr->next = merrlist; 395 merrlist = merr; 396 } 397 397 } 398 398 -
trunk/src/sh_port2proc.c
r541 r592 91 91 sl_snprintf (path, sizeof(path), "/proc/%ld/exe", (unsigned long) add->pid); 92 92 93 /* cppcheck-suppress syntaxError */ 93 94 if (0 == retry_lstat(FIL__, __LINE__, path, &sbuf) && S_ISLNK(sbuf.st_mode)) 94 95 { -
trunk/src/sh_portcheck.c
r590 r592 492 492 struct sh_portentry * new = SH_ALLOC (sizeof(struct sh_portentry)); 493 493 494 if (!new) return; 494 495 new->port = port; 495 496 sh_ipvx_ntoa(new->interface, SH_INTERFACE_SIZE, paddr); … … 1960 1961 { 1961 1962 struct added_dev * new = SH_ALLOC(sizeof(struct added_dev)); 1963 if (!new) return; 1962 1964 sl_strlcpy(new->dev, buf, 64); 1963 1965 new->next = dev_list; … … 2122 2124 2123 2125 black = SH_ALLOC (sizeof(struct sh_port)); 2126 if (!black) return -1; 2124 2127 black->paddr = SH_ALLOC (sizeof(struct sh_sockaddr)); 2125 2128 black->port = port; … … 2189 2192 2190 2193 transient = SH_ALLOC (sizeof(struct sh_port)); 2194 if (!transient) return -1; 2191 2195 transient->paddr = SH_ALLOC (sizeof(struct sh_sockaddr)); 2192 2196 transient->port = port; … … 2324 2328 if (strchr(str, ':')) 2325 2329 { 2326 c har *last = strrchr(str, ':');2330 const char *last = strrchr(str, ':'); 2327 2331 if (last != NULL) 2328 2332 { 2329 2333 size_t tolast = (last - str); 2330 2334 interface = SH_ALLOC(tolast+1); 2335 if (!interface) return -1; 2331 2336 sl_strlcpy(interface, str, tolast+1); 2332 2337 interface[tolast] = '\0'; … … 2341 2346 { 2342 2347 interface = SH_ALLOC(8); 2348 if (!interface) return -1; 2343 2349 sl_strlcpy(interface, _("0.0.0.0"), 8); 2344 2350 interface[7] = '\0'; -
trunk/src/sh_processcheck.c
r574 r592 210 210 sl_snprintf (path, sizeof(path), _("/proc/%ld/exe"), (unsigned long) pid); 211 211 212 /* cppcheck-suppress syntaxError */ 212 213 if (0 == retry_lstat(FIL__, __LINE__, path, &sbuf) && S_ISLNK(sbuf.st_mode)) 213 214 { … … 217 218 sl_snprintf (path, sizeof(path), _("/proc/%ld/file"), (unsigned long) pid); 218 219 220 /* cppcheck-suppress syntaxError */ 219 221 if (0 == retry_lstat(FIL__, __LINE__, path, &sbuf) && S_ISLNK(sbuf.st_mode)) 220 222 { … … 224 226 sl_snprintf (path, sizeof(path), _("/proc/%ld/path/a.out"), (unsigned long) pid); 225 227 228 /* cppcheck-suppress syntaxError */ 226 229 if (0 == retry_lstat(FIL__, __LINE__, path, &sbuf) && S_ISLNK(sbuf.st_mode)) 227 230 { -
trunk/src/sh_sig.c
r579 r592 645 645 int flag_sig = S_FALSE; 646 646 SL_TICKET fdTmp = (-1); 647 SL_TICKET open_tmp (void); 647 SL_TICKET open_tmp (void); 648 int close_tmp ( SL_TICKET); 648 649 649 650 /* extract the data and copy to temporary file … … 660 661 661 662 fin_cp = fdopen(dup(get_the_fd(fd)), "rb"); 663 if (!fin_cp) { close_tmp(fdTmp); return -1; } 662 664 buf = SH_ALLOC(fgets_buf_size); 663 665 664 666 while (NULL != fgets(buf, fgets_buf_size, fin_cp)) 665 667 { … … 720 722 fin_cp = fdopen(dup(get_the_fd(fdTmp)), "rb"); 721 723 FILE * fout = fopen("xxx.out", "w+"); 724 if (!fout) { close_tmp(fdTmp); return -1; } 725 if (!fin_cp) { close_tmp(fdTmp); fclose(fout); return -1; } 722 726 while (NULL != fgets(buf, fgets_buf_size, fin_cp)) 723 727 { … … 1598 1602 int flag_nohead = S_FALSE; 1599 1603 SL_TICKET fdTmp = (-1); 1600 SL_TICKET open_tmp (void); 1601 1604 SL_TICKET open_tmp (void); 1605 int close_tmp ( SL_TICKET); 1606 1602 1607 /* extract the data and copy to temporary file 1603 1608 */ … … 1613 1618 1614 1619 fin_cp = fdopen(dup(get_the_fd(fd)), "rb"); 1620 if (!fin_cp) { close_tmp(fdTmp); return -1; } 1615 1621 buf = SH_ALLOC(fgets_buf_size); 1616 1622 1617 1623 while (NULL != fgets(buf, fgets_buf_size, fin_cp)) 1618 1624 { -
trunk/src/sh_socket.c
r583 r592 89 89 int sh_socket_store_uuid(const char * cmd) 90 90 { 91 char * p = sh_util_strdup(cmd); 92 char * q = strchr(cmd, ':'); 91 const char * q = strchr(cmd, ':'); 93 92 char entry[SH_BUFSIZE]; 94 93 SH_DELTA_DB db; 95 94 96 if (!q) { SH_FREE(p);return -1; }95 if (!q) { return -1; } 97 96 98 97 ++q; 99 98 100 if (0 != sh_uuid_check(q)) { SH_FREE(p);return -1; }99 if (0 != sh_uuid_check(q)) { return -1; } 101 100 102 101 db.count = 0; 103 102 db.last_time = (time_t) 0; 104 103 sl_strlcpy(db.uuid, q, SH_UUID_BUF); 105 SH_FREE(p);106 104 107 105 if (NULL != unparse_entry(&db, entry, sizeof(entry))) … … 495 493 { 496 494 #ifdef S_ISSOCK 497 if (S_ISSOCK (sbuf.st_mode)) 495 /* cppcheck-suppress syntaxError */ 496 if (S_ISSOCK(sbuf.st_mode)) 498 497 { 499 498 retval = retry_aud_unlink (FIL__, __LINE__, sh_sockname); -
trunk/src/sh_static.c
r584 r592 1170 1170 1171 1171 while (dotted && *dotted) { 1172 c har *c = strchr(dotted, '.');1172 const char *c = strchr(dotted, '.'); 1173 1173 unsigned int l = c ? (unsigned int)(c - dotted) : strlen(dotted); 1174 1174 -
trunk/src/sh_string.c
r588 r592 697 697 698 698 void Test_string (CuTest *tc) { 699 int status , i, max = 120;699 int status = -1, i, max = 120; 700 700 FILE * fp; 701 701 sh_string * s = NULL; … … 721 721 722 722 fp = fdopen(status, "r+"); 723 CuAssertPtrNotNull(tc, fp); 724 725 for (i = 0; i < 80; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 0 */ 726 for (i = 0; i < 118; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 1 */ 727 for (i = 0; i < 119; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 2 */ 728 for (i = 0; i < 120; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 3 */ 729 for (i = 0; i < 121; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 4 */ 730 for (i = 0; i < 238; ++i) { fputc ('a', fp); } fputc ('\n', fp); 731 for (i = 0; i < 239; ++i) { fputc ('a', fp); } fputc ('\n', fp); 732 for (i = 0; i < 240; ++i) { fputc ('a', fp); } fputc ('\n', fp); 733 for (i = 0; i < 241; ++i) { fputc ('a', fp); } fputc ('\n', fp); 734 735 rewind(fp); 736 723 CuAssertPtrNotNull(tc, fp); /* cppcheck doesn't understand this */ 724 725 if (fp) { 726 for (i = 0; i < 80; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 0 */ 727 for (i = 0; i < 118; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 1 */ 728 for (i = 0; i < 119; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 2 */ 729 for (i = 0; i < 120; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 3 */ 730 for (i = 0; i < 121; ++i) { fputc ('a', fp); } fputc ('\n', fp); /* 4 */ 731 for (i = 0; i < 238; ++i) { fputc ('a', fp); } fputc ('\n', fp); 732 for (i = 0; i < 239; ++i) { fputc ('a', fp); } fputc ('\n', fp); 733 for (i = 0; i < 240; ++i) { fputc ('a', fp); } fputc ('\n', fp); 734 for (i = 0; i < 241; ++i) { fputc ('a', fp); } fputc ('\n', fp); 735 736 rewind(fp); 737 } 737 738 for (i = 0; i < 9; ++i) 738 739 { 739 status = sh_string_read(s, fp, max); 740 if (fp) 741 status = sh_string_read(s, fp, max); 740 742 741 743 switch (i) { … … 784 786 } 785 787 786 rewind(fp);788 if (fp) rewind(fp); 787 789 788 790 sh_string_truncate(s, 0); … … 791 793 for (i = 0; i < 9; ++i) 792 794 { 793 status = sh_string_read(s, fp, 240); 795 if (fp) 796 status = sh_string_read(s, fp, 240); 794 797 if (status == -2) 795 sh_string_read(s, fp, 240);798 { if (fp) sh_string_read(s, fp, 240); } 796 799 else 797 800 { … … 806 809 } 807 810 808 status = fclose(fp); 811 if (fp) 812 status = fclose(fp); 809 813 CuAssertTrue(tc, status == 0); 810 814 status = remove(template); -
trunk/src/sh_suidchk.c
r590 r592 256 256 return -1; 257 257 } 258 /* cppcheck-suppress syntaxError */ 258 259 if (/*@-usedef@*/!S_ISDIR(one.st_mode)/*@+usedef@*/) 259 260 … … 350 351 return -1; 351 352 } 353 /* cppcheck-suppress syntaxError */ 352 354 if (!S_ISREG(two.st_mode)) 353 355 { -
trunk/src/sh_xfer_client.c
r583 r592 1549 1549 #if !defined(SH_ENCRYPT) 1550 1550 if (4 == sl_strlen(errmsg)) { /* backward compatibility */ 1551 buffersize= sl_strlen(buffer);1552 buffer[buffer size] =theProto; /* nctl//DATA//theProto */1553 buffer[buffer size+1] = '\0';1551 size_t bufferlen = sl_strlen(buffer); 1552 buffer[bufferlen] = (char) theProto; /* nctl//DATA//theProto */ 1553 buffer[bufferlen+1] = '\0'; 1554 1554 } 1555 1555 sh_tools_hash_add(foo_M1, buffer, buffersize+1); -
trunk/src/slib.c
r583 r592 1178 1178 size_t needle_len; 1179 1179 size_t haystack_len; 1180 #else 1181 char * result; 1180 1182 #endif 1181 1183 1182 1184 if (haystack == NULL || needle == NULL) 1183 1185 return NULL; 1184 if (*needle == '\0' || *haystack == '\0') 1186 if (*needle == '\0') 1187 return (char *)(uintptr_t)haystack; 1188 if (*haystack == '\0') 1185 1189 return NULL; 1186 1190 1187 1191 #if defined(HAVE_STRSTR) 1188 return (strstr(haystack, needle)); 1192 result = (char *)(uintptr_t)strstr(haystack, needle); 1193 return result; 1189 1194 #else 1190 1195 needle_len = strlen(needle); 1191 1196 haystack_len = strlen(haystack); 1192 1197 1198 if (needle_len > haystack_len) 1199 return NULL; 1200 1193 1201 for (i = 0; i <= (haystack_len-needle_len); ++i) 1194 1202 if (0 == sl_strncmp(&haystack[i], needle, needle_len)) 1195 return ( needle);1203 return (&haystack[i]); 1196 1204 return NULL; 1197 1205 #endif … … 2107 2115 2108 2116 len = sl_strlen(filename)+1; 2109 2117 2110 2118 if ( (ofiles[fd]->path = calloc(1,len) ) == NULL) 2111 2119 { … … 2129 2137 } 2130 2138 2131 sl_strlcpy (ofiles[fd]->path, filename, len); 2139 /* allocated length of path is strlen(filename)+1 */ 2140 memcpy(ofiles[fd]->path, filename, len); 2141 2132 2142 ofiles[fd]->ticket = ticket; 2133 2143 ofiles[fd]->fd = fd; -
trunk/src/trustfile.c
r481 r592 437 437 #if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETGRGID_R) 438 438 buffer = calloc(1,SH_GRBUF_SIZE); 439 if (!buffer) 440 goto end_false; 439 441 status = sh_getgrgid_r(grp, &gr, buffer, SH_GRBUF_SIZE, &g); 440 442 #else … … 456 458 #if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETGRGID_R) 457 459 pbuffer = calloc(1,SH_PWBUF_SIZE); 460 if (!pbuffer) 461 goto end_false; 458 462 #endif 459 463 … … 550 554 #if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETGRGID_R) 551 555 buffer = calloc(1,SH_GRBUF_SIZE); 556 if (!buffer) { 557 retval = S_FALSE; 558 goto end_retval; 559 } 552 560 status = sh_getgrgid_r(grp, &gr, buffer, SH_GRBUF_SIZE, &g); 553 561 #else … … 581 589 #if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETPWNAM_R) 582 590 pbuffer = calloc(1,SH_PWBUF_SIZE); 591 if (!pbuffer) { 592 retval = S_FALSE; 593 goto end_retval; 594 } 583 595 #endif 584 596 -
trunk/src/yulectl.c
r562 r592 311 311 if (i == 0) 312 312 { 313 c har * p = strchr(str, ':'); ++p;313 const char * p = strchr(str, ':'); ++p; 314 314 if ( 0 == check_uuid(p) ) 315 315 return 0; -
trunk/test/testrun_1.sh
r481 r592 1100 1100 fi 1101 1101 # 1102 # wtmp may not be readable 1103 # 1104 tmp=`./samhain -j -L $LOGFILE | grep ERR | grep -v wtmp | wc -l`1102 # wtmp may not be readable -- and utmp may not exist anymore 1103 # 1104 tmp=`./samhain -j -L $LOGFILE | grep ERR | grep -v wtmp | grep -v utmp | wc -l` 1105 1105 if [ $tmp -ne 0 ]; then 1106 1106 [ -z "$verbose" ] || log_msg_fail "errors during check"; -
trunk/test/testrun_1a.sh
r481 r592 55 55 return 1 56 56 fi 57 "$CONVERT" - -help| grep ImageMagick >/dev/null 2>&157 "$CONVERT" -version | grep ImageMagick >/dev/null 2>&1 58 58 if [ $? -ne 0 ]; then 59 59 [ -z "$verbose" ] || log_msg_fail "Convert utility is not ImageMagick convert"; -
trunk/test/testrun_1b.sh
r562 r592 363 363 # 364 364 PRECONV=`find_path convert` 365 "${PRECONV}" - -help| grep ImageMagick >/dev/null 2>&1 && \365 "${PRECONV}" -version | grep ImageMagick >/dev/null 2>&1 && \ 366 366 CONVERT="${PRECONV}" 367 367 -
trunk/test/testrun_1i.sh
r561 r592 299 299 # 300 300 PRECONV=`find_path convert` 301 "${PRECONV}" - -help| grep ImageMagick >/dev/null 2>&1 && \301 "${PRECONV}" -version | grep ImageMagick >/dev/null 2>&1 && \ 302 302 CONVERT="${PRECONV}" 303 303
Note:
See TracChangeset
for help on using the changeset viewer.