Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #385890

Re: "stack smashing detected"

From Ben Bacarisse <ben@bsb.me.uk>
Newsgroups comp.lang.c
Subject Re: "stack smashing detected"
Date 2024-06-13 00:36 +0100
Organization A noiseless patient Spider
Message-ID <87cyolzqb2.fsf@bsb.me.uk> (permalink)
References <666a10d3$0$973$882e4bbb@reader.netnews.com>

Show all headers | View raw


DFS <nospam@dfs.com> writes:

> Same C program I just made a post about 'undefined behavior' on.
>
> I just noticed I get "stack smashing detected" only when I run the program
> using a dataset of 75+ consecutive integers.
>
> set of 2 to 74 consecutive values: no problem.
> set of random values of any size: no problem.
> 75+ consecutive values: problem
>
> Any easy way to find out what's causing this issue (probably a buffer
> overflow)?

I compiled using -fsanitize=undefined and at runtime I get:

$ ./dfs 70 -c
70 Consecutive:
No commas     : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 
dfs.c:126:18: runtime error: index 70 out of bounds for type 'int [*]'
...

Line 126:

  if(nums[i]-nums[i+1]!=0) {ucnt=1;} else {ucnt++;}

nums is a VLA declared int nums[N]; and i runs from 0 to i < N (70 in
this run).  When i == 69 (the max) nums[i+1] is undefined (it's out of
bounds).

If I run

$ ./dfs 1 -c
1 Consecutive:
No commas     : 1 
dfs.c:126:18: runtime error: index 1 out of bounds for type 'int [*]'
dfs.c:161:14: runtime error: index -1 out of bounds for type 'int [*]'
dfs.c:162:32: runtime error: index 1 out of bounds for type 'int [*]'

I see two further problems.  With some stats you will have to set a
minimum for N, but the first problem is just an incorrect index.

BTW, when I was starting out, I'd give my right arm for gcc's
-fsanitize=undefined and/or valgrind.

-- 
Ben.

Back to comp.lang.c | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

"stack smashing detected" DFS <nospam@dfs.com> - 2024-06-12 17:19 -0400
  Re: "stack smashing detected" Ben Bacarisse <ben@bsb.me.uk> - 2024-06-13 00:36 +0100
    Re: "stack smashing detected" DFS <nospam@dfs.com> - 2024-06-12 20:29 -0400
      Re: "stack smashing detected" Ben Bacarisse <ben@bsb.me.uk> - 2024-06-13 09:54 +0100
        Re: "stack smashing detected" Malcolm McLean <malcolm.arthur.mclean@gmail.com> - 2024-06-13 10:32 +0100
          Re: "stack smashing detected" Kaz Kylheku <643-408-1753@kylheku.com> - 2024-06-14 04:06 +0000

csiph-web