Subject: [PATCH] iproute2: xfrm state add abort issue

From: Sohny Thomas <[email-masked]>
Date: Fri, 27 Sep 2013 00:02:12 +0530

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 <[email-masked]>

--------------

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);

   #if 0
          /* XXX: verifying both name and key is required! */