From 4e18040236c0f51a526383800fb1de8a65ab3175 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Wed, 19 Nov 2003 09:15:46 +0000 Subject: srvsvc IDL and test code from metze. Thanks! (This used to be commit 54d3cb22dc0ddc46eb114aa104e0660b3a437cb2) --- source4/torture/rpc/srvsvc.c | 296 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 296 insertions(+) create mode 100644 source4/torture/rpc/srvsvc.c (limited to 'source4/torture/rpc') diff --git a/source4/torture/rpc/srvsvc.c b/source4/torture/rpc/srvsvc.c new file mode 100644 index 0000000000..384959f26a --- /dev/null +++ b/source4/torture/rpc/srvsvc.c @@ -0,0 +1,296 @@ +/* + Unix SMB/CIFS implementation. + test suite for srvsvc rpc operations + + Copyright (C) Stefan (metze) Metzmacher 2003 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +*/ + +#include "includes.h" + + +static BOOL test_NetConnEnum(struct dcerpc_pipe *p, + TALLOC_CTX *mem_ctx) +{ + NTSTATUS status; + struct srvsvc_NetConnEnum r; + struct srvsvc_NetConnCtr0 c0; + uint32 levels[] = {0, 1}; + int i; + BOOL ret = True; + + r.in.server_unc = talloc_asprintf(mem_ctx,"\\\\%s",dcerpc_server_name(p)); + r.in.path = talloc_asprintf(mem_ctx,"%s","ADMIN$"); + r.in.ctr.subctr.ctr0 = &c0; + r.in.ctr.subctr.ctr0->count = 0; + r.in.ctr.subctr.ctr0->array = NULL; + r.in.preferred_len = (uint32)-1; + r.in.resume_handle = NULL; + + for (i=0;icount = 0; + r.in.ctr.subctr.ctr3->array = NULL; + r.in.preferred_len = (uint32)4096; + r.in.resume_handle = NULL; + + for (i=0;icount = 0; + r.in.ctr.subctr.ctr0->array = NULL; + r.in.preferred_len = (uint32)-1; + r.in.resume_handle = NULL; + + for (i=0;icount = 0; + r.in.ctr.subctr.ctr0->array = NULL; + r.in.preferred_len = (uint32)-1; + r.in.resume_handle = NULL; + + for (i=0;icount = 0; + r.in.ctr.subctr.ctr0->array = NULL; + r.in.preferred_len = (uint32)-1; + r.in.resume_handle = NULL; + + for (i=0;icount = 0; + r.in.ctr.subctr.ctr0->array = NULL; + r.in.preferred_len = (uint32)-1; + r.in.resume_handle = NULL; + + for (i=0;iflags |= DCERPC_DEBUG_PRINT_BOTH; + + if (!test_NetConnEnum(p, mem_ctx)) { + ret = False; + } + + if (!test_NetFileEnum(p, mem_ctx)) { + ret = False; + } + + if (!test_NetSessEnum(p, mem_ctx)) { + ret = False; + } + + if (!test_NetShareEnumAll(p, mem_ctx)) { + ret = False; + } +#if 0 + if (!test_NetDiskEnum(p, mem_ctx)) { + ret = False; + } + + if (!test_NetTransportEnum(p, mem_ctx)) { + ret = False; + } +#endif + if (!test_NetShareEnum(p, mem_ctx)) { + ret = False; + } + + torture_rpc_close(p); + + return ret; +} -- cgit