AHH!!!

This would again kickstart my WCCP & Linux tests....

On Thu, Dec 06, 2001 at 11:00:31AM +0200, Vladimir Ivaschenko wrote:
> Hi All,
> 
> Linux kernels v2.4.x do not set IP ID flag on UDP packets with DF
> set, at least when sendmsg() is used. Apparently this confuses
> Cisco's WCCP (you'll get messages like "duplicate packet ignored"
> when you enable WCCP debugging). Attached you will find a patch
> which disables MTU PATH DISCOVERY which results in IP IDs being
> generated again.
> 
> Apply it in the src/modules/ subdirectory.
> 
> -- 
> Best Regards
> Vladimir Ivaschenko
> Certified Linux Engineer (RHCE)

> --- wccp2.c.orig      Fri Apr 27 17:09:08 2001
> +++ wccp2.c   Thu Dec  6 10:39:12 2001
> @@ -512,7 +512,7 @@
>  wccp2_service_group_t   *g;
>  wccp2_router_t          *r;
>  struct  sockaddr_in     wccp2_bind_sa;
> -int                     rc;
> +int                     rc, sockopt_val;
>  
>      /* reopen wccp2 socket */
>      if ( wccp2_socket != -1 )
> @@ -522,6 +522,13 @@
>          fprintf(stderr, "Can't create wccp socket: %s\n", strerror(errno));
>          return(MOD_CODE_ERR);
>      }
> +    /* Linux 2.4 does not set IP IDs on UDP packets with DF flag by default,
> +     * force it to do so as Cisco does not like it */
> +    #if defined(LINUX)
> +    sockopt_val=IP_PMTUDISC_DONT;
> +    setsockopt(wccp2_socket, SOL_IP, IP_MTU_DISCOVER, (char*)&sockopt_val, 
>sizeof(sockopt_val));
> +    #endif
> +
>      fcntl(wccp2_socket, F_SETFL, fcntl(wccp2_socket, F_GETFL, 0)|O_NONBLOCK);
>      /* bind to port */
>      memset(&wccp2_bind_sa, 0, sizeof(wccp2_bind_sa));


-- 
------------------------
Hendrik Visage
[EMAIL PROTECTED]
=====================================================================
If you would like to unsubscribe from this list send message to
[EMAIL PROTECTED] with "unsubscribe oops-eng" in message body.
Archive is accessible on http://lists.paco.net/oops-eng/

Дати відповідь електронним листом