From: Herbert Pötzl (herbert_at_13thfloor.at)
Date: Wed 30 Jul 2003 - 10:24:59 BST
On Wed, Jul 30, 2003 at 10:58:23AM +0200, Ond?ej Surý wrote:
>
> Patch for this chunk is:
>
> ***************
> *** 226,229 ****
> --- 241,250 ----
> score = sk->family == PF_INET ? 1 : 0;
> #else
> + }else if (sk->ip_info != NULL){
> + if (udp_in_list (sk->ip_info,daddr)){
> + score++;
> + }else{
> + continue;
> + }
> score = 1;
> #endif
>
>
> There is two problems I see:
>
> 1. It broke logical flow of program, when sk->num == hnum &&
> !ipv6_only_sock(sk) is true then code marked between /*1*/ and /*2*/
> never executes, which is not true for original code.
>
> 2. because 1., score variable is not available for code in patch and
> rest of code manipulating with score variable.
>
> 3. score is used uninitalized when 2. is fixed by moving int score line
> before if line.
>
> Could someone look at that and produce correct patch?
I don't know diddle about the kernel network internals
yet, but maybe you should have a look at ...
http://www.13thfloor.at/VServer/Patches.shtml
I guess the jacques-ctx17.diff.bz2 is the bone of
contention (at least regarding score) ... so maybe
the carefully rediffed patches on my page will do ...
by the way, I mentioned something similar to Jacques
but I guess he is busy at the moment ...
best,
Herbert
> --
> Ond??ej Surý - co/CTO
> ---------------------------------------------------
> Globe Internet, s.r.o. - http://globe.cz
> Pláni??kova 1, 162 00 Praha 6 - http://mapa.globe.cz
> Tel.: +420 2 35365000 - info_at_servery.cz