duplicate requests...

suganthi velusamy v.suganthi at yahoo.co.in
Thu Jun 28 07:03:01 CEST 2007


 Hi all....

        In the file radiusd.c, i am not able to understand the following... what is "fake request" and what is duplicate requests??????? when a request is considered as duplicate??? 


                /*
          *      "fake" requests MUST NEVER be in the request list.
          *
          *      They're used internally in the server.  Any reply
          *      is a reply to the local server, and any proxied packet
          *      gets sent outside of the tunnel.
          */
         rad_assert((curreq->options & RAD_REQUEST_OPTION_FAKE_REQUEST) == 0);
 
 
         /*
          *      The current request isn't finished, which
          *      means that the NAS sent us a new packet, while
          *      we are still processing the old request.
          */
         if (!curreq->finished) {
                 /*
                  *      If the authentication vectors are identical,
                  *      then the NAS is re-transmitting it, trying to
                  *      kick us into responding to the request.
                  */
                 if (memcmp(curreq->packet->vector, packet->vector,
                            sizeof(packet->vector)) == 0) {
                         RAD_SNMP_INC(rad_snmp.auth.total_dup_requests);
 
 
                         /* /*
                          *      It's not finished because the request
                          *      was proxied, but there was no reply
                          *      from the home server.
                          */
                         if (curreq->proxy && !curreq->proxy_reply) {
                                 /*
                                  *      We're taking care of sending
                                  *      duplicate proxied packets, so
                                  *      we ignore any duplicate
                                  *      requests from the NAS.
                                  *
                                  *      FIXME: Make it ALWAYS synchronous!
                                  */
                                 if (!mainconfig.proxy_synchronous) {
                                         RAD_SNMP_TYPE_INC(listener, total_packets_dropped);
                                         DEBUG2("Ignoring duplicate packet from client "
                                                "%s:%d - ID: %d, due to outstanding proxied request %d.",
                                                client_name(packet->src_ipaddr),
                                                packet->src_port, packet->id,
                                                curreq->number);
 

Thanks....

       
---------------------------------
 Once upon a time there was 1 GB storage on Yahoo! Mail. Click here for happy ending!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeradius.org/pipermail/freeradius-devel/attachments/20070628/44e48a80/attachment.html>


More information about the Freeradius-Devel mailing list