Ignore:
Timestamp:
06/17/21 13:33:50 (3 years ago)
Author:
nanardon
Message:

start samba support: manage sambaSID

File:
1 edited

Legend:

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

    r2471 r2475  
    9494        $self->{_db}->do(q{set DATESTYLE to 'DMY'}); 
    9595        $self->log(LA_DEBUG, 'New connection to DB'); 
     96 
     97        $self->get_global_value('sambaSID') or do { 
     98            $self->_setSambaSID; 
     99            $self->commit; 
     100        }; 
    96101 
    97102        return $self->{_db}; 
     
    776781} 
    777782 
     783=head2 sambaSID($id) 
     784 
     785Return the base samba SID set in the config or a default one if none is set. 
     786 
     787If C<$id> is given return the full SID suitable for an object. 
     788 
     789=cut 
     790 
     791sub sambaSID { 
     792    my ($self, $id) = @_; 
     793 
     794    my $ssid = $self->get_global_value('sambaSID'); 
     795    if (defined($id)) { 
     796        $ssid .= '-' . $id; 
     797    } 
     798    return $ssid; 
     799} 
     800 
     801sub _setSambaSID { 
     802    my ( $self ) = @_; 
     803 
     804    my $sid = sprintf( 
     805        'S-1-5-21-%d-%d', 
     806        int(rand 1000000000), 
     807        int(rand 1000000000), 
     808    ); 
     809 
     810    $self->set_global_value( 'sambaSID', $sid ); 
     811    return $sid; 
     812} 
     813 
     814 
     815 
    778816=head2 find_expired_users ($expire) 
    779817 
Note: See TracChangeset for help on using the changeset viewer.