[SCM] Samba Shared Repository - branch v3-3-test updated -
release-3-2-0pre2-2893-gad10517
Günther Deschner
gd at samba.org
Tue Jun 17 18:01:09 GMT 2008
The branch, v3-3-test has been updated
via ad105177686da823ef9cce1c1bedaf0f84a49b8c (commit)
via 32a66131eb56e1c66b89e348141047c6b98cf35e (commit)
via 0bd69df7704789888eba2a07aba505dce037c4eb (commit)
via 383636aaca0e59fef8a010ba697e5edf9ce2648b (commit)
via 12669b12c25a64b02c0e49b3ef96cf317992b18c (commit)
from 4fd6bc61d0034659c5a89bf2eae188a04a3b41eb (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test
- Log -----------------------------------------------------------------
commit ad105177686da823ef9cce1c1bedaf0f84a49b8c
Author: Günther Deschner <gd at samba.org>
Date: Mon Jun 9 11:02:27 2008 +0200
netapi: use NetUserEnum filter in example code.
Guenther
commit 32a66131eb56e1c66b89e348141047c6b98cf35e
Author: Günther Deschner <gd at samba.org>
Date: Tue Jun 17 13:13:10 2008 +0200
netapi: add NetUserEnum filter constants to public headers.
Guenther
commit 0bd69df7704789888eba2a07aba505dce037c4eb
Author: Günther Deschner <gd at samba.org>
Date: Mon Jun 9 11:01:59 2008 +0200
netapi: implement NetUserEnum filters.
Guenther
commit 383636aaca0e59fef8a010ba697e5edf9ce2648b
Author: Günther Deschner <gd at samba.org>
Date: Mon Jun 9 11:01:09 2008 +0200
re-run make idl.
Guenther
commit 12669b12c25a64b02c0e49b3ef96cf317992b18c
Author: Günther Deschner <gd at samba.org>
Date: Mon Jun 9 11:00:23 2008 +0200
netapi: add NetUserEnum filter constants to IDL.
Guenther
-----------------------------------------------------------------------
Summary of changes:
source/lib/netapi/examples/user/user_enum.c | 2 +-
source/lib/netapi/netapi.h | 6 ++++++
source/lib/netapi/user.c | 23 ++++++++++++++++++++++-
source/librpc/gen_ndr/libnetapi.h | 5 +++++
source/librpc/idl/libnetapi.idl | 6 ++++++
5 files changed, 40 insertions(+), 2 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source/lib/netapi/examples/user/user_enum.c b/source/lib/netapi/examples/user/user_enum.c
index e1f6bda..569d5a6 100644
--- a/source/lib/netapi/examples/user/user_enum.c
+++ b/source/lib/netapi/examples/user/user_enum.c
@@ -71,7 +71,7 @@ int main(int argc, const char **argv)
do {
status = NetUserEnum(hostname,
0,
- 0,
+ FILTER_NORMAL_ACCOUNT,
&buffer,
(uint32_t)-1,
&entries_read,
diff --git a/source/lib/netapi/netapi.h b/source/lib/netapi/netapi.h
index d24e159..9496d77 100644
--- a/source/lib/netapi/netapi.h
+++ b/source/lib/netapi/netapi.h
@@ -69,6 +69,12 @@ struct DOMAIN_CONTROLLER_INFO {
const char * client_site_name;
};
+#define FILTER_TEMP_DUPLICATE_ACCOUNT ( 0x0001 )
+#define FILTER_NORMAL_ACCOUNT ( 0x0002 )
+#define FILTER_INTERDOMAIN_TRUST_ACCOUNT ( 0x0008 )
+#define FILTER_WORKSTATION_TRUST_ACCOUNT ( 0x0010 )
+#define FILTER_SERVER_TRUST_ACCOUNT ( 0x0020 )
+
struct SERVER_INFO_1005 {
const char * sv1005_comment;
};
diff --git a/source/lib/netapi/user.c b/source/lib/netapi/user.c
index f053732..53a307a 100644
--- a/source/lib/netapi/user.c
+++ b/source/lib/netapi/user.c
@@ -468,6 +468,7 @@ WERROR NetUserEnum_r(struct libnetapi_ctx *ctx,
struct dom_sid2 *domain_sid = NULL;
struct policy_handle domain_handle;
struct samr_SamArray *sam = NULL;
+ uint32_t filter = ACB_NORMAL;
NTSTATUS status;
WERROR werr;
@@ -512,11 +513,31 @@ WERROR NetUserEnum_r(struct libnetapi_ctx *ctx,
goto done;
}
+ switch (r->in.filter) {
+ case FILTER_NORMAL_ACCOUNT:
+ filter = ACB_NORMAL;
+ break;
+ case FILTER_TEMP_DUPLICATE_ACCOUNT:
+ filter = ACB_TEMPDUP;
+ break;
+ case FILTER_INTERDOMAIN_TRUST_ACCOUNT:
+ filter = ACB_DOMTRUST;
+ break;
+ case FILTER_WORKSTATION_TRUST_ACCOUNT:
+ filter = ACB_WSTRUST;
+ break;
+ case FILTER_SERVER_TRUST_ACCOUNT:
+ filter = ACB_SVRTRUST;
+ break;
+ default:
+ break;
+ }
+
status = rpccli_samr_EnumDomainUsers(pipe_cli,
ctx,
&domain_handle,
r->in.resume_handle,
- r->in.filter,
+ filter,
&sam,
r->in.prefmaxlen,
r->out.entries_read);
diff --git a/source/librpc/gen_ndr/libnetapi.h b/source/librpc/gen_ndr/libnetapi.h
index 8fc812c..5d2efcf 100644
--- a/source/librpc/gen_ndr/libnetapi.h
+++ b/source/librpc/gen_ndr/libnetapi.h
@@ -10,6 +10,11 @@
#define _HEADER_libnetapi
#define ERROR_MORE_DATA ( 234L )
+#define FILTER_TEMP_DUPLICATE_ACCOUNT ( 0x0001 )
+#define FILTER_NORMAL_ACCOUNT ( 0x0002 )
+#define FILTER_INTERDOMAIN_TRUST_ACCOUNT ( 0x0008 )
+#define FILTER_WORKSTATION_TRUST_ACCOUNT ( 0x0010 )
+#define FILTER_SERVER_TRUST_ACCOUNT ( 0x0020 )
enum NET_API_STATUS
#ifndef USE_UINT_ENUMS
{
diff --git a/source/librpc/idl/libnetapi.idl b/source/librpc/idl/libnetapi.idl
index 94a464d..07b640d 100644
--- a/source/librpc/idl/libnetapi.idl
+++ b/source/librpc/idl/libnetapi.idl
@@ -181,6 +181,12 @@ interface libnetapi
/* NetUserEnum */
/*******************************************/
+ const int FILTER_TEMP_DUPLICATE_ACCOUNT = 0x0001;
+ const int FILTER_NORMAL_ACCOUNT = 0x0002;
+ const int FILTER_INTERDOMAIN_TRUST_ACCOUNT = 0x0008;
+ const int FILTER_WORKSTATION_TRUST_ACCOUNT = 0x0010;
+ const int FILTER_SERVER_TRUST_ACCOUNT = 0x0020;
+
[nopush,nopull] NET_API_STATUS NetUserEnum(
[in,unique] string *server_name,
[in] uint32 level,
--
Samba Shared Repository
More information about the samba-cvs
mailing list