Author: baggins                      Date: Tue Jun 23 15:04:18 2009 GMT
Module: packages                      Tag: HEAD
---- Log message:
- parse smbpasswd, properly set other samba fields

---- Files affected:
packages/MigrationTools:
   MigrationTools-smbkrb5.patch (1.1 -> 1.2) 

---- Diffs:

================================================================
Index: packages/MigrationTools/MigrationTools-smbkrb5.patch
diff -u packages/MigrationTools/MigrationTools-smbkrb5.patch:1.1 
packages/MigrationTools/MigrationTools-smbkrb5.patch:1.2
--- packages/MigrationTools/MigrationTools-smbkrb5.patch:1.1    Mon Jun 22 
16:16:14 2009
+++ packages/MigrationTools/MigrationTools-smbkrb5.patch        Tue Jun 23 
17:04:12 2009
@@ -1,32 +1,53 @@
 diff -ur MigrationTools-47/migrate_common.ph 
MigrationTools-47-krb5/migrate_common.ph
 --- MigrationTools-47/migrate_common.ph        2009-06-22 16:16:02.730586333 
+0200
 +++ MigrationTools-47-krb5/migrate_common.ph   2009-06-22 16:15:55.070581897 
+0200
-@@ -120,10 +120,16 @@
- }
- 
- # Default Kerberos realm
--#if ($EXTENDED_SCHEMA) {
--#     $DEFAULT_REALM = $DEFAULT_MAIL_DOMAIN;
--#     $DEFAULT_REALM =~ tr/a-z/A-Z/;
--#}
-+if ($EXTENDED_SCHEMA) {
-+      $DEFAULT_REALM = $DEFAULT_MAIL_DOMAIN;
-+      $DEFAULT_REALM =~ tr/a-z/A-Z/;
-+}
+@@ -120,6 +120,11 @@
+ #     $DEFAULT_REALM = $DEFAULT_MAIL_DOMAIN;
+ #     $DEFAULT_REALM =~ tr/a-z/A-Z/;
+ #}
 +
-+# Default SMB Domain
-+if ($EXTENDED_SCHEMA) {
-+      $DEFAULT_SMB_DOMAIN = $DEFAULT_MAIL_DOMAIN;
-+      $DEFAULT_SMB_DOMAIN =~ tr/a-z/A-Z/;
-+}
++# Default SMB SID (must be non-empty string)
++#if ($EXTENDED_SCHEMA) {
++#     $DEFAULT_SMB_SID = "";
++#}
  
  if (-x "/usr/sbin/revnetgroup") {
        $REVNETGROUP = "/usr/sbin/revnetgroup";
-Only in MigrationTools-47-krb5: migrate_common.ph~
 diff -ur MigrationTools-47/migrate_passwd.pl 
MigrationTools-47-krb5/migrate_passwd.pl
 --- MigrationTools-47/migrate_passwd.pl        2009-06-22 16:16:02.850581340 
+0200
 +++ MigrationTools-47-krb5/migrate_passwd.pl   2009-06-22 16:13:13.997264191 
+0200
-@@ -138,7 +138,15 @@
+@@ -50,6 +52,7 @@
+       exit 1;
+ }
+ 
++$do_samba = 0;
+ while ($ARGV[0] =~ /^--.*/) {
+       if ($ARGV[0] eq "--minuid") {
+               $minuid = $ARGV[1];
+@@ -57,13 +60,22 @@
+       } elsif ($ARGV[0] eq "--maxuid") {
+               $maxuid = $ARGV[1];
+               shift ; shift;
++      } elsif ($ARGV[0] eq "--samba") {
++              $do_samba = 1;
++              shift;
+       } else {
+               shift;
+       }
+ }
+ 
++if ($do_samba && !defined($DEFAULT_SMB_SID)) {
++      print STDERR "You must set \$DEFAULT_SMB_SID in 
/etc/openldap/migrate_common.ph to migrate smbpasswd\n";
++      exit 2;
++}
++
+ &parse_args();
+ &read_shadow_file();
++if ($do_samba) { &read_samba(); }
+ &open_files();
+ 
+ while(<INFILE>)
+@@ -138,7 +150,23 @@
        print $HANDLE "objectClass: top\n";
  
        if ($DEFAULT_REALM) {
@@ -37,13 +58,21 @@
 +              print $HANDLE "krb5KeyVersionNumber: 0\n";
 +      }
 +
-+      if ($DEFAULT_SMB_DOMAIN) {
++      if ($DEFAULT_SMB_SID) {
 +              print $HANDLE "objectClass: sambaSamAccount\n";
-+              print $HANDLE "sambaSID: 0\n";
++              print $HANDLE "displayName: $cn\n";
++              print $HANDLE "sambaSID: $DEFAULT_SMB_SID-$uid\n";
++              print $HANDLE "sambaPrimaryGroupSID: $DEFAULT_SMB_SID-$gid\n";
++              if ($do_samba) {
++                      print $HANDLE "sambaLMPassword: 
".$sambaUsers{$user}->{"sambaLMPassword"}."\n";
++                      print $HANDLE "sambaNTPassword: 
".$sambaUsers{$user}->{"sambaNTPassword"}."\n";
++                      print $HANDLE "sambaAcctFlags: 
".$sambaUsers{$user}->{"sambaAcctFlags"}."\n";
++                      print $HANDLE "sambaPwdLastSet: 
".$sambaUsers{$user}->{"sambaPwdLastSet"}."\n";
++              }
        }
  
        if ($shadowUsers{$user} ne "") {
-@@ -147,10 +155,6 @@
+@@ -147,10 +175,6 @@
                print $HANDLE "userPassword: {crypt}$pwd\n";
        }
  
@@ -54,3 +83,20 @@
        if ($shell) {
                print $HANDLE "loginShell: $shell\n";
        }
+@@ -226,3 +250,16 @@
+       }
+ }
+ 
++sub read_samba
++{
++      open(INPUT, "</etc/samba/smbpasswd");
++      while (<INPUT>) {
++              my ($sambaUser, $id, $lmp, $ntp, $f, $lf, $xxx) = split(':');
++              $sambaUsers{$sambaUser}->{"sambaLMPassword"} = $lmp;
++              $sambaUsers{$sambaUser}->{"sambaNTPassword"} = $ntp;
++              $sambaUsers{$sambaUser}->{"sambaAcctFlags"} = $f;
++              $lf =~ s/^LCT-//;
++              $sambaUsers{$sambaUser}->{"sambaPwdLastSet"} = hex($lf);
++      }
++      close(INPUT);
++}
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/MigrationTools/MigrationTools-smbkrb5.patch?r1=1.1&r2=1.2&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to