On Sun, Oct 25, 2015 at 10:32:33PM +0100, Ondrej Zajicek wrote: > On Sun, Oct 25, 2015 at 05:31:52PM +0300, Vladimir Lettiev wrote: > > Hi. > > > > Just got a build failure with recent gcc with enabled option > > FORTIFY_SOURCE=2: > > > > In function 'strncpy', > > inlined from 'rip_outgoing_authentication' at > > ../../../proto/rip/auth.c:134:5: > > /usr/include/bits/string3.h:120:10: error: call to __builtin___strncpy_chk > > will always overflow destination buff > > > > There is proto/rip/auth.c:134: > > > > strncpy( (char *) (&block->packetlen), passwd->password, 16); > > > > destination packetlen is u16, so gcc thinks it is overflow. > > > > Is it possible to change strncpy with memcpy? > > No, memcpy would not work. > > You could replace '(char *) (&block->packetlen)' with: > > (char *) block + OFFSETOF(struct rip_block_auth, packetlen)
Thanks, it worked. -- Vladimir Lettiev aka crux ✉ thec...@gmail.com