Changeset 1975


Ignore:
Timestamp:
03/17/17 18:36:11 (7 years ago)
Author:
nanardon
Message:

Fix internal attribute name discovery for Unix db

Location:
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Unix.pm

    r1406 r1975  
    361361 
    362362sub create_object { 
    363     my ($self, $otype, $id, %data) = @_; 
     363    my ($self, $otype, $id, %gdata) = @_; 
     364 
     365    my %data; 
     366 
     367    foreach my $attr (keys %gdata) { 
     368        if (my $oattr = $self->attribute($otype, $attr)) { 
     369            $data{ $oattr->iname } = $gdata{$attr}; 
     370        } else { 
     371            $data{$attr} = $gdata{$attr}; 
     372        }    
     373    } 
    364374 
    365375    # objects are store into sub ref: 
     
    374384        } 
    375385        if(/^group$/ && !defined($data{gid})) { 
    376             $self->log(LA_ERR, "uid or gid missing to create $otype"); 
     386            $self->log(LA_ERR, "gid missing to create $otype"); 
    377387            return; 
    378388        } 
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Unix/Group.pm

    r1568 r1975  
    8383 
    8484sub set_fields { 
    85     my ($self, %data) = @_; 
     85    my ($self, %gdata) = @_; 
     86 
     87    my %data; 
     88 
     89    foreach my $attr (keys %gdata) { 
     90        if (my $oattr = $self->attribute($attr)) { 
     91            $data{ $oattr->iname } = $gdata{$attr}; 
     92        } else { 
     93            $data{$attr} = $gdata{$attr}; 
     94        }    
     95    } 
     96 
    8697    foreach my $field (keys %data) { 
    8798        $field eq 'gid' and do { 
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Unix/User.pm

    r1935 r1975  
    5454        givenName       => { ro => 1 }, 
    5555        sn              => { ro => 1 }, 
    56         uid             => { iname => 'login', ro => 1 }, 
    5756        sAMAccountName  => { iname => 'login', ro => 1 }, 
    5857        $base->{use_shadow} ? 
     
    106105 
    107106sub set_fields { 
    108     my ($self, %data) = @_; 
     107    my ($self, %gdata) = @_; 
     108 
     109    my %data; 
     110 
     111    foreach my $attr (keys %gdata) { 
     112        if (my $oattr = $self->attribute($attr)) { 
     113            $data{ $oattr->iname } = $gdata{$attr}; 
     114        } else { 
     115            $data{$attr} = $gdata{$attr}; 
     116        } 
     117    } 
     118 
    109119    foreach my $field (keys %data) { 
    110120        $field =~ /^(uid|gid)$/ and do { 
Note: See TracChangeset for help on using the changeset viewer.