> > > Download squid-2.5.STABLE9.tar.gz and
> > > follow_xff-2.5.STABLE5.patch on /tmp
> > > Extract the squid tar file with: tar xvfz
> > > squid-2.5.STABLE9.tar.gz
> > > copy follow_xff-2.5.STABLE5.patch to
> > > /tmp/squid-2.5.STABLE9
> > > cd to /tmp/squid-2.5.STABLE9 and execute: patch
> > -p0
> > > < 
> > > follow_xff-2.5.STABLE5.patch
> > > 
> > > you should get the following errors:
> > > 
> > > FedoraCore2[/tmp/squid-2.5.STABLE9]patch -p0 <
> > > follow_xff-2.5.STABLE5.patch
> > > patching file acconfig.h
> > > patching file bootstrap.sh
> > > Hunk #1 succeeded at 66 (offset 7 lines).
> > > patching file configure.in
> > > Hunk #1 succeeded at 1128 (offset 28 lines).
> > > patching file src/acl.c
> > > Hunk #1 succeeded at 2147 (offset 107 lines).
> > > patching file src/cf.data.pre
> > > Hunk #1 succeeded at 2144 (offset 29 lines).
> > > patching file src/client_side.c
> > > Hunk #2 succeeded at 185 (offset 2 lines).
> > > Hunk #4 succeeded at 3308 (offset 58 lines).
> > > patching file src/delay_pools.c
> > > patching file src/structs.h
> > > Hunk #1 FAILED at 594.
> > > Hunk #2 succeeded at 634 (offset 14 lines).
> > > Hunk #3 succeeded at 1621 (offset 2 lines).
> > > Hunk #4 succeeded at 1684 (offset 14 lines).
> > > Hunk #5 FAILED at 1697.
> > > 2 out of 5 hunks FAILED -- saving rejects to
> file
> > > src/structs.h.rej
> > > 
> > > This means that two hunks (parts) of the patch
> > > failed to patch src/structs.h 
> > > at around lines 594 and 1697.  Now look at the
> > > src/structs.h.rej which 
> > > should look like this:
> > > 
> > > ***************
> > > *** 594,599 ****
> > >         int pipeline_prefetch;
> > >         int request_entities;
> > >         int detect_broken_server_pconns;
> > >       } onoff;
> > >       acl *aclList;
> > >       struct {
> > > --- 594,604 ----
> > >         int pipeline_prefetch;
> > >         int request_entities;
> > >         int detect_broken_server_pconns;
> > > + #if FOLLOW_X_FORWARDED_FOR
> > > +        int acl_uses_indirect_client;
> > > +        int delay_pool_uses_indirect_client;
> > > +        int log_uses_indirect_client;
> > > + #endif /* FOLLOW_X_FORWARDED_FOR */
> > >       } onoff;
> > >       acl *aclList;
> > >       struct {
> > > ***************
> > > *** 1681,1686 ****
> > >       char *peer_login;         /* Configured
> peer
> > > login:password */
> > >       time_t lastmod;           /* Used on
> > refreshes
> > > */
> > >       const char *vary_headers; /* Used when
> > varying
> > > entities are detected. 
> > > Chan
> > > ges how the store key is calculated */
> > >   };
> > > 
> > >   struct _cachemgr_passwd {
> > > --- 1697,1707 ----
> > >       char *peer_login;         /* Configured
> peer
> > > login:password */
> > >       time_t lastmod;           /* Used on
> > refreshes
> > > */
> > >       const char *vary_headers; /* Used when
> > varying
> > > entities are detected. 
> > > Chan
> > > ges how the store key is calculated */
> > > + #if FOLLOW_X_FORWARDED_FOR
> > > +     /* XXX a list of IP addresses would be a
> > > better data structure
> > > +      * than this String */
> > > +     String x_forwarded_for_iterator;
> > > + #endif /* FOLLOW_X_FORWARDED_FOR */
> > >   };
> > > 
> > >   struct _cachemgr_passwd {
> > > 
> > > As you can see the patch has found some 'issues'
> > on
> > > line 594 where it was 
> > > expecting something that it did not find.  No
> > > problem, just open 
> > > src/structs.h with 'vi' and go to line 594 and
> > > locate the line:
> > > 
> > > int detect_broken_server_pconns;
> > > 
> > > which should be somewhere around there.
> > > now insert the following as described by the
> .rej
> > > file (remove the + which 
> > > means ADD)
> > > 
> > > #if FOLLOW_X_FORWARDED_FOR
> > >         int acl_uses_indirect_client;
> > >         int delay_pool_uses_indirect_client;
> > >         int log_uses_indirect_client;
> > > #endif /* FOLLOW_X_FORWARDED_FOR */
> > > 
> > > so around line 594 you should now have:
> > > 
> > >         int detect_broken_server_pconns;
> > > #if FOLLOW_X_FORWARDED_FOR
> > >         int acl_uses_indirect_client;
> > >         int delay_pool_uses_indirect_client;
> > >         int log_uses_indirect_client;
> > > #endif /* FOLLOW_X_FORWARDED_FOR */
> > >         int balance_on_multiple_ip;
> > >         int relaxed_header_parser;
> > >         int accel_uses_host_header;
> > >         int accel_no_pmtu_disc;
> > >     } onoff;
> > >     acl *aclList;
> > > 
> > > OK, let's now go to line 1697 (more or less
> since
> > we
> > > have just added a few 
> > > lines around 594)
> > > locate the line:
> > > 
> > > const char *vary_headers; /* Used when varying
> > > entities are detected. Chan 
> > > ges how the store key is calculated */
> > > 
> > > which should be somewhere around there.
> > > now insert the following as described by the
> .rej
> > > file (remove the + which 
> > > means ADD)
> > > 
> > > #if FOLLOW_X_FORWARDED_FOR
> > >      /* XXX a list of IP addresses would be a
> > better
> > > data structure
> > >       * than this String */
> > >      String x_forwarded_for_iterator;
> > > #endif /* FOLLOW_X_FORWARDED_FOR */
> > > 
> > > so around line 1697 you should now have:
> > > 
> > >     char *peer_login;           /* Configured
> peer
> > > login:password */
> > >     time_t lastmod;             /* Used on
> > refreshes
> > > */
> > >     const char *vary_headers;   /* Used when
> > varying
> > > entities are detected. 
> > > Changes how the store key is calculated */
> > > #if FOLLOW_X_FORWARDED_FOR
> > >     /* XXX a list of IP addresses would be a
> > better
> > > data structure
> > >      * than this String */
> > >     String x_forwarded_for_iterator;
> > > #endif /* FOLLOW_X_FORWARDED_FOR */
> > >     BODY_HANDLER *body_reader;
> > >     void *body_reader_data;
> > > };
> > > 
> > > Alright, you are done fixing the broken patch! 
> > now
> > > go back to 
> > > /tmp/squid-2.5.STABLE9 and execute
> > > 'bootstrap.sh'.  Do not worry about any warnings
> > or
> > > errors you may get.  
> > > then run 'configure --help' and you should be
> able
> > > to see you new option 


Anybody got success this patch with
squid-2.5.STABLE11?
Pls help me. 

Sarav 




        
                
__________________________________ 
Yahoo! Mail - PC Magazine Editors' Choice 2005 
http://mail.yahoo.com

Reply via email to