Xavier
2012-06-19 12:15:57 UTC
Bonjou,
J'ai un script, inspiré d'un truc trouvé sur PerlMonks, dont le boulot est
d'extraire d'un annuaire LDAP (Active Directory) tous les enregistremnts ayant un
champ email. La requête est la suivante, et jusque samedi, elle marchait
(cf :
[***@ns ~]$ ls -ld /var/db/pkg/p5-Convert-ASN1-0.26/
drwxr-xr-x 2 root wheel 512 Jun 16 14:00 /var/db/pkg/p5-Convert-ASN1-0.26/
La requête est la suivante :
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
(Je vous fais grâce du bind, qui marche)
my @args = ( base => sprintf("ou=%s,%s", $ou, $hqbase),
filter => "(& (mailnickname=*) (| (&(objectCategory=person)
(objectClass=user)(!(homeMDB=*))(!(msExchHomeServerName=*)))
(&(objectCategory=person)(objectClass=user)(|(homeMDB=*)
(msExchHomeServerName=*)))(&(objectCategory=person)(objectClass=contact))
(objectCategory=group)(objectCategory=publicFolder)
(objectClass=msExchDynamicDistributionList) ))",
control => [ $page ],
attrs => "proxyAddresses, mail",
);
$mesg = $ldap->search( @args );
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Et, depuis la mise à jour de Convert::ASN1, ça échoue avec cette erreur :
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
DB<3> x $mesg
0 Net::LDAP::Search=HASH(0x801f01a08)
'callback' => undef
'errorMessage' => 'Can\'t use string ("proxyAddresses, mail") as an ARRAY ref
while "strict refs" in use at
/usr/local/lib/perl5/site_perl/5.14.2/Convert/ASN1/_encode.pm line 269.'
'mesgid' => 2
'parent' => Net::LDAP=HASH(0x801e39270)
'net_ldap_async' => 0
'net_ldap_debug' => 0
'net_ldap_host' => 'ad.domain.fr'
'net_ldap_mesg' => HASH(0x801ea1fa8)
empty hash
'net_ldap_port' => 389
'net_ldap_refcnt' => 1
'net_ldap_resp' => HASH(0x801e81eb8)
empty hash
'net_ldap_scheme' => 'ldap'
'net_ldap_socket' => IO::Socket::INET=GLOB(0x8010773a8)
-> *Symbol::GEN0
FileHandle({*Symbol::GEN0}) => fileno(6)
'net_ldap_uri' => 'ad.domain.fr'
'net_ldap_version' => 3
'pdu' => undef
'raw' => undef
'resultCode' => 83
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Le but est de remplir une table localusers pour Postfix, parce que malgré une
journée d'essais, je n'ai pas réussi à faire fonctionner le mécanisme builin de
Postfix avec AD.
Si quelqu'un a une idée (à part downgrader Convert::ASN1) qu'il en soit remercié
pour 7 générations.
J'ai un script, inspiré d'un truc trouvé sur PerlMonks, dont le boulot est
d'extraire d'un annuaire LDAP (Active Directory) tous les enregistremnts ayant un
champ email. La requête est la suivante, et jusque samedi, elle marchait
(cf :
[***@ns ~]$ ls -ld /var/db/pkg/p5-Convert-ASN1-0.26/
drwxr-xr-x 2 root wheel 512 Jun 16 14:00 /var/db/pkg/p5-Convert-ASN1-0.26/
La requête est la suivante :
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
(Je vous fais grâce du bind, qui marche)
my @args = ( base => sprintf("ou=%s,%s", $ou, $hqbase),
filter => "(& (mailnickname=*) (| (&(objectCategory=person)
(objectClass=user)(!(homeMDB=*))(!(msExchHomeServerName=*)))
(&(objectCategory=person)(objectClass=user)(|(homeMDB=*)
(msExchHomeServerName=*)))(&(objectCategory=person)(objectClass=contact))
(objectCategory=group)(objectCategory=publicFolder)
(objectClass=msExchDynamicDistributionList) ))",
control => [ $page ],
attrs => "proxyAddresses, mail",
);
$mesg = $ldap->search( @args );
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Et, depuis la mise à jour de Convert::ASN1, ça échoue avec cette erreur :
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
DB<3> x $mesg
0 Net::LDAP::Search=HASH(0x801f01a08)
'callback' => undef
'errorMessage' => 'Can\'t use string ("proxyAddresses, mail") as an ARRAY ref
while "strict refs" in use at
/usr/local/lib/perl5/site_perl/5.14.2/Convert/ASN1/_encode.pm line 269.'
'mesgid' => 2
'parent' => Net::LDAP=HASH(0x801e39270)
'net_ldap_async' => 0
'net_ldap_debug' => 0
'net_ldap_host' => 'ad.domain.fr'
'net_ldap_mesg' => HASH(0x801ea1fa8)
empty hash
'net_ldap_port' => 389
'net_ldap_refcnt' => 1
'net_ldap_resp' => HASH(0x801e81eb8)
empty hash
'net_ldap_scheme' => 'ldap'
'net_ldap_socket' => IO::Socket::INET=GLOB(0x8010773a8)
-> *Symbol::GEN0
FileHandle({*Symbol::GEN0}) => fileno(6)
'net_ldap_uri' => 'ad.domain.fr'
'net_ldap_version' => 3
'pdu' => undef
'raw' => undef
'resultCode' => 83
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Le but est de remplir une table localusers pour Postfix, parce que malgré une
journée d'essais, je n'ai pas réussi à faire fonctionner le mécanisme builin de
Postfix avec AD.
Si quelqu'un a une idée (à part downgrader Convert::ASN1) qu'il en soit remercié
pour 7 générations.
--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)