diff --git a/radius_auth.py b/radius_auth.py index 7cafdea6..70d470ce 100755 --- a/radius_auth.py +++ b/radius_auth.py @@ -27,10 +27,9 @@ def chap_ok(password, challenge, clear_pass) : return False -def do_auth(): - # Test chap (comme cela on est sur que c'est bien un switch qui demande) - mac = os.getenv('USER_NAME', '').replace('"', '') - +def do_auth(mac): + global ann_scol + if not chap_ok(os.getenv('CHAP_PASSWORD'), os.getenv('CHAP_CHALLENGE'), mac): return (-1, "Échec test CHAP") @@ -62,8 +61,11 @@ def do_auth(): return (0, "Accès OK") if __name__ == '__main__' : + # Test chap (comme cela on est sur que c'est bien un switch qui demande) + mac = os.getenv('USER_NAME', '').replace('"', '') + # On vérifie si la mac est autorisée - (r, msg) = do_auth() + (r, msg) = do_auth(mac) # On logue la prise sur laquelle a lieu la tentative openlog("radius_auth.py") @@ -72,5 +74,5 @@ if __name__ == '__main__' : prise += "%02d" % int(os.getenv("NAS_PORT", 0)) syslog("%s -> %s [%s]" % (prise, mac, msg)) - pring msg + print msg sys.exit(r)