From: Ulrich Weber Date: Thu, 7 Apr 2011 07:37:05 +0000 (+0200) Subject: iproute2: parse flag XFRM_POLICY_ICMP X-Git-Tag: v2.6.39~13^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c0635644cd0a4471c09f665f7098713f3157c170;p=thirdparty%2Fiproute2.git iproute2: parse flag XFRM_POLICY_ICMP parse flag XFRM_POLICY_ICMP Signed-off-by: Ulrich Weber --- diff --git a/ip/ipxfrm.c b/ip/ipxfrm.c index 0c7aaad87..48a732f03 100644 --- a/ip/ipxfrm.c +++ b/ip/ipxfrm.c @@ -981,6 +981,7 @@ void xfrm_policy_info_print(struct xfrm_userpolicy_info *xpinfo, fprintf(fp, "flag "); XFRM_FLAG_PRINT(fp, flags, XFRM_POLICY_LOCALOK, "localok"); + XFRM_FLAG_PRINT(fp, flags, XFRM_POLICY_ICMP, "icmp"); if (flags) fprintf(fp, "%x", flags); } diff --git a/ip/xfrm_policy.c b/ip/xfrm_policy.c index 9ef5c09d2..7827f91a0 100644 --- a/ip/xfrm_policy.c +++ b/ip/xfrm_policy.c @@ -77,7 +77,7 @@ static void usage(void) //fprintf(stderr, "PRIORITY - priority value(default=0)\n"); fprintf(stderr, "FLAG-LIST := [ FLAG-LIST ] FLAG\n"); - fprintf(stderr, "FLAG := [ localok ]\n"); + fprintf(stderr, "FLAG := [ localok | icmp ]\n"); fprintf(stderr, "LIMIT-LIST := [ LIMIT-LIST ] | [ limit LIMIT ]\n"); fprintf(stderr, "LIMIT := [ [time-soft|time-hard|time-use-soft|time-use-hard] SECONDS ] |\n"); @@ -156,6 +156,8 @@ static int xfrm_policy_flag_parse(__u8 *flags, int *argcp, char ***argvp) while (1) { if (strcmp(*argv, "localok") == 0) *flags |= XFRM_POLICY_LOCALOK; + else if (strcmp(*argv, "icmp") == 0) + *flags |= XFRM_POLICY_ICMP; else { PREV_ARG(); /* back track */ break;