Re: [PATCH] iproute2: xfrm state add abort issue
From: Sohny Thomas <hidden>
Date: 2013-09-28 13:24:42
On Friday 27 September 2013 01:56 PM, David Laight wrote:
quoted
ip xfrm state add causes a SIGABRT due to a strncpy_chk . This happens since strncpy doesn't account for the '\0' . I have fixed this using sizeof instead of strlen . There is a redhat bug which documents this issue https://bugzilla.redhat.com/show_bug.cgi?id=982761 Signed-off-by: Sohny Thomas <redacted> --------------diff --git a/ip/xfrm_state.c b/ip/xfrm_state.c index 389942c..7dd8799 100644 --- a/ip/xfrm_state.c +++ b/ip/xfrm_state.c@@ -117,7 +117,7 @@ static int xfrm_algo_parse(struct xfrm_algo *alg,enum xfrm_attr_type_t type, char *name, char *key, char *buf, int max) { int len; - int slen = strlen(key); + int slen = sizeof(key);you definitely don't want sizeof(key) - that is either 4 or 8.
oh damn my bad. I think i will go with strlen(key) + 1. or i will pass slen+1 to strncpy . Regards, Sohny
David