[radius_auth.py] pour permettre aux nounous d'avoir d'autres vlans
darcs-hash:20090624080659-bd074-753bed11a2461321f20c817c97c8ab88cd53e2f5.gz
This commit is contained in:
parent
f30fdb5a25
commit
776af42937
2 changed files with 6 additions and 4 deletions
|
@ -7,7 +7,7 @@ from syslog import syslog, openlog
|
||||||
sys.path.append('/usr/scripts/gestion')
|
sys.path.append('/usr/scripts/gestion')
|
||||||
from ldap_crans import crans_ldap, AssociationCrans, Club
|
from ldap_crans import crans_ldap, AssociationCrans, Club
|
||||||
from config import ann_scol, dat, vlans
|
from config import ann_scol, dat, vlans
|
||||||
|
from iptools import AddrInNet
|
||||||
def chap_ok(password, challenge, clear_pass) :
|
def chap_ok(password, challenge, clear_pass) :
|
||||||
""" Test l'authentification chap fournie
|
""" Test l'authentification chap fournie
|
||||||
password et chalenge doivent être données
|
password et chalenge doivent être données
|
||||||
|
@ -54,7 +54,8 @@ def do_auth(mac):
|
||||||
return (-1, "Bloquage total des services pour cette machine", "")
|
return (-1, "Bloquage total des services pour cette machine", "")
|
||||||
|
|
||||||
# L'adherent ne paie pas, on le met sur le vlan radin
|
# L'adherent ne paie pas, on le met sur le vlan radin
|
||||||
if not isinstance(proprio, Club) and not proprio.adherentPayant():
|
if ((not isinstance(proprio, Club) and not proprio.adherentPayant()) or \
|
||||||
|
('Nounou' in proprio.droits() and AddrInNet(m[0].ip(),'10.42.0.0/16'))):
|
||||||
return (0, "Ne paie pas", "gratuit")
|
return (0, "Ne paie pas", "gratuit")
|
||||||
|
|
||||||
# Paiment ok ?
|
# Paiment ok ?
|
||||||
|
@ -69,7 +70,8 @@ def do_auth(mac):
|
||||||
return (0, "N'a pas payé", "accueil")
|
return (0, "N'a pas payé", "accueil")
|
||||||
|
|
||||||
# Cas des personnels logés dans les appartements de l'ENS
|
# Cas des personnels logés dans les appartements de l'ENS
|
||||||
if proprio.etudes(0) == 'Personnel ENS':
|
if (proprio.etudes(0) == 'Personnel ENS' or
|
||||||
|
('Nounou' in proprio.droits() and AddrInNet(m[0].ip(),'10.2.9.0/24'))):
|
||||||
return (0, "Personnel ENS", "appts")
|
return (0, "Personnel ENS", "appts")
|
||||||
|
|
||||||
# C'est bon
|
# C'est bon
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue