From 8ab9696bfb5e127a35ab31e7e7746388a8f8a365 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Thu, 10 Apr 2008 21:52:03 +0200 Subject: Split out private headers in libnetapi. Guenther (This used to be commit dd6251d51472a96bfc5ba3d62ea788c8924d4c6b) --- source3/lib/netapi/netapi_private.h | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 source3/lib/netapi/netapi_private.h (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h new file mode 100644 index 0000000000..2591a7bc09 --- /dev/null +++ b/source3/lib/netapi/netapi_private.h @@ -0,0 +1,32 @@ +/* + * Unix SMB/CIFS implementation. + * NetApi Support + * Copyright (C) Guenther Deschner 2008 + * + * 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 3 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, see . + */ + +#ifndef __LIB_NETAPI_PRIVATE_H__ +#define __LIB_NETAPI_PRIVATE_H__ + +NET_API_STATUS libnetapi_get_password(struct libnetapi_ctx *ctx, char **password); +NET_API_STATUS libnetapi_get_username(struct libnetapi_ctx *ctx, char **username); +NET_API_STATUS libnetapi_set_error_string(struct libnetapi_ctx *ctx, const char *format, ...); +NET_API_STATUS libnetapi_get_debuglevel(struct libnetapi_ctx *ctx, char **debuglevel); + +WERROR libnetapi_open_ipc_connection(struct libnetapi_ctx *ctx, + const char *server_name, + struct cli_state **cli); +WERROR libnetapi_shutdown_cm(struct libnetapi_ctx *ctx); +#endif -- cgit From 3d5aecd2b940215c2566b2e429c2cc3803ff0ad4 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Thu, 10 Apr 2008 22:42:07 +0200 Subject: Add libnetapi_open_pipe, inspired by the cli_cm_ interface. Guenther (This used to be commit 87d8fc338f6e6b48691bff3eeebfc00c5d408ff7) --- source3/lib/netapi/netapi_private.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index 2591a7bc09..a575f42f4e 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -29,4 +29,8 @@ WERROR libnetapi_open_ipc_connection(struct libnetapi_ctx *ctx, const char *server_name, struct cli_state **cli); WERROR libnetapi_shutdown_cm(struct libnetapi_ctx *ctx); +WERROR libnetapi_open_pipe(struct libnetapi_ctx *ctx, + struct cli_state *cli, + int pipe_idx, + struct rpc_pipe_client **pipe_cli); #endif -- cgit From 31c185011fc70038f1f7fad3049f782bdba49688 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Mon, 2 Jun 2008 17:29:55 +0200 Subject: netapi: add libnetapi_samr_open_domain(). Guenther (This used to be commit a99906f661faa104da4b40707597ceb4542548f8) --- source3/lib/netapi/netapi_private.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index a575f42f4e..c788222ad3 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -33,4 +33,11 @@ WERROR libnetapi_open_pipe(struct libnetapi_ctx *ctx, struct cli_state *cli, int pipe_idx, struct rpc_pipe_client **pipe_cli); +NTSTATUS libnetapi_samr_open_domain(TALLOC_CTX *mem_ctx, + struct rpc_pipe_client *pipe_cli, + uint32_t connect_mask, + uint32_t domain_mask, + struct policy_handle *connect_handle, + struct policy_handle *domain_handle, + struct dom_sid2 **domain_sid); #endif -- cgit From b652e5b4753afd8916d347d5c8ef6f54ca140097 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Mon, 2 Jun 2008 23:55:45 +0200 Subject: netapi: let libnetapi_samr_open_domain return WERROR. Guenther (This used to be commit 3d037a07e015a3af75dde054cef4c0bb7795fbb5) --- source3/lib/netapi/netapi_private.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index c788222ad3..69e68ab733 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -33,11 +33,11 @@ WERROR libnetapi_open_pipe(struct libnetapi_ctx *ctx, struct cli_state *cli, int pipe_idx, struct rpc_pipe_client **pipe_cli); -NTSTATUS libnetapi_samr_open_domain(TALLOC_CTX *mem_ctx, - struct rpc_pipe_client *pipe_cli, - uint32_t connect_mask, - uint32_t domain_mask, - struct policy_handle *connect_handle, - struct policy_handle *domain_handle, - struct dom_sid2 **domain_sid); +WERROR libnetapi_samr_open_domain(TALLOC_CTX *mem_ctx, + struct rpc_pipe_client *pipe_cli, + uint32_t connect_mask, + uint32_t domain_mask, + struct policy_handle *connect_handle, + struct policy_handle *domain_handle, + struct dom_sid2 **domain_sid); #endif -- cgit From 56bdfad87f69963d65ceb8f7c780a1bd887c1fea Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Tue, 3 Jun 2008 00:13:39 +0200 Subject: netapi: add libnetapi_samr_open_builtin_domain(). Guenther (This used to be commit f15a7f9ab1da88369185beda267f3e67a3b36191) --- source3/lib/netapi/netapi_private.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index 69e68ab733..3ce078c2b6 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -40,4 +40,11 @@ WERROR libnetapi_samr_open_domain(TALLOC_CTX *mem_ctx, struct policy_handle *connect_handle, struct policy_handle *domain_handle, struct dom_sid2 **domain_sid); +WERROR libnetapi_samr_open_builtin_domain(TALLOC_CTX *mem_ctx, + struct rpc_pipe_client *pipe_cli, + uint32_t connect_mask, + uint32_t builtin_mask, + struct policy_handle *connect_handle, + struct policy_handle *builtin_handle); + #endif -- cgit From 3f0da66d5cae7efb600080c054ab52ed5b5a650f Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Tue, 1 Jul 2008 20:14:36 +0200 Subject: netapi: add libnetapi_private_ctx and init function. Guenther (This used to be commit 45fff2d37ae21c76d100f66d9154f6add446f380) --- source3/lib/netapi/netapi_private.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index 3ce078c2b6..c913fe789d 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -20,6 +20,24 @@ #ifndef __LIB_NETAPI_PRIVATE_H__ #define __LIB_NETAPI_PRIVATE_H__ +struct libnetapi_private_ctx { + struct { + const char *domain_name; + struct dom_sid *domain_sid; + struct rpc_pipe_client *cli; + + uint32_t connect_mask; + struct policy_handle connect_handle; + + uint32_t domain_mask; + struct policy_handle domain_handle; + + uint32_t builtin_mask; + struct policy_handle builtin_handle; + } samr; + +}; + NET_API_STATUS libnetapi_get_password(struct libnetapi_ctx *ctx, char **password); NET_API_STATUS libnetapi_get_username(struct libnetapi_ctx *ctx, char **username); NET_API_STATUS libnetapi_set_error_string(struct libnetapi_ctx *ctx, const char *format, ...); -- cgit From 3b667f90aaefe3c5d064b18542ae3c5b3d4771cd Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Thu, 17 Jul 2008 19:47:59 +0200 Subject: netapi: add libnetapi_samr_close_domain/connect_handle. Guenther (This used to be commit b042787ec61bb5cb98f882ac7be8df1691a78921) --- source3/lib/netapi/netapi_private.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index c913fe789d..cb08ed0394 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -64,5 +64,9 @@ WERROR libnetapi_samr_open_builtin_domain(TALLOC_CTX *mem_ctx, uint32_t builtin_mask, struct policy_handle *connect_handle, struct policy_handle *builtin_handle); +void libnetapi_samr_close_domain_handle(struct libnetapi_ctx *ctx, + struct policy_handle *handle); +void libnetapi_samr_close_connect_handle(struct libnetapi_ctx *ctx, + struct policy_handle *handle); #endif -- cgit From 4704864338b62a57afb86986ed2d4a0ce0a97020 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Thu, 17 Jul 2008 19:56:25 +0200 Subject: netapi: add libnetapi_samr_close_builtin_handle(). Guenther (This used to be commit 05cad0d8b4205c052c607b1d36c121bb4c226ab1) --- source3/lib/netapi/netapi_private.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index cb08ed0394..db4eb6f0a3 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -66,6 +66,8 @@ WERROR libnetapi_samr_open_builtin_domain(TALLOC_CTX *mem_ctx, struct policy_handle *builtin_handle); void libnetapi_samr_close_domain_handle(struct libnetapi_ctx *ctx, struct policy_handle *handle); +void libnetapi_samr_close_builtin_handle(struct libnetapi_ctx *ctx, + struct policy_handle *handle); void libnetapi_samr_close_connect_handle(struct libnetapi_ctx *ctx, struct policy_handle *handle); -- cgit From 6fa58fdc07743e5db71d9f27b67d14d8103aa2e9 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Thu, 17 Jul 2008 19:43:34 +0200 Subject: netapi: use private samr structure in libnetapi_samr_open_domain(). Guenther (This used to be commit 3c63ebfc00cda0334802bff1883ebbc3138a70f1) --- source3/lib/netapi/netapi_private.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index db4eb6f0a3..246672a349 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -51,7 +51,7 @@ WERROR libnetapi_open_pipe(struct libnetapi_ctx *ctx, struct cli_state *cli, int pipe_idx, struct rpc_pipe_client **pipe_cli); -WERROR libnetapi_samr_open_domain(TALLOC_CTX *mem_ctx, +WERROR libnetapi_samr_open_domain(struct libnetapi_ctx *mem_ctx, struct rpc_pipe_client *pipe_cli, uint32_t connect_mask, uint32_t domain_mask, -- cgit From bbdf38d1d73e0424c3b4a6ee27c11b6751af2582 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Thu, 17 Jul 2008 20:16:10 +0200 Subject: netapi: use private samr structure in libnetapi_samr_open_builtin(). Guenther (This used to be commit 538ac493b71b4c880bb6fb0fc5fc2f15e1a19f95) --- source3/lib/netapi/netapi_private.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index 246672a349..37c837d897 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -58,7 +58,7 @@ WERROR libnetapi_samr_open_domain(struct libnetapi_ctx *mem_ctx, struct policy_handle *connect_handle, struct policy_handle *domain_handle, struct dom_sid2 **domain_sid); -WERROR libnetapi_samr_open_builtin_domain(TALLOC_CTX *mem_ctx, +WERROR libnetapi_samr_open_builtin_domain(struct libnetapi_ctx *mem_ctx, struct rpc_pipe_client *pipe_cli, uint32_t connect_mask, uint32_t builtin_mask, -- cgit From 352d40c0664919530f394c83fbbb7eb53adb1f31 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Thu, 17 Jul 2008 19:06:02 +0200 Subject: netapi: add libnetapi_samr_free(). Guenther (This used to be commit 3228088a0954ac25584d06a681f4e0615dee425c) --- source3/lib/netapi/netapi_private.h | 1 + 1 file changed, 1 insertion(+) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index 37c837d897..915d60617f 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -70,5 +70,6 @@ void libnetapi_samr_close_builtin_handle(struct libnetapi_ctx *ctx, struct policy_handle *handle); void libnetapi_samr_close_connect_handle(struct libnetapi_ctx *ctx, struct policy_handle *handle); +void libnetapi_samr_free(struct libnetapi_ctx *ctx); #endif -- cgit From 798b56edaec88206b0d61d2852af41777d53aef2 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Sun, 20 Jul 2008 17:59:30 +0200 Subject: Refactoring: libnetapi_open_pipe takes an interface instead of pipe_idx (This used to be commit 726e56c72fdb685ab5eddefd2fd8b043dc38d6ad) --- source3/lib/netapi/netapi_private.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index 915d60617f..ef6e7cf2b7 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -49,8 +49,8 @@ WERROR libnetapi_open_ipc_connection(struct libnetapi_ctx *ctx, WERROR libnetapi_shutdown_cm(struct libnetapi_ctx *ctx); WERROR libnetapi_open_pipe(struct libnetapi_ctx *ctx, struct cli_state *cli, - int pipe_idx, - struct rpc_pipe_client **pipe_cli); + const struct ndr_syntax_id *interface, + struct rpc_pipe_client **presult); WERROR libnetapi_samr_open_domain(struct libnetapi_ctx *mem_ctx, struct rpc_pipe_client *pipe_cli, uint32_t connect_mask, -- cgit From 87b9c9ade21a68d4428ff4aadd32f02f86e78a40 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Tue, 12 Aug 2008 15:25:06 +0200 Subject: netapi: make non-implemented local calls default to remote "localhost" calls. Guenther (cherry picked from commit aa70e588803e3767796dc958b139f4ee464d8626) (This used to be commit 9927ac6eec9fe1fecfedb97b61c4f93379fc8722) --- source3/lib/netapi/netapi_private.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index ef6e7cf2b7..5c60e994b1 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -20,6 +20,13 @@ #ifndef __LIB_NETAPI_PRIVATE_H__ #define __LIB_NETAPI_PRIVATE_H__ +#define LIBNETAPI_REDIRECT_TO_LOCALHOST(ctx, r, fn) \ + DEBUG(10,("redirecting call %s to localhost\n", #fn)); \ + if (!r->in.server_name) { \ + r->in.server_name = "localhost"; \ + } \ + return fn ## _r(ctx, r); + struct libnetapi_private_ctx { struct { const char *domain_name; -- cgit From fcd10d26a407bef323cb8beda39a21aeb1e5b144 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Tue, 12 Aug 2008 17:59:23 +0200 Subject: netapi: make libnetapi_open_ipc_connection static. Guenther (cherry picked from commit 0259914f8ff04514a8395d8e1af61aadd50c5efb) (This used to be commit 7edc671cc1007ae216e7efdbcdb9cfa1e547dca5) --- source3/lib/netapi/netapi_private.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index 5c60e994b1..4d4c12ae85 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -50,13 +50,11 @@ NET_API_STATUS libnetapi_get_username(struct libnetapi_ctx *ctx, char **username NET_API_STATUS libnetapi_set_error_string(struct libnetapi_ctx *ctx, const char *format, ...); NET_API_STATUS libnetapi_get_debuglevel(struct libnetapi_ctx *ctx, char **debuglevel); -WERROR libnetapi_open_ipc_connection(struct libnetapi_ctx *ctx, - const char *server_name, - struct cli_state **cli); WERROR libnetapi_shutdown_cm(struct libnetapi_ctx *ctx); WERROR libnetapi_open_pipe(struct libnetapi_ctx *ctx, - struct cli_state *cli, + const char *server_name, const struct ndr_syntax_id *interface, + struct cli_state **pcli, struct rpc_pipe_client **presult); WERROR libnetapi_samr_open_domain(struct libnetapi_ctx *mem_ctx, struct rpc_pipe_client *pipe_cli, -- cgit From 35c96827b4b1a453919184b554ba8b66bf0d3b42 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Mon, 8 Sep 2008 16:42:10 +0200 Subject: netapi: make add_GROUP_USERS_INFO_X_buffer non-static. Guenther (This used to be commit 87fc15d9b52bbb15550015cb106062d24c5674ba) --- source3/lib/netapi/netapi_private.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'source3/lib/netapi/netapi_private.h') diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index 4d4c12ae85..e6a2eb8e99 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -77,4 +77,11 @@ void libnetapi_samr_close_connect_handle(struct libnetapi_ctx *ctx, struct policy_handle *handle); void libnetapi_samr_free(struct libnetapi_ctx *ctx); +NTSTATUS add_GROUP_USERS_INFO_X_buffer(TALLOC_CTX *mem_ctx, + uint32_t level, + const char *group_name, + uint32_t attributes, + uint8_t **buffer, + uint32_t *num_entries); + #endif -- cgit