selftest:Samba4: configure "password hash gpg key ids" for ad_dc (if available)
authorStefan Metzmacher <metze@samba.org>
Tue, 12 Jan 2016 12:51:00 +0000 (13:51 +0100)
committerStefan Metzmacher <metze@samba.org>
Fri, 22 Jul 2016 14:03:27 +0000 (16:03 +0200)
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
selftest/selftest.pl
selftest/target/Samba4.pm

index 1ab932bb5e1481e54b4c9c90f0eddc3857b111ee..1284e772dbe5d4954bc8f545718e2f7892ce6d0f 100755 (executable)
@@ -321,6 +321,7 @@ $ENV{KRB5CCNAME} = "$prefix/krb5ticket";
 $ENV{PREFIX_ABS} = $prefix_abs;
 $ENV{SRCDIR} = $srcdir;
 $ENV{SRCDIR_ABS} = $srcdir_abs;
+$ENV{GNUPGHOME} = "$srcdir_abs/selftest/gnupg";
 $ENV{BINDIR} = $bindir_abs;
 
 my $tls_enabled = not $opt_quick;
index 5bf888aecbbebced08c46b46ae521eb61542f6f8..ed88ac57bc91fd5d7804e0214cbe64a2a14a3a44 100755 (executable)
@@ -1631,6 +1631,27 @@ sub provision_rodc($$$)
        return $ret;
 }
 
+sub read_config_h($)
+{
+       my ($name) = @_;
+       my %ret = {};
+       open(LF, "<$name") or die("unable to read $name: $!");
+       while (<LF>) {
+               chomp;
+               next if not (/^#define /);
+               if (/^#define (.*?)[ \t]+(.*?)$/) {
+                       $ret{$1} = $2;
+                       next;
+               }
+               if (/^#define (.*?)[ \t]+$/) {
+                       $ret{$1} = 1;;
+                       next;
+               }
+       }
+       close(LF);
+       return \%ret;
+}
+
 sub provision_ad_dc($$)
 {
        my ($self, $prefix) = @_;
@@ -1644,6 +1665,15 @@ sub provision_ad_dc($$)
        my $require_mutexes = "dbwrap_tdb_require_mutexes:* = yes";
        $require_mutexes = "" if ($ENV{SELFTEST_DONT_REQUIRE_TDB_MUTEX_SUPPORT} eq "1");
 
+       my $config_h = {};
+
+       if (defined($ENV{CONFIG_H})) {
+               $config_h = read_config_h($ENV{CONFIG_H});
+       }
+
+       my $password_hash_gpg_key_ids = "password hash gpg key ids = 4952E40301FAB41A";
+       $password_hash_gpg_key_ids = "" unless defined($config_h->{HAVE_GPGME});
+
        my $extra_smbconf_options = "
         server services = -smb +s3fs
         xattr_tdb:file = $prefix_abs/statedir/xattr.tdb
@@ -1651,6 +1681,8 @@ sub provision_ad_dc($$)
        dbwrap_tdb_mutexes:* = yes
        ${require_mutexes}
 
+       ${password_hash_gpg_key_ids}
+
        kernel oplocks = no
        kernel change notify = no
        smb2 leases = no