summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolker Lendecke <vlendec@samba.org>2006-10-10 08:39:11 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:15:23 -0500
commit4980baf2e1f1de2715b1c0243ea7e79668d87501 (patch)
tree7171e3f41ac21aa675def65a76038a622e3b18fc
parent6b0b563fa43ad4c7de3573dc7962a2698e140f72 (diff)
downloadsamba-4980baf2e1f1de2715b1c0243ea7e79668d87501.tar.gz
samba-4980baf2e1f1de2715b1c0243ea7e79668d87501.tar.bz2
samba-4980baf2e1f1de2715b1c0243ea7e79668d87501.zip
r19224: Add setting the rng_fault_state to the already converted pipes.
Convert the low-hanging fruit of the LSA server. This provides a sample how the server calls can be converted one by one, see the "proxy_lsa_call" function. Volker (This used to be commit 99e54a213ad3561ea6e8dc44c483847c18c5681e)
-rw-r--r--source3/Makefile.in2
-rw-r--r--source3/rpc_server/srv_dfs_nt.c18
-rw-r--r--source3/rpc_server/srv_lsa.c159
-rw-r--r--source3/rpc_server/srv_lsa_nt.c491
-rw-r--r--source3/rpc_server/srv_srvsvc_nt.c35
-rw-r--r--source3/rpc_server/srv_winreg_nt.c9
-rw-r--r--source3/rpc_server/srv_wkssvc_nt.c30
7 files changed, 597 insertions, 147 deletions
diff --git a/source3/Makefile.in b/source3/Makefile.in
index 16e9003910..a7166c5d89 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -324,7 +324,7 @@ REGISTRY_OBJ = registry/reg_frontend.o registry/reg_cachehook.o registry/reg_pri
registry/reg_db.o registry/reg_eventlog.o registry/reg_shares.o \
registry/reg_util.o registry/reg_dynamic.o registry/reg_perfcount.o
-RPC_LSA_OBJ = rpc_server/srv_lsa.o rpc_server/srv_lsa_nt.o
+RPC_LSA_OBJ = rpc_server/srv_lsa.o rpc_server/srv_lsa_nt.o librpc/gen_ndr/srv_lsa.o
RPC_NETLOG_OBJ = rpc_server/srv_netlog.o rpc_server/srv_netlog_nt.o
diff --git a/source3/rpc_server/srv_dfs_nt.c b/source3/rpc_server/srv_dfs_nt.c
index f3b6d8af88..4857a839e1 100644
--- a/source3/rpc_server/srv_dfs_nt.c
+++ b/source3/rpc_server/srv_dfs_nt.c
@@ -334,108 +334,126 @@ WERROR _dfs_GetInfo(pipes_struct *p, const char *path, const char *server, const
WERROR _dfs_SetInfo(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_Rename(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_Move(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_ManagerGetConfigInfo(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_ManagerSendSiteInfo(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_AddFtRoot(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_RemoveFtRoot(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_AddStdRoot(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_RemoveStdRoot(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_ManagerInitialize(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_AddStdRootForced(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_GetDcAddress(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_SetDcAddress(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_FlushFtTable(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_Add2(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_Remove2(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_EnumEx(pipes_struct *p, const char *name, uint32_t level, uint32_t bufsize, struct dfs_EnumStruct *info, uint32_t *total)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _dfs_SetInfo2(pipes_struct *p)
{
/* FIXME: Implement your code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
diff --git a/source3/rpc_server/srv_lsa.c b/source3/rpc_server/srv_lsa.c
index 286266f30d..0269e75e4e 100644
--- a/source3/rpc_server/srv_lsa.c
+++ b/source3/rpc_server/srv_lsa.c
@@ -30,6 +30,23 @@
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_RPC_SRV
+static BOOL proxy_lsa_call(pipes_struct *p, uint8 opnum)
+{
+ struct api_struct *fns;
+ int n_fns;
+
+ lsarpc_get_pipe_fns(&fns, &n_fns);
+
+ if (opnum >= n_fns)
+ return False;
+
+ if (fns[opnum].opnum != opnum) {
+ smb_panic("LSA function table not sorted\n");
+ }
+
+ return fns[opnum].fn(p);
+}
+
/***************************************************************************
api_lsa_open_policy2
***************************************************************************/
@@ -218,28 +235,7 @@ static BOOL api_lsa_lookup_names(pipes_struct *p)
static BOOL api_lsa_close(pipes_struct *p)
{
- LSA_Q_CLOSE q_u;
- LSA_R_CLOSE r_u;
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- if (!lsa_io_q_close("", &q_u, data, 0)) {
- DEBUG(0,("api_lsa_close: lsa_io_q_close failed.\n"));
- return False;
- }
-
- r_u.status = _lsa_close(p, &q_u, &r_u);
-
- /* store the response in the SMB stream */
- if (!lsa_io_r_close("", &r_u, rdata, 0)) {
- DEBUG(0,("api_lsa_close: lsa_io_r_close failed.\n"));
- return False;
- }
-
- return True;
+ return proxy_lsa_call(p, DCERPC_LSA_CLOSE);
}
/***************************************************************************
@@ -248,28 +244,7 @@ static BOOL api_lsa_close(pipes_struct *p)
static BOOL api_lsa_open_secret(pipes_struct *p)
{
- LSA_Q_OPEN_SECRET q_u;
- LSA_R_OPEN_SECRET r_u;
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- if(!lsa_io_q_open_secret("", &q_u, data, 0)) {
- DEBUG(0,("api_lsa_open_secret: failed to unmarshall LSA_Q_OPEN_SECRET.\n"));
- return False;
- }
-
- r_u.status = _lsa_open_secret(p, &q_u, &r_u);
-
- /* store the response in the SMB stream */
- if(!lsa_io_r_open_secret("", &r_u, rdata, 0)) {
- DEBUG(0,("api_lsa_open_secret: Failed to marshall LSA_R_OPEN_SECRET.\n"));
- return False;
- }
-
- return True;
+ return proxy_lsa_call(p, DCERPC_LSA_OPENSECRET);
}
/***************************************************************************
@@ -771,29 +746,7 @@ static BOOL api_lsa_lookup_priv_value(pipes_struct *p)
static BOOL api_lsa_open_trust_dom(pipes_struct *p)
{
- LSA_Q_OPEN_TRUSTED_DOMAIN q_u;
- LSA_R_OPEN_TRUSTED_DOMAIN r_u;
-
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- if(!lsa_io_q_open_trusted_domain("", &q_u, data, 0)) {
- DEBUG(0,("api_lsa_open_trust_dom: failed to unmarshall LSA_Q_OPEN_TRUSTED_DOMAIN .\n"));
- return False;
- }
-
- r_u.status = _lsa_open_trusted_domain(p, &q_u, &r_u);
-
- /* store the response in the SMB stream */
- if(!lsa_io_r_open_trusted_domain("", &r_u, rdata, 0)) {
- DEBUG(0,("api_lsa_open_trust_dom: Failed to marshall LSA_R_OPEN_TRUSTED_DOMAIN.\n"));
- return False;
- }
-
- return True;
+ return proxy_lsa_call(p, DCERPC_LSA_OPENTRUSTEDDOMAIN);
}
/***************************************************************************
@@ -801,29 +754,7 @@ static BOOL api_lsa_open_trust_dom(pipes_struct *p)
static BOOL api_lsa_create_trust_dom(pipes_struct *p)
{
- LSA_Q_CREATE_TRUSTED_DOMAIN q_u;
- LSA_R_CREATE_TRUSTED_DOMAIN r_u;
-
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- if(!lsa_io_q_create_trusted_domain("", &q_u, data, 0)) {
- DEBUG(0,("api_lsa_create_trust_dom: failed to unmarshall LSA_Q_CREATE_TRUSTED_DOMAIN .\n"));
- return False;
- }
-
- r_u.status = _lsa_create_trusted_domain(p, &q_u, &r_u);
-
- /* store the response in the SMB stream */
- if(!lsa_io_r_create_trusted_domain("", &r_u, rdata, 0)) {
- DEBUG(0,("api_lsa_create_trust_dom: Failed to marshall LSA_R_CREATE_TRUSTED_DOMAIN.\n"));
- return False;
- }
-
- return True;
+ return proxy_lsa_call(p, DCERPC_LSA_CREATETRUSTEDDOMAIN);
}
/***************************************************************************
@@ -831,29 +762,7 @@ static BOOL api_lsa_create_trust_dom(pipes_struct *p)
static BOOL api_lsa_create_secret(pipes_struct *p)
{
- LSA_Q_CREATE_SECRET q_u;
- LSA_R_CREATE_SECRET r_u;
-
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- if(!lsa_io_q_create_secret("", &q_u, data, 0)) {
- DEBUG(0,("api_lsa_create_secret: failed to unmarshall LSA_Q_CREATE_SECRET.\n"));
- return False;
- }
-
- r_u.status = _lsa_create_secret(p, &q_u, &r_u);
-
- /* store the response in the SMB stream */
- if(!lsa_io_r_create_secret("", &r_u, rdata, 0)) {
- DEBUG(0,("api_lsa_create_secret: Failed to marshall LSA_R_CREATE_SECRET.\n"));
- return False;
- }
-
- return True;
+ return proxy_lsa_call(p, DCERPC_LSA_CREATESECRET);
}
/***************************************************************************
@@ -861,29 +770,7 @@ static BOOL api_lsa_create_secret(pipes_struct *p)
static BOOL api_lsa_set_secret(pipes_struct *p)
{
- LSA_Q_SET_SECRET q_u;
- LSA_R_SET_SECRET r_u;
-
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- if(!lsa_io_q_set_secret("", &q_u, data, 0)) {
- DEBUG(0,("api_lsa_set_secret: failed to unmarshall LSA_Q_SET_SECRET.\n"));
- return False;
- }
-
- r_u.status = _lsa_set_secret(p, &q_u, &r_u);
-
- /* store the response in the SMB stream */
- if(!lsa_io_r_set_secret("", &r_u, rdata, 0)) {
- DEBUG(0,("api_lsa_set_secret: Failed to marshall LSA_R_SET_SECRET.\n"));
- return False;
- }
-
- return True;
+ return proxy_lsa_call(p, DCERPC_LSA_SETSECRET);
}
/***************************************************************************
diff --git a/source3/rpc_server/srv_lsa_nt.c b/source3/rpc_server/srv_lsa_nt.c
index 9e1e9a397a..1a92ec6740 100644
--- a/source3/rpc_server/srv_lsa_nt.c
+++ b/source3/rpc_server/srv_lsa_nt.c
@@ -1297,20 +1297,22 @@ NTSTATUS _lsa_lookup_names4(pipes_struct *p, LSA_Q_LOOKUP_NAMES4 *q_u, LSA_R_LOO
_lsa_close. Also weird - needs to check if lsa handle is correct. JRA.
***************************************************************************/
-NTSTATUS _lsa_close(pipes_struct *p, LSA_Q_CLOSE *q_u, LSA_R_CLOSE *r_u)
+NTSTATUS _lsa_Close(pipes_struct *p, struct policy_handle *handle)
{
- if (!find_policy_by_hnd(p, &q_u->pol, NULL)) {
+ if (!find_policy_by_hnd(p, handle, NULL)) {
return NT_STATUS_INVALID_HANDLE;
}
- close_policy_hnd(p, &q_u->pol);
+ close_policy_hnd(p, handle);
return NT_STATUS_OK;
}
/***************************************************************************
***************************************************************************/
-NTSTATUS _lsa_open_secret(pipes_struct *p, LSA_Q_OPEN_SECRET *q_u, LSA_R_OPEN_SECRET *r_u)
+NTSTATUS _lsa_OpenSecret(pipes_struct *p, struct policy_handle *handle,
+ struct lsa_String name, uint32_t access_mask,
+ struct policy_handle *sec_handle)
{
return NT_STATUS_OBJECT_NAME_NOT_FOUND;
}
@@ -1318,7 +1320,9 @@ NTSTATUS _lsa_open_secret(pipes_struct *p, LSA_Q_OPEN_SECRET *q_u, LSA_R_OPEN_SE
/***************************************************************************
***************************************************************************/
-NTSTATUS _lsa_open_trusted_domain(pipes_struct *p, LSA_Q_OPEN_TRUSTED_DOMAIN *q_u, LSA_R_OPEN_TRUSTED_DOMAIN *r_u)
+NTSTATUS _lsa_OpenTrustedDomain(pipes_struct *p, struct policy_handle *handle,
+ struct dom_sid2 *sid, uint32_t access_mask,
+ struct policy_handle *trustdom_handle)
{
return NT_STATUS_OBJECT_NAME_NOT_FOUND;
}
@@ -1326,7 +1330,11 @@ NTSTATUS _lsa_open_trusted_domain(pipes_struct *p, LSA_Q_OPEN_TRUSTED_DOMAIN *q_
/***************************************************************************
***************************************************************************/
-NTSTATUS _lsa_create_trusted_domain(pipes_struct *p, LSA_Q_CREATE_TRUSTED_DOMAIN *q_u, LSA_R_CREATE_TRUSTED_DOMAIN *r_u)
+NTSTATUS _lsa_CreateTrustedDomain(pipes_struct *p,
+ struct policy_handle *handle,
+ struct lsa_DomainInfo *info,
+ uint32_t access_mask,
+ struct policy_handle *trustdom_handle)
{
return NT_STATUS_ACCESS_DENIED;
}
@@ -1334,7 +1342,9 @@ NTSTATUS _lsa_create_trusted_domain(pipes_struct *p, LSA_Q_CREATE_TRUSTED_DOMAIN
/***************************************************************************
***************************************************************************/
-NTSTATUS _lsa_create_secret(pipes_struct *p, LSA_Q_CREATE_SECRET *q_u, LSA_R_CREATE_SECRET *r_u)
+NTSTATUS _lsa_CreateSecret(pipes_struct *p, struct policy_handle *handle,
+ struct lsa_String name, uint32_t access_mask,
+ struct policy_handle *sec_handle)
{
return NT_STATUS_ACCESS_DENIED;
}
@@ -1342,7 +1352,9 @@ NTSTATUS _lsa_create_secret(pipes_struct *p, LSA_Q_CREATE_SECRET *q_u, LSA_R_CRE
/***************************************************************************
***************************************************************************/
-NTSTATUS _lsa_set_secret(pipes_struct *p, LSA_Q_SET_SECRET *q_u, LSA_R_SET_SECRET *r_u)
+NTSTATUS _lsa_SetSecret(pipes_struct *p, struct policy_handle *sec_handle,
+ struct lsa_DATA_BUF *new_val,
+ struct lsa_DATA_BUF *old_val)
{
return NT_STATUS_ACCESS_DENIED;
}
@@ -2122,3 +2134,466 @@ NTSTATUS _lsa_lookup_priv_value(pipes_struct *p, LSA_Q_LOOKUP_PRIV_VALUE *q_u, L
return NT_STATUS_OK;
}
+
+
+/*
+ * From here on the server routines are just dummy ones to make smbd link with
+ * librpc/gen_ndr/srv_lsa.c. These routines are actually never called, we are
+ * pulling the server stubs across one by one.
+ */
+
+NTSTATUS _lsa_Delete(pipes_struct *p, struct policy_handle *handle)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_EnumPrivs(pipes_struct *p, struct policy_handle *handle, uint32_t *resume_handle, uint32_t max_count, struct lsa_PrivArray *_privs)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_QuerySecurity(pipes_struct *p, struct policy_handle *handle, uint32_t sec_info, struct sec_desc_buf *sdbuf)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_SetSecObj(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_ChangePassword(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_OpenPolicy(pipes_struct *p, uint16_t *system_name, struct lsa_ObjectAttribute *attr, uint32_t access_mask, struct policy_handle *handle)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_QueryInfoPolicy(pipes_struct *p, struct policy_handle *handle, uint16_t level, union lsa_PolicyInformation *info)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_SetInfoPolicy(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_ClearAuditLog(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CreateAccount(pipes_struct *p, struct policy_handle *handle, struct dom_sid2 *sid, uint32_t access_mask, struct policy_handle *acct_handle)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_EnumAccounts(pipes_struct *p, struct policy_handle *handle, uint32_t *resume_handle, uint32_t num_entries, struct lsa_SidArray *sids)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_EnumTrustDom(pipes_struct *p, struct policy_handle *handle, uint32_t *resume_handle, uint32_t max_size, struct lsa_DomainList *domains)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupNames(pipes_struct *p, struct policy_handle *handle, uint32_t num_names, struct lsa_String *names, struct lsa_RefDomainList *domains, struct lsa_TransSidArray *sids, uint16_t level, uint32_t *count)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupSids(pipes_struct *p, struct policy_handle *handle, struct lsa_SidArray *sids, struct lsa_RefDomainList *domains, struct lsa_TransNameArray *names, uint16_t level, uint32_t *count)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_OpenAccount(pipes_struct *p, struct policy_handle *handle, struct dom_sid2 *sid, uint32_t access_mask, struct policy_handle *acct_handle)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_EnumPrivsAccount(pipes_struct *p, struct policy_handle *handle, struct lsa_PrivilegeSet *_privs)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_AddPrivilegesToAccount(pipes_struct *p, struct policy_handle *handle, struct lsa_PrivilegeSet *_privs)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_RemovePrivilegesFromAccount(pipes_struct *p, struct policy_handle *handle, uint8_t remove_all, struct lsa_PrivilegeSet *_privs)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_GetQuotasForAccount(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_SetQuotasForAccount(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_GetSystemAccessAccount(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_SetSystemAccessAccount(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_QueryTrustedDomainInfo(pipes_struct *p, struct policy_handle *trustdom_handle, enum lsa_TrustDomInfoEnum level, union lsa_TrustedDomainInfo *info)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_SetInformationTrustedDomain(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_QuerySecret(pipes_struct *p, struct policy_handle *sec_handle, struct lsa_DATA_BUF_PTR *new_val, NTTIME *new_mtime, struct lsa_DATA_BUF_PTR *old_val, NTTIME *old_mtime)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupPrivValue(pipes_struct *p, struct policy_handle *handle, struct lsa_String *name, struct lsa_LUID *luid)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupPrivName(pipes_struct *p, struct policy_handle *handle, struct lsa_LUID *luid, struct lsa_StringLarge *name)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupPrivDisplayName(pipes_struct *p, struct policy_handle *handle, struct lsa_String *name, struct lsa_StringLarge *disp_name, uint16_t *language_id, uint16_t unknown)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_DeleteObject(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_EnumAccountsWithUserRight(pipes_struct *p, struct policy_handle *handle, struct lsa_String *name, struct lsa_SidArray *sids)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_EnumAccountRights(pipes_struct *p, struct policy_handle *handle, struct dom_sid2 *sid, struct lsa_RightSet *rights)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_AddAccountRights(pipes_struct *p, struct policy_handle *handle, struct dom_sid2 *sid, struct lsa_RightSet *rights)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_RemoveAccountRights(pipes_struct *p, struct policy_handle *handle, struct dom_sid2 *sid, uint32_t unknown, struct lsa_RightSet *rights)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_QueryTrustedDomainInfoBySid(pipes_struct *p, struct policy_handle *handle, struct dom_sid2 *dom_sid, enum lsa_TrustDomInfoEnum level, union lsa_TrustedDomainInfo *info)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_SetTrustedDomainInfo(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_DeleteTrustedDomain(pipes_struct *p, struct policy_handle *handle, struct dom_sid2 *dom_sid)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_StorePrivateData(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_RetrievePrivateData(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_OpenPolicy2(pipes_struct *p, const char *system_name, struct lsa_ObjectAttribute *attr, uint32_t access_mask, struct policy_handle *handle)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_GetUserName(pipes_struct *p, const char *system_name, struct lsa_String *account_name, struct lsa_StringPointer *authority_name)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_QueryInfoPolicy2(pipes_struct *p, struct policy_handle *handle, uint16_t level, union lsa_PolicyInformation *info)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_SetInfoPolicy2(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_QueryTrustedDomainInfoByName(pipes_struct *p, struct policy_handle *handle, struct lsa_String trusted_domain, enum lsa_TrustDomInfoEnum level, union lsa_TrustedDomainInfo *info)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_SetTrustedDomainInfoByName(pipes_struct *p, struct policy_handle *handle, struct lsa_String trusted_domain, enum lsa_TrustDomInfoEnum level, union lsa_TrustedDomainInfo *info)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_EnumTrustedDomainsEx(pipes_struct *p, struct policy_handle *handle, uint32_t *resume_handle, struct lsa_DomainListEx *domains, uint32_t max_size)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CreateTrustedDomainEx(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CloseTrustedDomainEx(pipes_struct *p, struct policy_handle *handle)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_QueryDomainInformationPolicy(pipes_struct *p, struct policy_handle *handle, uint16_t level, union lsa_DomainInformationPolicy *info)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_SetDomainInformationPolicy(pipes_struct *p, struct policy_handle *handle, uint16_t level, union lsa_DomainInformationPolicy *info)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_OpenTrustedDomainByName(pipes_struct *p, struct policy_handle *handle, struct lsa_String name, uint32_t access_mask, struct policy_handle *trustdom_handle)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_TestCall(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupSids2(pipes_struct *p, struct policy_handle *handle, struct lsa_SidArray *sids, struct lsa_RefDomainList *domains, struct lsa_TransNameArray2 *names, uint16_t level, uint32_t *count, uint32_t unknown1, uint32_t unknown2)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupNames2(pipes_struct *p, struct policy_handle *handle, uint32_t num_names, struct lsa_String *names, struct lsa_RefDomainList *domains, struct lsa_TransSidArray2 *sids, uint16_t level, uint32_t *count, uint32_t unknown1, uint32_t unknown2)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CreateTrustedDomainEx2(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRWRITE(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRREAD(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRENUMERATE(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRWRITEDOMAINCREDENTIALS(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRREADDOMAINCREDENTIALS(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRDELETE(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRGETTARGETINFO(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRPROFILELOADED(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupNames3(pipes_struct *p, struct policy_handle *handle, uint32_t num_names, struct lsa_String *names, struct lsa_RefDomainList *domains, struct lsa_TransSidArray3 *sids, uint16_t level, uint32_t *count, uint32_t unknown1, uint32_t unknown2)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRGETSESSIONTYPES(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LSARREGISTERAUDITEVENT(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LSARGENAUDITEVENT(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LSARUNREGISTERAUDITEVENT(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LSARQUERYFORESTTRUSTINFORMATION(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LSARSETFORESTTRUSTINFORMATION(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_CREDRRENAME(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupSids3(pipes_struct *p, struct lsa_SidArray *sids, struct lsa_RefDomainList *domains, struct lsa_TransNameArray2 *names, uint16_t level, uint32_t *count, uint32_t unknown1, uint32_t unknown2)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LookupNames4(pipes_struct *p, uint32_t num_names, struct lsa_String *names, struct lsa_RefDomainList *domains, struct lsa_TransSidArray3 *sids, uint16_t level, uint32_t *count, uint32_t unknown1, uint32_t unknown2)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LSAROPENPOLICYSCE(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LSARADTREGISTERSECURITYEVENTSOURCE(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS _lsa_LSARADTREPORTSECURITYEVENT(pipes_struct *p)
+{
+ p->rng_fault_state = True;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
diff --git a/source3/rpc_server/srv_srvsvc_nt.c b/source3/rpc_server/srv_srvsvc_nt.c
index 737868f375..ec39c2a482 100644
--- a/source3/rpc_server/srv_srvsvc_nt.c
+++ b/source3/rpc_server/srv_srvsvc_nt.c
@@ -2133,175 +2133,210 @@ WERROR _srvsvc_NetFileClose(pipes_struct *p, const char *server_unc, uint32_t fi
WERROR _srvsvc_NetCharDevEnum(pipes_struct *p, const char *server_unc, uint32_t *level, union srvsvc_NetCharDevCtr *ctr, uint32_t max_buffer, uint32_t *totalentries, uint32_t *resume_handle)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetCharDevGetInfo(pipes_struct *p, const char *server_unc, const char *device_name, uint32_t level, union srvsvc_NetCharDevInfo *info)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetCharDevControl(pipes_struct *p, const char *server_unc, const char *device_name, uint32_t opcode)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetCharDevQEnum(pipes_struct *p, const char *server_unc, const char *user, uint32_t *level, union srvsvc_NetCharDevQCtr *ctr, uint32_t max_buffer, uint32_t *totalentries, uint32_t *resume_handle)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetCharDevQGetInfo(pipes_struct *p, const char *server_unc, const char *queue_name, const char *user, uint32_t level, union srvsvc_NetCharDevQInfo *info)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetCharDevQSetInfo(pipes_struct *p, const char *server_unc, const char *queue_name, uint32_t level, union srvsvc_NetCharDevQInfo info, uint32_t *parm_error)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetCharDevQPurge(pipes_struct *p, const char *server_unc, const char *queue_name)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetCharDevQPurgeSelf(pipes_struct *p, const char *server_unc, const char *queue_name, const char *computer_name)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetFileGetInfo(pipes_struct *p, const char *server_unc, uint32_t fid, uint32_t level, union srvsvc_NetFileInfo *info)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetShareCheck(pipes_struct *p, const char *server_unc, const char *device_name, enum srvsvc_ShareType *type)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetServerStatisticsGet(pipes_struct *p, const char *server_unc, const char *service, uint32_t level, uint32_t options, struct srvsvc_Statistics *stats)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetTransportAdd(pipes_struct *p, const char *server_unc, uint32_t level, union srvsvc_NetTransportInfo info)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetTransportEnum(pipes_struct *p, const char *server_unc, uint32_t *level, union srvsvc_NetTransportCtr *transports, uint32_t max_buffer, uint32_t *totalentries, uint32_t *resume_handle)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetTransportDel(pipes_struct *p, const char *server_unc, uint32_t unknown, struct srvsvc_NetTransportInfo0 transport)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetSetServiceBits(pipes_struct *p, const char *server_unc, const char *transport, uint32_t servicebits, uint32_t updateimmediately)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetPathType(pipes_struct *p, const char *server_unc, const char *path, uint32_t pathflags, uint32_t *pathtype)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetPathCanonicalize(pipes_struct *p, const char *server_unc, const char *path, uint8_t *can_path, uint32_t maxbuf, const char *prefix, uint32_t *pathtype, uint32_t pathflags)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetPathCompare(pipes_struct *p, const char *server_unc, const char *path1, const char *path2, uint32_t pathtype, uint32_t pathflags)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRPRNAMECANONICALIZE(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetPRNameCompare(pipes_struct *p, const char *server_unc, const char *name1, const char *name2, uint32_t name_type, uint32_t flags)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetShareDelStart(pipes_struct *p, const char *server_unc, const char *share, uint32_t reserved, struct policy_handle *hnd)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetShareDelCommit(pipes_struct *p, struct policy_handle *hnd)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetServerTransportAddEx(pipes_struct *p, const char *server_unc, uint32_t level, union srvsvc_NetTransportInfo info)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NetServerSetServiceBitsEx(pipes_struct *p, const char *server_unc, const char *emulated_server_unc, const char *transport, uint32_t servicebitsofinterest, uint32_t servicebits, uint32_t updateimmediately)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSGETVERSION(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSCREATELOCALPARTITION(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSDELETELOCALPARTITION(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSSETLOCALVOLUMESTATE(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSSETSERVERINFO(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSCREATEEXITPOINT(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSDELETEEXITPOINT(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRSERVERTRANSPORTDELEX(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSMANAGERREPORTSITEINFO(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSMODIFYPREFIX(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
WERROR _srvsvc_NETRDFSFIXLOCALVOLUME(pipes_struct *p)
{
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
diff --git a/source3/rpc_server/srv_winreg_nt.c b/source3/rpc_server/srv_winreg_nt.c
index 92ea0b3d85..090338a301 100644
--- a/source3/rpc_server/srv_winreg_nt.c
+++ b/source3/rpc_server/srv_winreg_nt.c
@@ -938,8 +938,6 @@ WERROR _winreg_RestoreKey(pipes_struct *p, struct policy_handle *handle, struct
DEBUG(2,("_winreg_RestoreKey: Restoring [%s] from %s in share %s\n", regkey->name, fname, lp_servicename(snum) ));
return restore_registry_key( regkey, fname );
-
- return WERR_NOT_SUPPORTED;
}
/********************************************************************
@@ -1130,6 +1128,7 @@ WERROR _winreg_SaveKeyEx(pipes_struct *p)
/* fill in your code here if you think this call should
do anything */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -1472,6 +1471,7 @@ WERROR _winreg_UnLoadKey(pipes_struct *p)
/* fill in your code here if you think this call should
do anything */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -1483,6 +1483,7 @@ WERROR _winreg_ReplaceKey(pipes_struct *p)
/* fill in your code here if you think this call should
do anything */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -1494,6 +1495,7 @@ WERROR _winreg_LoadKey(pipes_struct *p, struct policy_handle *handle, struct win
/* fill in your code here if you think this call should
do anything */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -1505,6 +1507,7 @@ WERROR _winreg_NotifyChangeKeyValue(pipes_struct *p, struct policy_handle *handl
/* fill in your code here if you think this call should
do anything */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -1516,6 +1519,7 @@ WERROR _winreg_QueryMultipleValues(pipes_struct *p, struct policy_handle *key_ha
/* fill in your code here if you think this call should
do anything */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -1527,6 +1531,7 @@ WERROR _winreg_QueryMultipleValues2(pipes_struct *p)
/* fill in your code here if you think this call should
do anything */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
diff --git a/source3/rpc_server/srv_wkssvc_nt.c b/source3/rpc_server/srv_wkssvc_nt.c
index 79e9337e88..3ed1cbe682 100644
--- a/source3/rpc_server/srv_wkssvc_nt.c
+++ b/source3/rpc_server/srv_wkssvc_nt.c
@@ -86,6 +86,7 @@ WERROR _wkssvc_NetWkstaSetInfo( pipes_struct *p, const char *server_name,
uint32_t *parm_error )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -100,6 +101,7 @@ WERROR _wkssvc_NetWkstaEnumUsers( pipes_struct *p, const char *server_name,
uint32_t *resumehandle )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -109,6 +111,7 @@ WERROR _wkssvc_NetWkstaEnumUsers( pipes_struct *p, const char *server_name,
WERROR _WKSSVC_NETRWKSTAUSERGETINFO( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -118,6 +121,7 @@ WERROR _WKSSVC_NETRWKSTAUSERGETINFO( pipes_struct *p )
WERROR _WKSSVC_NETRWKSTAUSERSETINFO( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -127,6 +131,7 @@ WERROR _WKSSVC_NETRWKSTAUSERSETINFO( pipes_struct *p )
WERROR _wkssvc_NetWkstaTransportEnum( pipes_struct *p, const char *server_name, uint32_t *level, union wkssvc_NetWkstaTransportCtr *ctr, uint32_t max_buffer, uint32_t *totalentries, uint32_t *resume_handle)
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -136,6 +141,7 @@ WERROR _wkssvc_NetWkstaTransportEnum( pipes_struct *p, const char *server_name,
WERROR _WKSSVC_NETRWKSTATRANSPORTADD( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -145,6 +151,7 @@ WERROR _WKSSVC_NETRWKSTATRANSPORTADD( pipes_struct *p )
WERROR _WKSSVC_NETRWKSTATRANSPORTDEL( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -154,6 +161,7 @@ WERROR _WKSSVC_NETRWKSTATRANSPORTDEL( pipes_struct *p )
WERROR _WKSSVC_NETRUSEADD( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -163,6 +171,7 @@ WERROR _WKSSVC_NETRUSEADD( pipes_struct *p )
WERROR _WKSSVC_NETRUSEGETINFO( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -172,6 +181,7 @@ WERROR _WKSSVC_NETRUSEGETINFO( pipes_struct *p )
WERROR _WKSSVC_NETRUSEDEL( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -181,6 +191,7 @@ WERROR _WKSSVC_NETRUSEDEL( pipes_struct *p )
WERROR _WKSSVC_NETRUSEENUM( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -190,6 +201,7 @@ WERROR _WKSSVC_NETRUSEENUM( pipes_struct *p )
WERROR _WKSSVC_NETRMESSAGEBUFFERSEND( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -199,6 +211,7 @@ WERROR _WKSSVC_NETRMESSAGEBUFFERSEND( pipes_struct *p )
WERROR _WKSSVC_NETRWORKSTATIONSTATISTICSGET( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -208,6 +221,7 @@ WERROR _WKSSVC_NETRWORKSTATIONSTATISTICSGET( pipes_struct *p )
WERROR _WKSSVC_NETRLOGONDOMAINNAMEADD( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -217,6 +231,7 @@ WERROR _WKSSVC_NETRLOGONDOMAINNAMEADD( pipes_struct *p )
WERROR _WKSSVC_NETRLOGONDOMAINNAMEDEL( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -226,6 +241,7 @@ WERROR _WKSSVC_NETRLOGONDOMAINNAMEDEL( pipes_struct *p )
WERROR _WKSSVC_NETRJOINDOMAIN( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -235,6 +251,7 @@ WERROR _WKSSVC_NETRJOINDOMAIN( pipes_struct *p )
WERROR _WKSSVC_NETRUNJOINDOMAIN( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -244,6 +261,7 @@ WERROR _WKSSVC_NETRUNJOINDOMAIN( pipes_struct *p )
WERROR _WKSSVC_NETRRENAMEMACHINEINDOMAIN( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -253,6 +271,7 @@ WERROR _WKSSVC_NETRRENAMEMACHINEINDOMAIN( pipes_struct *p )
WERROR _WKSSVC_NETRVALIDATENAME( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -262,6 +281,7 @@ WERROR _WKSSVC_NETRVALIDATENAME( pipes_struct *p )
WERROR _WKSSVC_NETRGETJOININFORMATION( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -271,6 +291,7 @@ WERROR _WKSSVC_NETRGETJOININFORMATION( pipes_struct *p )
WERROR _WKSSVC_NETRGETJOINABLEOUS( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -280,6 +301,7 @@ WERROR _WKSSVC_NETRGETJOINABLEOUS( pipes_struct *p )
WERROR _wkssvc_NetrJoinDomain2(pipes_struct *p, const char *server_name, const char *domain_name, const char *account_name, const char *admin_account, struct wkssvc_PasswordBuffer *encrypted_password, uint32_t join_flags)
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -289,6 +311,7 @@ WERROR _wkssvc_NetrJoinDomain2(pipes_struct *p, const char *server_name, const c
WERROR _wkssvc_NetrUnjoinDomain2(pipes_struct *p, const char *server_name, const char *account, struct wkssvc_PasswordBuffer *encrypted_password, uint32_t unjoin_flags)
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -298,6 +321,7 @@ WERROR _wkssvc_NetrUnjoinDomain2(pipes_struct *p, const char *server_name, const
WERROR _wkssvc_NetrRenameMachineInDomain2(pipes_struct *p, const char *server_name, const char *NewMachineName, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t RenameOptions)
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -307,6 +331,7 @@ WERROR _wkssvc_NetrRenameMachineInDomain2(pipes_struct *p, const char *server_na
WERROR _WKSSVC_NETRVALIDATENAME2( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -316,6 +341,7 @@ WERROR _WKSSVC_NETRVALIDATENAME2( pipes_struct *p )
WERROR _WKSSVC_NETRGETJOINABLEOUS2( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -325,6 +351,7 @@ WERROR _WKSSVC_NETRGETJOINABLEOUS2( pipes_struct *p )
WERROR _wkssvc_NetrAddAlternateComputerName(pipes_struct *p, const char *server_name, const char *NewAlternateMachineName, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t Reserved)
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -334,6 +361,7 @@ WERROR _wkssvc_NetrAddAlternateComputerName(pipes_struct *p, const char *server_
WERROR _wkssvc_NetrRemoveAlternateComputerName(pipes_struct *p, const char *server_name, const char *AlternateMachineNameToRemove, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t Reserved)
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -343,6 +371,7 @@ WERROR _wkssvc_NetrRemoveAlternateComputerName(pipes_struct *p, const char *serv
WERROR _WKSSVC_NETRSETPRIMARYCOMPUTERNAME( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}
@@ -352,6 +381,7 @@ WERROR _WKSSVC_NETRSETPRIMARYCOMPUTERNAME( pipes_struct *p )
WERROR _WKSSVC_NETRENUMERATECOMPUTERNAMES( pipes_struct *p )
{
/* FIXME: Add implementation code here */
+ p->rng_fault_state = True;
return WERR_NOT_SUPPORTED;
}