summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/include/rpc_lsa.h23
-rw-r--r--source3/rpc_client/cli_lsarpc.c85
-rw-r--r--source3/rpc_parse/parse_lsa.c165
3 files changed, 0 insertions, 273 deletions
diff --git a/source3/include/rpc_lsa.h b/source3/include/rpc_lsa.h
index 7a8520111d..724a980b45 100644
--- a/source3/include/rpc_lsa.h
+++ b/source3/include/rpc_lsa.h
@@ -137,29 +137,6 @@
/*******************************************************/
-typedef struct {
- POLICY_HND pol;
- uint32 enum_context;
- uint32 preferred_len; /* preferred maximum length */
-} LSA_Q_ENUM_TRUST_DOM;
-
-typedef struct {
- UNISTR4 name;
- DOM_SID2 *sid;
-} DOMAIN_INFO;
-
-typedef struct {
- uint32 count;
- DOMAIN_INFO *domains;
-} DOMAIN_LIST;
-
-typedef struct {
- uint32 enum_context;
- uint32 count;
- DOMAIN_LIST *domlist;
- NTSTATUS status;
-} LSA_R_ENUM_TRUST_DOM;
-
/*******************************************************/
#define MAX_REF_DOMAINS 32
diff --git a/source3/rpc_client/cli_lsarpc.c b/source3/rpc_client/cli_lsarpc.c
index d547c3e7be..c42938d6e9 100644
--- a/source3/rpc_client/cli_lsarpc.c
+++ b/source3/rpc_client/cli_lsarpc.c
@@ -452,91 +452,6 @@ NTSTATUS rpccli_lsa_lookup_names(struct rpc_pipe_client *cli,
return result;
}
-/**
- * Enumerate list of trusted domains
- *
- * @param cli client state (cli_state) structure of the connection
- * @param mem_ctx memory context
- * @param pol opened lsa policy handle
- * @param enum_ctx enumeration context ie. index of first returned domain entry
- * @param pref_num_domains preferred max number of entries returned in one response
- * @param num_domains total number of trusted domains returned by response
- * @param domain_names returned trusted domain names
- * @param domain_sids returned trusted domain sids
- *
- * @return nt status code of response
- **/
-
-NTSTATUS rpccli_lsa_enum_trust_dom(struct rpc_pipe_client *cli,
- TALLOC_CTX *mem_ctx,
- POLICY_HND *pol, uint32 *enum_ctx,
- uint32 *num_domains,
- char ***domain_names, DOM_SID **domain_sids)
-{
- prs_struct qbuf, rbuf;
- LSA_Q_ENUM_TRUST_DOM in;
- LSA_R_ENUM_TRUST_DOM out;
- int i;
- fstring tmp;
-
- ZERO_STRUCT(in);
- ZERO_STRUCT(out);
-
- /* 64k is enough for about 2000 trusted domains */
-
- init_q_enum_trust_dom(&in, pol, *enum_ctx, 0x10000);
-
- CLI_DO_RPC( cli, mem_ctx, PI_LSARPC, LSA_ENUMTRUSTDOM,
- in, out,
- qbuf, rbuf,
- lsa_io_q_enum_trust_dom,
- lsa_io_r_enum_trust_dom,
- NT_STATUS_UNSUCCESSFUL );
-
-
- /* check for an actual error */
-
- if ( !NT_STATUS_IS_OK(out.status)
- && !NT_STATUS_EQUAL(out.status, NT_STATUS_NO_MORE_ENTRIES)
- && !NT_STATUS_EQUAL(out.status, STATUS_MORE_ENTRIES) )
- {
- return out.status;
- }
-
- /* Return output parameters */
-
- *num_domains = out.count;
- *enum_ctx = out.enum_context;
-
- if ( out.count ) {
-
- /* Allocate memory for trusted domain names and sids */
-
- if ( !(*domain_names = TALLOC_ARRAY(mem_ctx, char *, out.count)) ) {
- DEBUG(0, ("cli_lsa_enum_trust_dom(): out of memory\n"));
- return NT_STATUS_NO_MEMORY;
- }
-
- if ( !(*domain_sids = TALLOC_ARRAY(mem_ctx, DOM_SID, out.count)) ) {
- DEBUG(0, ("cli_lsa_enum_trust_dom(): out of memory\n"));
- return NT_STATUS_NO_MEMORY;
- }
-
- /* Copy across names and sids */
-
- for (i = 0; i < out.count; i++) {
-
- rpcstr_pull( tmp, out.domlist->domains[i].name.string->buffer,
- sizeof(tmp), out.domlist->domains[i].name.length, 0);
- (*domain_names)[i] = talloc_strdup(mem_ctx, tmp);
-
- sid_copy(&(*domain_sids)[i], &out.domlist->domains[i].sid->sid );
- }
- }
-
- return out.status;
-}
-
/** Enumerate list of SIDs */
NTSTATUS rpccli_lsa_enum_sids(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
diff --git a/source3/rpc_parse/parse_lsa.c b/source3/rpc_parse/parse_lsa.c
index 12dd6e126b..c4a7c057a6 100644
--- a/source3/rpc_parse/parse_lsa.c
+++ b/source3/rpc_parse/parse_lsa.c
@@ -216,171 +216,6 @@ void init_lsa_obj_attr(struct lsa_ObjectAttribute *r,
}
/*******************************************************************
-makes an LSA_Q_ENUM_TRUST_DOM structure.
-********************************************************************/
-bool init_q_enum_trust_dom(LSA_Q_ENUM_TRUST_DOM * q_e, POLICY_HND *pol,
- uint32 enum_context, uint32 preferred_len)
-{
- DEBUG(5, ("init_q_enum_trust_dom\n"));
-
- q_e->pol = *pol;
- q_e->enum_context = enum_context;
- q_e->preferred_len = preferred_len;
-
- return True;
-}
-
-/*******************************************************************
- Reads or writes an LSA_Q_ENUM_TRUST_DOM structure.
-********************************************************************/
-
-bool lsa_io_q_enum_trust_dom(const char *desc, LSA_Q_ENUM_TRUST_DOM *q_e,
- prs_struct *ps, int depth)
-{
- prs_debug(ps, depth, desc, "lsa_io_q_enum_trust_dom");
- depth++;
-
- if(!smb_io_pol_hnd("", &q_e->pol, ps, depth))
- return False;
-
- if(!prs_uint32("enum_context ", ps, depth, &q_e->enum_context))
- return False;
- if(!prs_uint32("preferred_len", ps, depth, &q_e->preferred_len))
- return False;
-
- return True;
-}
-
-/*******************************************************************
- Inits an LSA_R_ENUM_TRUST_DOM structure.
-********************************************************************/
-
-void init_r_enum_trust_dom(TALLOC_CTX *ctx, LSA_R_ENUM_TRUST_DOM *out,
- uint32 enum_context, uint32 num_domains,
- struct trustdom_info **td)
-{
- unsigned int i;
-
- DEBUG(5, ("init_r_enum_trust_dom\n"));
-
- out->enum_context = enum_context;
- out->count = num_domains;
-
- if ( num_domains != 0 ) {
-
- /* allocate container memory */
-
- out->domlist = TALLOC_P( ctx, DOMAIN_LIST );
-
- if ( !out->domlist ) {
- out->status = NT_STATUS_NO_MEMORY;
- return;
- }
-
- if (out->count) {
- out->domlist->domains = TALLOC_ARRAY( ctx, DOMAIN_INFO,
- out->count );
- if ( !out->domlist->domains ) {
- out->status = NT_STATUS_NO_MEMORY;
- return;
- }
- } else {
- out->domlist->domains = NULL;
- }
-
- out->domlist->count = out->count;
-
- /* initialize the list of domains and their sid */
-
- for (i = 0; i < num_domains; i++) {
- smb_ucs2_t *name;
- if ( !(out->domlist->domains[i].sid =
- TALLOC_P(ctx, DOM_SID2)) ) {
- out->status = NT_STATUS_NO_MEMORY;
- return;
- }
-
- init_dom_sid2(out->domlist->domains[i].sid,
- &(td[i])->sid);
- if (push_ucs2_talloc(ctx, &name, (td[i])->name) == (size_t)-1){
- out->status = NT_STATUS_NO_MEMORY;
- return;
- }
- init_unistr4_w(ctx, &out->domlist->domains[i].name,
- name);
- }
- }
-
-}
-
-/*******************************************************************
-********************************************************************/
-
-bool lsa_io_domain_list( const char *desc, prs_struct *ps, int depth, DOMAIN_LIST *domlist )
-{
- int i;
-
- prs_debug(ps, depth, desc, "lsa_io_domain_list");
- depth++;
-
- if(!prs_uint32("count", ps, depth, &domlist->count))
- return False;
-
- if ( domlist->count == 0 )
- return True;
-
- if ( UNMARSHALLING(ps) ) {
- if ( !(domlist->domains = PRS_ALLOC_MEM( ps, DOMAIN_INFO, domlist->count )) )
- return False;
- }
-
- /* headers */
-
- for ( i=0; i<domlist->count; i++ ) {
- if ( !prs_unistr4_hdr("name_header", ps, depth, &domlist->domains[i].name) )
- return False;
- if ( !smb_io_dom_sid2_p("sid_header", ps, depth, &domlist->domains[i].sid) )
- return False;
- }
-
- /* data */
-
- for ( i=0; i<domlist->count; i++ ) {
- if ( !prs_unistr4_str("name", ps, depth, &domlist->domains[i].name) )
- return False;
- if( !smb_io_dom_sid2("sid", domlist->domains[i].sid, ps, depth) )
- return False;
- }
-
- return True;
-}
-
-/*******************************************************************
- Reads or writes an LSA_R_ENUM_TRUST_DOM structure.
-********************************************************************/
-
-bool lsa_io_r_enum_trust_dom(const char *desc, LSA_R_ENUM_TRUST_DOM *out,
- prs_struct *ps, int depth)
-{
- prs_debug(ps, depth, desc, "lsa_io_r_enum_trust_dom");
- depth++;
-
- if(!prs_uint32("enum_context", ps, depth, &out->enum_context))
- return False;
-
- if(!prs_uint32("count", ps, depth, &out->count))
- return False;
-
- if ( !prs_pointer("trusted_domains", ps, depth, (void*)&out->domlist, sizeof(DOMAIN_LIST), (PRS_POINTER_CAST)lsa_io_domain_list))
- return False;
-
- if(!prs_ntstatus("status", ps, depth, &out->status))
- return False;
-
- return True;
-}
-
-/*******************************************************************
Inits a LSA_SID_ENUM structure.
********************************************************************/