Changeset 592


Ignore:
Timestamp:
Oct 31, 2026, 7:16:07 PM (18 hours ago)
Author:
katerina
Message:

Fixes for compiler warnings.

Location:
trunk
Files:
27 edited

Legend:

Unmodified
Added
Removed
  • trunk/configure.ac

    r590 r592  
    44dnl AU_ALIAS([_AC_INIT_help], [SH_INIT_HELP])
    55
    6 AC_INIT([samhain],[4.5.3])
     6AC_INIT([samhain],[4.5.4])
    77AC_CONFIG_SRCDIR(src/samhain.c)
    88
  • trunk/docs/Changelog

    r590 r592  
    1 4.5.3:
     14.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
     64.5.3 (31-10-2025):
    27        * fix inadvertent inclusion of scripts/logrotate and init/samhain.startSystemd
    38        (reported by kjd)
  • trunk/src/bignum.c

    r570 r592  
    649649
    650650bigerr_t
    651 big_create(a)
    652 bignum *a;
     651big_create(bignum * a)
    653652{
    654653  /* Make sure that big_create alway returns a NULL bignum
    … …  
    681680
    682681void
    683 big_destroy(a)
    684 bignum *a;
     682big_destroy(bignum *a)
    685683{
    686684  /* Mar 4, 2000 R. Wichmann: check for a == NULL */
    … …  
    691689
    692690ulong
    693 big_bitcount(a)
    694 bignum *a;
     691big_bitcount(bignum *a)
    695692{
    696693    int bits = 0;
    … …  
    711708
    712709bigerr_t
    713 big_set_big(a, b)
    714 bignum *a;
    715 bignum *b;
     710big_set_big(bignum *a, bignum *b)
    716711{
    717712    if ((big_errno != BIG_OK) || (a == b))
    … …  
    731726
    732727void
    733 big_set_ulong(n, a)
    734 ulong n;
    735 bignum *a;
     728big_set_ulong(ulong n, bignum *a)
    736729{
    737730    unsigned int i;
    … …  
    766759
    767760void
    768 big_set_long(n, a)
    769 long n;
    770 bignum *a;
     761big_set_long(long n, bignum *a)
    771762{
    772763    ulong m;
    … …  
    782773
    783774bigerr_t
    784 big_set_string(numstr, base, a)
    785 char *numstr;
    786 int base;
    787 bignum *a;
     775big_set_string(char * numstr, int base, bignum *a)
    788776{
    789777    char *src, *maxdigit, *chrptr;
    … …  
    870858
    871859int
    872 big_ulong(a, n)
    873 bignum *a;
    874 ulong *n;
     860big_ulong(bignum *a, ulong *n)
    875861{
    876862    ulong old_n;
    … …  
    900886
    901887int
    902 big_long(a, n)
    903 bignum *a;
    904 long *n;
     888big_long(bignum *a, long *n)
    905889{
    906890    long old_n;
    … …  
    931915
    932916char *
    933 big_string(a, base)
    934 bignum *a;
    935 int base;
     917big_string(bignum *a, int base)
    936918{
    937919    ulong bit_length, str_length;
    … …  
    993975
    994976bigerr_t
    995 big_negate(a, b)
    996 bignum *a;
    997 bignum *b;
     977big_negate(bignum *a, bignum *b)
    998978{
    999979    big_set_big(a, b);
    … …  
    1003983
    1004984int
    1005 big_sign(a)
    1006 bignum *a;
     985big_sign(bignum *a)
    1007986{
    1008987    return a->sign;
    … …  
    1010989
    1011990bigerr_t
    1012 big_abs(a, b)
    1013 bignum *a;
    1014 bignum *b;
     991big_abs(bignum *a, bignum *b)
    1015992{
    1016993    big_set_big(a, b);
    … …  
    10231000
    10241001int
    1025 big_compare(a, b)
    1026 bignum *a;
    1027 bignum *b;
     1002big_compare(bignum *a, bignum *b)
    10281003{
    10291004    if (a->sign == b->sign)
    … …  
    10421017
    10431018int
    1044 big_lessp(a, b)
    1045 bignum *a;
    1046 bignum *b;
     1019big_lessp(bignum *a, bignum *b)
    10471020{
    10481021    return big_compare(a, b) < 0;
    … …  
    10501023
    10511024int
    1052 big_leqp(a, b)
    1053 bignum *a;
    1054 bignum *b;
     1025big_leqp(bignum *a, bignum *b)
    10551026{
    10561027    return !(big_compare(a, b) > 0);
    … …  
    10581029
    10591030int
    1060 big_equalp(a, b)
    1061 bignum *a;
    1062 bignum *b;
     1031big_equalp(bignum *a, bignum *b)
    10631032{
    10641033    return big_compare(a, b) == 0;
    … …  
    10661035
    10671036int
    1068 big_geqp(a, b)
    1069 bignum *a;
    1070 bignum *b;
     1037big_geqp(bignum *a, bignum *b)
    10711038{
    10721039    return !(big_compare(a, b) < 0);
    … …  
    10741041
    10751042int
    1076 big_greaterp(a, b)
    1077 bignum *a;
    1078 bignum *b;
     1043big_greaterp(bignum *a, bignum *b)
    10791044{
    10801045    return big_compare(a, b) > 0;
    … …  
    10821047
    10831048int
    1084 big_zerop(a)
    1085 bignum *a;
     1049big_zerop(bignum *a)
    10861050{
    10871051    return a->sign == BIG_SIGN_0;
    … …  
    10891053
    10901054int
    1091 big_evenp(a)
    1092 bignum *a;
     1055big_evenp(bignum *a)
    10931056{
    10941057    return ((*a->dp & 0x01) == 0);
    … …  
    10961059
    10971060int
    1098 big_oddp(a)
    1099 bignum *a;
     1061big_oddp(bignum *a)
    11001062{
    11011063    return ((*a->dp & 0x01) == 1);
    … …  
    11031065
    11041066bigerr_t
    1105 big_add(a, b, c)
    1106 bignum *a;
    1107 bignum *b;
    1108 bignum *c;
     1067big_add(bignum *a, bignum *b, bignum *c)
    11091068{
    11101069    int cmp;
    … …  
    11601119
    11611120bigerr_t
    1162 big_sub(a, b, c)
    1163 bignum *a;
    1164 bignum *b;
    1165 bignum *c;
     1121big_sub(bignum *a, bignum *b, bignum *c)
    11661122{
    11671123    int cmp;
    … …  
    12251181
    12261182bigerr_t
    1227 big_mul(a, b, c)
    1228 bignum *a;
    1229 bignum *b;
    1230 bignum *c;
     1183big_mul(bignum *a, bignum *b, bignum *c)
    12311184{
    12321185    DIGIT *dp_x, *dp_xstart, *dp_xend;
    … …  
    13501303
    13511304bigerr_t
    1352 big_trunc(a, b, q, r)
    1353 bignum *a;
    1354 bignum *b;
    1355 bignum *q;
    1356 bignum *r;
     1305big_trunc(bignum *a, bignum *b, bignum *q, bignum *r)
    13571306{
    13581307    DIGIT *v_end, *q_end, *r_end, *src, *dst;
    … …  
    15981547
    15991548bigerr_t
    1600 big_floor(a, b, q, r)
    1601 bignum *a;
    1602 bignum *b;
    1603 bignum *q;
    1604 bignum *r;
     1549big_floor(bignum *a, bignum *b, bignum *q, bignum *r)
    16051550{
    16061551    int b_eq_qr, sign_eq;
    … …  
    16331578
    16341579bigerr_t
    1635 big_ceil(a, b, q, r)
    1636 bignum *a;
    1637 bignum *b;
    1638 bignum *q;
    1639 bignum *r;
     1580big_ceil(bignum *a, bignum *b, bignum *q, bignum *r)
    16401581{
    16411582    int b_eq_qr, sign_diff;
    … …  
    16711612 */
    16721613bigerr_t
    1673 big_round(a, b, q, r)
    1674 bignum *a;
    1675 bignum *b;
    1676 bignum *q;
    1677 bignum *r;
     1614big_round(bignum *a, bignum *b, bignum *q, bignum *r)
    16781615{
    16791616    int b_eq_qr, b_neg_p, a_sgn_neq_b_sgn;
    … …  
    17401677
    17411678bigerr_t
    1742 big_random(a, b)
    1743 bignum *a;
    1744 bignum *b;
     1679big_random(bignum *a, bignum *b)
    17451680{
    17461681    unsigned long i;
    … …  
    17911726
    17921727int
    1793 big_expt(a, z, x)
    1794 bignum *a;
    1795 unsigned long z;
    1796 bignum *x;
     1728big_expt(bignum *a, unsigned long z, bignum *x)
    17971729{
    17981730    bignum b;
    … …  
    18211753
    18221754int
    1823 big_exptmod(a_in, z_in, n, x)
    1824 bignum *a_in;
    1825 bignum *z_in;
    1826 bignum *n;
    1827 bignum *x;
     1755big_exptmod(bignum *a_in, bignum *z_in, bignum *n, bignum *x)
    18281756{
    18291757    bignum a, z, b0, b1, b2, dummy;
    … …  
    18701798
    18711799int
    1872 big_gcd(a, b, g)
    1873 bignum *a;
    1874 bignum *b;
    1875 bignum *g;
     1800big_gcd(bignum *a, bignum *b, bignum *g)
    18761801{
    18771802    bignum a1, b1, tmp;
  • trunk/src/dnmalloc.c

    r569 r592  
    822822 * it may actually raise an error.
    823823 */
     824/* cppcheck-suppress syntaxError */
    824825#if defined(HAVE_MALLOC_H) && !defined(__OpenBSD__) && !defined(__FreeBSD__) && !defined(__NetBSD__) && defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 33)
    825826#include <malloc.h>
  • trunk/src/sh_checksum.c

    r575 r592  
    525525  *buffer = (char)0;
    526526
     527  /* cppcheck-suppress uninitvar */
    527528  return hexdigest;
    528529}
    … …  
    531532{
    532533  char   keybuf[KEYBUF_SIZE];
    533   char * s   = strstr(str, before);
     534  const char * s   = strstr(str, before);
    534535
    535536  if (s)
    536537    {
    537538      char * p;
     539      const char * p1;
    538540
    539541      s += strlen(before);
    … …  
    555557          strcpy(r, hexbuf); /* flawfinder: ignore */
    556558          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 */
    559561
    560562          return ret;
  • trunk/src/sh_error.c

    r541 r592  
    17441744    {
    17451745      /* use VA_COPY */
     1746      /* cppcheck-suppress va_list_usedBeforeStarted */
     1747      /* cppcheck-suppress syntaxError */
    17461748      /*@i@*/VA_COPY(vl2, vl);
    17471749      len      = sl_strlen(lmsg->msg);
    … …  
    17591761          lmsg->msg = p;
    17601762          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);
    17631766        }
     1767      /* cppcheck-suppress va_list_usedBeforeStarted */
    17641768      va_end(vl2);
    17651769    }
  • trunk/src/sh_filetype.c

    r539 r592  
    486486        }
    487487    }
    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  }
    490492
    491493  return;
  • trunk/src/sh_hash.c

    r590 r592  
    30183018{
    30193019  char * r = result;
     3020 
     3021  *r = '\0'; /* return empty string if !s */
     3022 
    30203023  if (s)
    30213024    {
    … …  
    30263029      *r = '\0';
    30273030    }
     3031  /* cppcheck-suppress uninitvar */
    30283032  return result;
    30293033}
  • trunk/src/sh_log_check.c

    r588 r592  
    423423          if (S_ISREG(buf.st_mode)
    424424#ifdef S_ISLNK
     425              /* cppcheck-suppress syntaxError */
    425426              || S_ISLNK(buf.st_mode)
    426427#endif
  • trunk/src/sh_login_track.c

    r583 r592  
    168168static int get_bool(char *bitarray, unsigned int index)
    169169{
    170   int bool;
     170  int my_bool;
    171171
    172172  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
     178static void set_bool(char *bitarray, unsigned int index, int my_bool)
    179179{
    180180  bitarray += index / 8; /* skip to char */
    181   if (bool)
     181  if (my_bool)
    182182    *bitarray |= 1 << (index % 8);
    183183  else   
  • trunk/src/sh_mem.c

    r587 r592  
    150150    {
    151151      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        }
    157157      this = this->next;
    158158    }
    … …  
    198198        {
    199199          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          }
    206206        }
    207207      else
    … …  
    210210            {
    211211              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              }
    218218            }
    219219          if ( this->real_address[SH_MEMMULT-1] != CHECKBYTE )
    220220            {
    221221              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              }
    228228            }
    229229        }
    … …  
    378378        {
    379379          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          }
    386386        }
    387387
    … …  
    389389        {
    390390          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          }
    397397        }
    398398
  • trunk/src/sh_port2proc.c

    r541 r592  
    9191  sl_snprintf (path, sizeof(path), "/proc/%ld/exe", (unsigned long) add->pid);
    9292
     93  /* cppcheck-suppress syntaxError */
    9394  if (0 == retry_lstat(FIL__, __LINE__, path, &sbuf) && S_ISLNK(sbuf.st_mode))
    9495    {
  • trunk/src/sh_portcheck.c

    r590 r592  
    492492  struct sh_portentry * new = SH_ALLOC (sizeof(struct sh_portentry));
    493493
     494  if (!new) return;
    494495  new->port = port;
    495496  sh_ipvx_ntoa(new->interface, SH_INTERFACE_SIZE, paddr);
    … …  
    19601961{
    19611962  struct added_dev * new = SH_ALLOC(sizeof(struct added_dev));
     1963  if (!new) return;
    19621964  sl_strlcpy(new->dev, buf, 64);
    19631965  new->next = dev_list;
    … …  
    21222124
    21232125  black = SH_ALLOC (sizeof(struct sh_port));
     2126  if (!black) return -1;
    21242127  black->paddr = SH_ALLOC (sizeof(struct sh_sockaddr));
    21252128  black->port  = port;
    … …  
    21892192
    21902193  transient = SH_ALLOC (sizeof(struct sh_port));
     2194  if (!transient) return -1;
    21912195  transient->paddr = SH_ALLOC (sizeof(struct sh_sockaddr));
    21922196  transient->port  = port;
    … …  
    23242328  if (strchr(str, ':'))
    23252329    {
    2326       char *last = strrchr(str, ':');
     2330      const char *last = strrchr(str, ':');
    23272331      if (last != NULL)
    23282332        {
    23292333          size_t tolast = (last - str);
    23302334          interface = SH_ALLOC(tolast+1);
     2335          if (!interface) return -1;
    23312336          sl_strlcpy(interface, str, tolast+1);
    23322337          interface[tolast] = '\0';
    … …  
    23412346    {
    23422347      interface = SH_ALLOC(8);
     2348      if (!interface) return -1;
    23432349      sl_strlcpy(interface, _("0.0.0.0"), 8);
    23442350      interface[7] = '\0';
  • trunk/src/sh_processcheck.c

    r574 r592  
    210210  sl_snprintf (path, sizeof(path), _("/proc/%ld/exe"), (unsigned long) pid);
    211211
     212  /* cppcheck-suppress syntaxError */
    212213  if (0 == retry_lstat(FIL__, __LINE__, path, &sbuf) && S_ISLNK(sbuf.st_mode))
    213214    {
    … …  
    217218  sl_snprintf (path, sizeof(path), _("/proc/%ld/file"), (unsigned long) pid);
    218219
     220  /* cppcheck-suppress syntaxError */
    219221  if (0 == retry_lstat(FIL__, __LINE__, path, &sbuf) && S_ISLNK(sbuf.st_mode))
    220222    {
    … …  
    224226  sl_snprintf (path, sizeof(path), _("/proc/%ld/path/a.out"), (unsigned long) pid);
    225227
     228  /* cppcheck-suppress syntaxError */
    226229  if (0 == retry_lstat(FIL__, __LINE__, path, &sbuf) && S_ISLNK(sbuf.st_mode))
    227230    {
  • trunk/src/sh_sig.c

    r579 r592  
    645645  int    flag_sig  = S_FALSE;
    646646  SL_TICKET fdTmp  = (-1);
    647   SL_TICKET open_tmp (void);
     647  SL_TICKET open_tmp  (void);
     648  int       close_tmp ( SL_TICKET);
    648649
    649650  /* extract the data and copy to temporary file
    … …  
    660661
    661662  fin_cp = fdopen(dup(get_the_fd(fd)), "rb");
     663  if (!fin_cp) { close_tmp(fdTmp); return -1; }
    662664  buf = SH_ALLOC(fgets_buf_size);
    663 
     665 
    664666  while (NULL != fgets(buf, fgets_buf_size, fin_cp))
    665667    {
    … …  
    720722  fin_cp = fdopen(dup(get_the_fd(fdTmp)), "rb");
    721723  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; }
    722726  while (NULL != fgets(buf, fgets_buf_size, fin_cp))
    723727    {
    … …  
    15981602  int    flag_nohead = S_FALSE;
    15991603  SL_TICKET fdTmp = (-1);
    1600   SL_TICKET open_tmp (void);
    1601 
     1604  SL_TICKET open_tmp  (void);
     1605  int       close_tmp ( SL_TICKET);
     1606 
    16021607  /* extract the data and copy to temporary file
    16031608   */
    … …  
    16131618
    16141619  fin_cp = fdopen(dup(get_the_fd(fd)), "rb");
     1620  if (!fin_cp) { close_tmp(fdTmp); return -1; }
    16151621  buf = SH_ALLOC(fgets_buf_size);
    1616 
     1622 
    16171623  while (NULL != fgets(buf, fgets_buf_size, fin_cp))
    16181624    {
  • trunk/src/sh_socket.c

    r583 r592  
    8989int sh_socket_store_uuid(const char * cmd)
    9090{
    91   char * p = sh_util_strdup(cmd);
    92   char * q = strchr(cmd, ':');
     91  const char * q = strchr(cmd, ':');
    9392  char   entry[SH_BUFSIZE];
    9493  SH_DELTA_DB db;
    9594
    96   if (!q) { SH_FREE(p); return -1; }
     95  if (!q) { return -1; }
    9796
    9897  ++q;
    9998
    100   if (0 != sh_uuid_check(q)) { SH_FREE(p); return -1; }
     99  if (0 != sh_uuid_check(q)) { return -1; }
    101100
    102101  db.count = 0;
    103102  db.last_time = (time_t) 0;
    104103  sl_strlcpy(db.uuid, q, SH_UUID_BUF);
    105   SH_FREE(p);
    106104
    107105  if (NULL != unparse_entry(&db, entry, sizeof(entry)))
    … …  
    495493    {
    496494#ifdef S_ISSOCK
    497       if (S_ISSOCK (sbuf.st_mode))
     495      /* cppcheck-suppress syntaxError */
     496      if (S_ISSOCK(sbuf.st_mode))
    498497        {
    499498          retval = retry_aud_unlink (FIL__, __LINE__, sh_sockname);
  • trunk/src/sh_static.c

    r584 r592  
    11701170
    11711171        while (dotted && *dotted) {
    1172                 char *c = strchr(dotted, '.');
     1172                const char *c = strchr(dotted, '.');
    11731173                unsigned int l = c ? (unsigned int)(c - dotted) : strlen(dotted);
    11741174
  • trunk/src/sh_string.c

    r588 r592  
    697697
    698698void Test_string (CuTest *tc) {
    699   int status, i, max = 120;
     699  int status = -1, i, max = 120;
    700700  FILE * fp;
    701701  sh_string * s = NULL;
    … …  
    721721
    722722  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  }
    737738  for (i = 0; i < 9; ++i)
    738739    {
    739       status = sh_string_read(s, fp, max);
     740      if (fp)
     741        status = sh_string_read(s, fp, max);
    740742
    741743      switch (i) {
    … …  
    784786    }
    785787
    786   rewind(fp);
     788  if (fp) rewind(fp);
    787789
    788790  sh_string_truncate(s, 0);
    … …  
    791793  for (i = 0; i < 9; ++i)
    792794    {
    793       status = sh_string_read(s, fp, 240);
     795      if (fp)
     796        status = sh_string_read(s, fp, 240);
    794797      if (status == -2)
    795         sh_string_read(s, fp, 240);
     798        { if (fp) sh_string_read(s, fp, 240); }
    796799      else
    797800        {
    … …  
    806809    }
    807810
    808   status = fclose(fp);
     811  if (fp)
     812    status = fclose(fp);
    809813  CuAssertTrue(tc, status == 0);
    810814  status = remove(template);
  • trunk/src/sh_suidchk.c

    r590 r592  
    256256          return -1;
    257257        }
     258      /* cppcheck-suppress syntaxError */
    258259      if (/*@-usedef@*/!S_ISDIR(one.st_mode)/*@+usedef@*/)
    259260       
    … …  
    350351          return -1;
    351352        }
     353      /* cppcheck-suppress syntaxError */
    352354      if (!S_ISREG(two.st_mode))
    353355        {
  • trunk/src/sh_xfer_client.c

    r583 r592  
    15491549#if !defined(SH_ENCRYPT)
    15501550                  if (4 == sl_strlen(errmsg)) {  /* backward compatibility   */
    1551                     buffersize = sl_strlen(buffer);
    1552                     buffer[buffersize]   = theProto; /* nctl//DATA//theProto */
    1553                     buffer[buffersize+1] = '\0';
     1551                    size_t bufferlen = sl_strlen(buffer);
     1552                    buffer[bufferlen]   = (char) theProto; /* nctl//DATA//theProto */
     1553                    buffer[bufferlen+1] = '\0';
    15541554                  }
    15551555                  sh_tools_hash_add(foo_M1, buffer, buffersize+1);
  • trunk/src/slib.c

    r583 r592  
    11781178  size_t          needle_len;
    11791179  size_t          haystack_len;
     1180#else
     1181  char *          result;
    11801182#endif
    11811183 
    11821184  if (haystack == NULL || needle == NULL)
    11831185    return NULL;
    1184   if (*needle == '\0' || *haystack == '\0')
     1186  if (*needle == '\0')
     1187    return (char *)(uintptr_t)haystack;
     1188  if (*haystack == '\0')
    11851189    return NULL;
    11861190
    11871191#if defined(HAVE_STRSTR)
    1188   return (strstr(haystack, needle));
     1192  result = (char *)(uintptr_t)strstr(haystack, needle);
     1193  return result;
    11891194#else
    11901195  needle_len   = strlen(needle);
    11911196  haystack_len = strlen(haystack);
    11921197
     1198  if (needle_len > haystack_len)
     1199    return NULL;
     1200
    11931201  for (i = 0; i <= (haystack_len-needle_len); ++i)
    11941202    if (0 == sl_strncmp(&haystack[i], needle, needle_len))
    1195       return (needle);
     1203      return (&haystack[i]);
    11961204  return NULL;
    11971205#endif
    … …  
    21072115
    21082116  len = sl_strlen(filename)+1;
    2109 
     2117 
    21102118  if ( (ofiles[fd]->path = calloc(1,len) ) == NULL)
    21112119    {
    … …  
    21292137    }
    21302138
    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 
    21322142  ofiles[fd]->ticket  = ticket;
    21332143  ofiles[fd]->fd      = fd;
  • trunk/src/trustfile.c

    r481 r592  
    437437#if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETGRGID_R)
    438438  buffer = calloc(1,SH_GRBUF_SIZE);
     439  if (!buffer)
     440     goto end_false;
    439441  status = sh_getgrgid_r(grp, &gr, buffer, SH_GRBUF_SIZE, &g);
    440442#else
    … …  
    456458#if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETGRGID_R)
    457459  pbuffer = calloc(1,SH_PWBUF_SIZE);
     460  if (!pbuffer)
     461     goto end_false;
    458462#endif
    459463
    … …  
    550554#if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETGRGID_R)
    551555  buffer = calloc(1,SH_GRBUF_SIZE);
     556  if (!buffer) {
     557    retval = S_FALSE;
     558    goto end_retval;
     559  }
    552560  status = sh_getgrgid_r(grp, &gr, buffer, SH_GRBUF_SIZE, &g);
    553561#else
    … …  
    581589#if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETPWNAM_R)
    582590  pbuffer = calloc(1,SH_PWBUF_SIZE);
     591  if (!pbuffer) {
     592    retval = S_FALSE;
     593    goto end_retval;
     594  }
    583595#endif
    584596
  • trunk/src/yulectl.c

    r562 r592  
    311311          if (i == 0)
    312312            {
    313               char * p = strchr(str, ':'); ++p;
     313              const char * p = strchr(str, ':'); ++p;
    314314              if ( 0 == check_uuid(p) )
    315315                return 0;
  • trunk/test/testrun_1.sh

    r481 r592  
    11001100        fi
    11011101        #
    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`
    11051105        if [ $tmp -ne 0 ]; then
    11061106            [ -z "$verbose" ] || log_msg_fail "errors during check";
  • trunk/test/testrun_1a.sh

    r481 r592  
    5555        return 1
    5656    fi
    57     "$CONVERT" --help | grep  ImageMagick >/dev/null 2>&1
     57    "$CONVERT" -version | grep  ImageMagick >/dev/null 2>&1
    5858    if [ $? -ne 0 ]; then
    5959        [ -z "$verbose" ] || log_msg_fail "Convert utility is not ImageMagick convert";
  • trunk/test/testrun_1b.sh

    r562 r592  
    363363            #
    364364            PRECONV=`find_path convert`
    365             "${PRECONV}" --help | grep  ImageMagick >/dev/null 2>&1 && \
     365            "${PRECONV}" -version | grep  ImageMagick >/dev/null 2>&1 && \
    366366                CONVERT="${PRECONV}"
    367367
  • trunk/test/testrun_1i.sh

    r561 r592  
    299299            #
    300300            PRECONV=`find_path convert`
    301             "${PRECONV}" --help | grep  ImageMagick >/dev/null 2>&1 && \
     301            "${PRECONV}" -version | grep  ImageMagick >/dev/null 2>&1 && \
    302302                CONVERT="${PRECONV}"
    303303
Note: See TracChangeset for help on using the changeset viewer.