From 4980baf2e1f1de2715b1c0243ea7e79668d87501 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Tue, 10 Oct 2006 08:39:11 +0000 Subject: 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) --- source3/rpc_server/srv_dfs_nt.c | 18 ++ source3/rpc_server/srv_lsa.c | 159 ++---------- source3/rpc_server/srv_lsa_nt.c | 491 ++++++++++++++++++++++++++++++++++++- source3/rpc_server/srv_srvsvc_nt.c | 35 +++ source3/rpc_server/srv_winreg_nt.c | 9 +- source3/rpc_server/srv_wkssvc_nt.c | 30 +++ 6 files changed, 596 insertions(+), 146 deletions(-) (limited to 'source3/rpc_server') 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; } -- cgit