On Mar 31, 2010, at 10:31 PM, Prashanth Sundaram wrote:
>
>
> sub create_user {
> my(@add_user)=...@_;
> print Dumper(@add_user);
> for $eachuser (@add_user)
> { print "\n==========\n ";
> #for $attribut (keys %eachuser)
> #{
> # if ($attribut eq "\n objectClass"){ for (my $j=0; $j < 12;
> $j++){print " objectClass:".$eachuser->{$attribut}[$j]; } }
> # print $attribut.":".$eachuser->{$attribut}."\n";
> #}
> $dn_add='uid='.$eachuser->{'uid'}.',ou=people,'.$ldap_base;
> print "dn: $dn_add \n";
> $new_entry = Net::LDAP::Entry->new;
> $new_entry->dn($dn_add);
> $new_entry->add($dn_add,attr => [ %eachuser ]);
I would really suggest you add
use strict;
to the start of your script as there is no such variable %eachuser, you need
%$eachuser
Graham.
> my $mesg_ld = $new_entry->update($ldap_ld);
> if ($mesg_ld->code)
> {
> logit('err',"Error adding uid:".$eachuser->{'uid'}."with
> uidNumber:".$eachuser->{'uidNumber'},$mesg_ld);
> }
> else
> {
> logit('info',"Successfully added
> uid:".$eachuser->{'uid'}."uidNumber:".$eachuser->{'uidNumber'},$mesg_ld);
> }
> }
> }
>
>
>
>
>