On 12/7/09, Chris Ridd <chrisr...@mac.com> wrote:
>
> On 7 Dec 2009, at 09:38, Lupin Deterd wrote:
>
>> Hi,
>>
>> What is the correct syntax of adding an OU using Net::LDAP, I tried
>> the following:
>> !/usr/bin/perl -w
>>
>> use 5.10.1; use strict;
>>
>> use Net::LDAP; use Data::Dumper;
>>
>> my $ldap = Net::LDAP->new("192.168.183.2") or die "$@"; my $mesg =
>> $ldap->bind( "cn=admin,dc=lab,dc=net", password => 'xxx' );
>>
>> $mesg = $ldap->add( "ou=Users,dc=lab,dc=net", attrs => [
>>
>>    'ou'          => 'dc=Users',
>>    'objectClass' => [ 'top', 'organizationalUnit' ]
>>  ]
>>
>> );
>>
>> say $mesg->error; say $mesg->code;
>>
>> And got the following error:
>>
>> value of naming attribute 'ou' is not present in entry 64
>>
>> However using the ldapmodify command line, and using this following ldif,
>> works:
>>
>> dn: ou=Users,dc=lab,dc=net changetype: add objectclass: top
>> objectclass: organizationalUnit ou: Users
>
> In that case, your add call should say:
>
>     'ou' => 'Users',
>
> instead of:
>
>     'ou' => 'dc=Users',
>
> Cheers,
>
> Chris
>
Thanks Chris, it works.

-lupin

Reply via email to