Password modify as admin

Robert Threet <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.ldap
Message-ID <[email protected]>
Not sure this went the first time ...

I have a working Net::LDAP::Entry program for adding users so I decided
to gut it to create a userPassword changer.

I keep getting "Error changing password: no objectClass attribute".

I cannot find examples doing simple one-at-a-time adds like this.  All I
can find are examples using arrays and hashes and cannot seem to
translate it to this.  Any tips?

sub resetMacAcct($newuid,$pw,$newpw){
        $macldapsvr = "XXX.XXX.XXX.XXX";
        $macADMdn = "uid=admin,cn=people,dc=lib-mac,dc=local";
        $macadmpwd ="XXXXXXXX";
        $macBind = Net::LDAP->new($macldapsvr,
                port => 389,
                debug => 0,
                timeout => 60,
                version => 3
        ) or die "Couldn't connect to Mac LDAP server: $@";
        my $conn = $macBind->bind(dn => $macADMdn,
                                    password => $macadmpwd);
        if ($conn->code){
                die 'Cannot bind:' . $conn->error . "\n";}

        my $macEntry = Net::LDAP::Entry->new;
        $newdn="uid=" . $username . ",cn=people,dc=lib-mac,dc=local";
        $macEntry->dn($newdn);
	[removed SSHA1 stuff for clarity]
        $macEntry->replace(userPassword => $newMacpw);
        my $add = $macBind->add($macEntry);
        die "Error changing password: " . $add->error()."\n" if
              $add->code();
	$macBind->unbind();
        }



-- 
Robert Threet
Systems Manager
USI Computer Center
(812) 465-1082
Confidentiality Statement: This email message, including any
attachments, is for the sole use of the intended recipient(s) and may
contain confidential and privileged information.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.