summaryrefslogtreecommitdiffstats
path: root/source3/rpc_server
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2009-06-28 22:29:06 +0200
committerVolker Lendecke <vl@samba.org>2009-07-04 12:54:22 +0200
commit8666e79f8fc3fd05fabefeeadc2bd6a2a6f1c18a (patch)
treee96f454b705240852ffb3ddb135bf5600279563a /source3/rpc_server
parentb8322ec2b23f60379cbecaf68c0ce8f254611d41 (diff)
downloadsamba-8666e79f8fc3fd05fabefeeadc2bd6a2a6f1c18a.tar.gz
samba-8666e79f8fc3fd05fabefeeadc2bd6a2a6f1c18a.tar.xz
samba-8666e79f8fc3fd05fabefeeadc2bd6a2a6f1c18a.zip
Implement QueryInfoPolicy2 similar to s4: Make it the same as QueryInfoPolicy
Don't reply to it for non-pdb-ads to keep up our old behaviour
Diffstat (limited to 'source3/rpc_server')
-rw-r--r--source3/rpc_server/srv_lsa_nt.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/source3/rpc_server/srv_lsa_nt.c b/source3/rpc_server/srv_lsa_nt.c
index 02ddbf76f3..fa421070b9 100644
--- a/source3/rpc_server/srv_lsa_nt.c
+++ b/source3/rpc_server/srv_lsa_nt.c
@@ -2324,10 +2324,22 @@ NTSTATUS _lsa_RetrievePrivateData(pipes_struct *p, struct lsa_RetrievePrivateDat
return NT_STATUS_NOT_IMPLEMENTED;
}
-NTSTATUS _lsa_QueryInfoPolicy2(pipes_struct *p, struct lsa_QueryInfoPolicy2 *r)
+NTSTATUS _lsa_QueryInfoPolicy2(pipes_struct *p,
+ struct lsa_QueryInfoPolicy2 *r2)
{
- p->rng_fault_state = True;
- return NT_STATUS_NOT_IMPLEMENTED;
+ struct lsa_QueryInfoPolicy r;
+
+ if ((pdb_capabilities() & PDB_CAP_ADS) == 0) {
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+ }
+
+ ZERO_STRUCT(r);
+ r.in.handle = r2->in.handle;
+ r.in.level = r2->in.level;
+ r.out.info = r2->out.info;
+
+ return _lsa_QueryInfoPolicy(p, &r);
}
NTSTATUS _lsa_SetInfoPolicy2(pipes_struct *p, struct lsa_SetInfoPolicy2 *r)