On place la fonction escape dans crans_utils
This commit is contained in:
parent
c392a2a986
commit
debaa31bf3
2 changed files with 6 additions and 22 deletions
|
@ -37,6 +37,7 @@ import time
|
||||||
import smtplib
|
import smtplib
|
||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
|
import ldap.filter
|
||||||
sys.path.append('/usr/scripts/gestion')
|
sys.path.append('/usr/scripts/gestion')
|
||||||
import config
|
import config
|
||||||
from unicodedata import normalize
|
from unicodedata import normalize
|
||||||
|
@ -173,23 +174,6 @@ def validate_name(value, more_chars=""):
|
||||||
else:
|
else:
|
||||||
raise ValueError("Nom invalide ('%s')" % value)
|
raise ValueError("Nom invalide ('%s')" % value)
|
||||||
|
|
||||||
def ldap_sanitize(s):
|
|
||||||
""" Échappe les caractères spéciaux ldap.
|
|
||||||
(Si vous avez une méthode plus propre pour coder ça, je suis preneur)
|
|
||||||
Todo: rajouter conversion pour caractère utf-8 multioctets ?
|
|
||||||
(cf http://blog.dzhuvinov.com/?p=585 )
|
|
||||||
"""
|
|
||||||
replace = {
|
|
||||||
'*': '\\2a',
|
|
||||||
'(': '\\28',
|
|
||||||
')': '\\29',
|
|
||||||
'\\': '\\5c',
|
|
||||||
'\x00': '\\00'}
|
|
||||||
def conv(c):
|
|
||||||
try: return replace[c]
|
|
||||||
except KeyError: return c
|
|
||||||
return "".join([conv(c) for c in s])
|
|
||||||
|
|
||||||
def process_status(pid):
|
def process_status(pid):
|
||||||
"""
|
"""
|
||||||
Vérifie l'état du processus pid
|
Vérifie l'état du processus pid
|
||||||
|
@ -199,3 +183,8 @@ def process_status(pid):
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
def escape(chaine):
|
||||||
|
"""Renvoie une chaîne échapée pour pouvoir la mettre en toute sécurité
|
||||||
|
dans une requête ldap."""
|
||||||
|
return ldap.filter.escape_filter_chars(chaine)
|
||||||
|
|
|
@ -88,11 +88,6 @@ def import_secrets():
|
||||||
#: Champs à ignorer dans l'historique
|
#: Champs à ignorer dans l'historique
|
||||||
HIST_IGNORE_FIELDS = ["modifiersName", "entryCSN", "modifyTimestamp", "historique"]
|
HIST_IGNORE_FIELDS = ["modifiersName", "entryCSN", "modifyTimestamp", "historique"]
|
||||||
|
|
||||||
def escape(chaine):
|
|
||||||
"""Renvoie une chaîne échapée pour pouvoir la mettre en toute sécurité
|
|
||||||
dans une requête ldap."""
|
|
||||||
return ldap.filter.escape_filter_chars(chaine)
|
|
||||||
|
|
||||||
# A priori, ldif_to_uldif et ldif_to_cldif sont obsolètes,
|
# A priori, ldif_to_uldif et ldif_to_cldif sont obsolètes,
|
||||||
# du fait de l'apparition de AttrsDict dans attributs.py
|
# du fait de l'apparition de AttrsDict dans attributs.py
|
||||||
def ldif_to_uldif(ldif):
|
def ldif_to_uldif(ldif):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue