Changeset 68

Show
Ignore:
Timestamp:
04/14/04 22:34:40 (9 years ago)
Author:
alexcv
Message:

Logoff when currently logged in users login again

Location:
trunk/wifidog
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/wifidog/ChangeLog

    r67 r68  
    11# $Header$ 
     22004-04-14  Alexandre Carmel-Veilleux <acv@acv.ca> 
     3        * Existing IPs are logged off when they're authenticated again. 
     4 
    252004-04-14  Alexandre Carmel-Veilleux <acv@acv.ca> 
    36        * Fixed clean up so it happens at the right time. 
  • trunk/wifidog/src/http.c

    r64 r68  
    8787                        httpdOutput(webserver, "Failed to retrieve your MAC " 
    8888                                        "address"); 
    89                 } 
    90                 else { 
     89                } else { 
    9190                        // We have their MAC address 
    9291 
    93                         if (!node_find_by_ip(webserver->clientAddr)) { 
    94                                 node_add(webserver->clientAddr, mac,  
    95                                                 token->value, 0, 0); 
     92                        if ((node = node_find_by_ip(webserver->clientAddr)) 
     93                                        == NULL) { 
     94                                debug(D_LOG_DEBUG, "New node for %s", 
     95                                        webserver->clientAddr); 
     96                                node_add(webserver->clientAddr, mac, 
     97                                        token->value, 0, 0); 
     98                        } else { 
     99                                debug(D_LOG_DEBUG, "Node for %s already " 
     100                                        "exists", node->ip); 
     101                                if (node->rights != NULL) { 
     102                                        /* log off if logged in */ 
     103                                        debug(D_LOG_DEBUG, "Logging off %s " 
     104                                                "because they tried a new " 
     105                                                "token", node->ip); 
     106                                        fw_deny(node->ip, node->mac, 
     107                                                node->rights->profile); 
     108                                } 
    96109                        } 
    97110