The branch, master has been updated
       via  97496bb... s3-lsa: fill in some more info levels in 
_lsa_QueryInfoPolicy().
       via  a8de4f0... s4-smbtorture: skip three info levels while testing s3 
with RPC-LSA.
       via  58d401b... s4-smbtorture: skip QueryInfoPolicy2 while running 
RPC-LSA against s3.
       via  bff9819... s4-smbtorture: skip QueryDomainInformationPolicy test 
against s3 in RPC-LSA.
      from  074ad24... s4-smbtorture: simplify some torture_comments in RPC-LSA.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 97496bb3cafd8914a3a7c7b7d3a668ba3e533769
Author: Günther Deschner <[email protected]>
Date:   Tue Nov 3 11:45:15 2009 +0100

    s3-lsa: fill in some more info levels in _lsa_QueryInfoPolicy().
    
    Add dummys (just like s4 does) and fill in some more appropriate error 
codes.
    
    Guenther

commit a8de4f091ef10223e862b3cb6f0b9e5cef5cde2a
Author: Günther Deschner <[email protected]>
Date:   Tue Nov 3 11:46:07 2009 +0100

    s4-smbtorture: skip three info levels while testing s3 with RPC-LSA.
    
    These are only supported by s3 when running pdb_ads atm.
    
    Guenther

commit 58d401bb212b43d05213514f8bb2efa850d4e5c9
Author: Günther Deschner <[email protected]>
Date:   Mon Nov 2 20:11:14 2009 +0100

    s4-smbtorture: skip QueryInfoPolicy2 while running RPC-LSA against s3.
    
    This is only supported by s3 when running pdb_ads atm.
    
    Guenther

commit bff9819521255b3dcd0f04aa585c1ad0385896fd
Author: Günther Deschner <[email protected]>
Date:   Mon Nov 2 16:51:00 2009 +0100

    s4-smbtorture: skip QueryDomainInformationPolicy test against s3 in RPC-LSA.
    
    Guenther

-----------------------------------------------------------------------

Summary of changes:
 source3/rpc_server/srv_lsa_nt.c |   32 ++++++++++++++++++++++++++++++++
 source4/torture/rpc/lsa.c       |   25 ++++++++++++++++++++++---
 2 files changed, 54 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/srv_lsa_nt.c b/source3/rpc_server/srv_lsa_nt.c
index 931026e..08d6911 100644
--- a/source3/rpc_server/srv_lsa_nt.c
+++ b/source3/rpc_server/srv_lsa_nt.c
@@ -577,6 +577,38 @@ NTSTATUS _lsa_QueryInfoPolicy(pipes_struct *p,
        }
 
        switch (r->in.level) {
+       /* according to MS-LSAD 3.1.4.4.3 */
+       case LSA_POLICY_INFO_MOD:
+       case LSA_POLICY_INFO_AUDIT_FULL_SET:
+       case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
+               return NT_STATUS_INVALID_PARAMETER;
+       case LSA_POLICY_INFO_AUDIT_LOG:
+               info->audit_log.percent_full            = 0;
+               info->audit_log.maximum_log_size        = 0;
+               info->audit_log.retention_time          = 0;
+               info->audit_log.shutdown_in_progress    = 0;
+               info->audit_log.time_to_shutdown        = 0;
+               info->audit_log.next_audit_record       = 0;
+               status = NT_STATUS_OK;
+               break;
+       case LSA_POLICY_INFO_PD:
+               info->pd.name.string                    = NULL;
+               status = NT_STATUS_OK;
+               break;
+       case LSA_POLICY_INFO_REPLICA:
+               info->replica.source.string             = NULL;
+               info->replica.account.string            = NULL;
+               status = NT_STATUS_OK;
+               break;
+       case LSA_POLICY_INFO_QUOTA:
+               info->quota.paged_pool                  = 0;
+               info->quota.non_paged_pool              = 0;
+               info->quota.min_wss                     = 0;
+               info->quota.max_wss                     = 0;
+               info->quota.pagefile                    = 0;
+               info->quota.unknown                     = 0;
+               status = NT_STATUS_OK;
+               break;
        case LSA_POLICY_INFO_AUDIT_EVENTS:
                {
 
diff --git a/source4/torture/rpc/lsa.c b/source4/torture/rpc/lsa.c
index 35a3b0a..cff42a2 100644
--- a/source4/torture/rpc/lsa.c
+++ b/source4/torture/rpc/lsa.c
@@ -2463,6 +2463,10 @@ static bool test_QueryDomainInfoPolicy(struct 
dcerpc_pipe *p,
        int i;
        bool ret = true;
 
+       if (torture_setting_bool(tctx, "samba3", false)) {
+               torture_skip(tctx, "skipping QueryDomainInformationPolicy 
test\n");
+       }
+
        torture_comment(tctx, "\nTesting QueryDomainInformationPolicy\n");
 
        for (i=2;i<4;i++) {
@@ -2502,6 +2506,10 @@ static bool test_QueryInfoPolicyCalls(   bool version2,
 
        torture_comment(tctx, "\nTesting %s\n", call);
 
+       if (version2 && torture_setting_bool(tctx, "samba3", false)) {
+               torture_skip(tctx, "skipping QueryInfoPolicy2 tests\n");
+       }
+
        for (i=1;i<=14;i++) {
                r.in.handle = handle;
                r.in.level = i;
@@ -2528,9 +2536,6 @@ static bool test_QueryInfoPolicyCalls(    bool version2,
                        break;
                case LSA_POLICY_INFO_DOMAIN:
                case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
-               case LSA_POLICY_INFO_L_ACCOUNT_DOMAIN:
-               case LSA_POLICY_INFO_DNS_INT:
-               case LSA_POLICY_INFO_DNS:
                case LSA_POLICY_INFO_REPLICA:
                case LSA_POLICY_INFO_QUOTA:
                case LSA_POLICY_INFO_ROLE:
@@ -2542,6 +2547,20 @@ static bool test_QueryInfoPolicyCalls(   bool version2,
                                ret = false;
                        }
                        break;
+               case LSA_POLICY_INFO_L_ACCOUNT_DOMAIN:
+               case LSA_POLICY_INFO_DNS_INT:
+               case LSA_POLICY_INFO_DNS:
+                       if (torture_setting_bool(tctx, "samba3", false)) {
+                               /* Other levels not implemented yet */
+                               if (!NT_STATUS_EQUAL(status, 
NT_STATUS_INVALID_INFO_CLASS)) {
+                                       torture_comment(tctx, "%s failed - 
%s\n", call, nt_errstr(status));
+                                       ret = false;
+                               }
+                       } else if (!NT_STATUS_IS_OK(status)) {
+                               torture_comment(tctx, "%s failed - %s\n", call, 
nt_errstr(status));
+                               ret = false;
+                       }
+                       break;
                default:
                        if (torture_setting_bool(tctx, "samba4", false)) {
                                /* Other levels not implemented yet */


-- 
Samba Shared Repository

Reply via email to