The branch, master has been updated via ab4b8c9c0438bc5afca17e3ebf05dde6f98bc0aa (commit) via 26b9c9370ce047ecc732082b2b554ffc295ae406 (commit) from baf78506895b8bd50433058ba0f18e1aaf8aeee5 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit ab4b8c9c0438bc5afca17e3ebf05dde6f98bc0aa Author: Günther Deschner <g...@samba.org> Date: Thu Apr 30 23:37:26 2009 +0200 s3-netapi: Fix Bug #6309: support remote unjoining of Windows 2003 or greater. Found by David Markey <ad...@dmarkey.com>. Thanks! Guenther commit 26b9c9370ce047ecc732082b2b554ffc295ae406 Author: Günther Deschner <g...@samba.org> Date: Thu Apr 30 23:36:24 2009 +0200 wkssvcs: add WKSSVC_JOIN_FLAGS_IGNORE_UNSUPPORTED_FLAGS join flag. Guenther ----------------------------------------------------------------------- Summary of changes: librpc/gen_ndr/ndr_wkssvc.c | 1 + librpc/gen_ndr/wkssvc.h | 1 + librpc/idl/wkssvc.idl | 1 + .../examples/netdomjoin-gui/netdomjoin-gui.c | 3 ++- source3/utils/net_dom.c | 3 ++- 5 files changed, 7 insertions(+), 2 deletions(-) Changeset truncated at 500 lines: diff --git a/librpc/gen_ndr/ndr_wkssvc.c b/librpc/gen_ndr/ndr_wkssvc.c index 050aced..760b4ee 100644 --- a/librpc/gen_ndr/ndr_wkssvc.c +++ b/librpc/gen_ndr/ndr_wkssvc.c @@ -5545,6 +5545,7 @@ _PUBLIC_ void ndr_print_wkssvc_joinflags(struct ndr_print *ndr, const char *name { ndr_print_uint32(ndr, name, r); ndr->depth++; + ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_IGNORE_UNSUPPORTED_FLAGS", WKSSVC_JOIN_FLAGS_IGNORE_UNSUPPORTED_FLAGS, r); ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME", WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME, r); ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT", WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT, r); ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_DEFER_SPN", WKSSVC_JOIN_FLAGS_DEFER_SPN, r); diff --git a/librpc/gen_ndr/wkssvc.h b/librpc/gen_ndr/wkssvc.h index 19aa126..42360a9 100644 --- a/librpc/gen_ndr/wkssvc.h +++ b/librpc/gen_ndr/wkssvc.h @@ -458,6 +458,7 @@ struct wkssvc_PasswordBuffer { }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */; /* bitmap wkssvc_joinflags */ +#define WKSSVC_JOIN_FLAGS_IGNORE_UNSUPPORTED_FLAGS ( 0x10000000 ) #define WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME ( 0x00000400 ) #define WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT ( 0x00000200 ) #define WKSSVC_JOIN_FLAGS_DEFER_SPN ( 0x00000100 ) diff --git a/librpc/idl/wkssvc.idl b/librpc/idl/wkssvc.idl index 9340990..9e92ed7 100644 --- a/librpc/idl/wkssvc.idl +++ b/librpc/idl/wkssvc.idl @@ -659,6 +659,7 @@ import "srvsvc.idl", "lsa.idl"; } wkssvc_PasswordBuffer; typedef [bitmap32bit] bitmap { + WKSSVC_JOIN_FLAGS_IGNORE_UNSUPPORTED_FLAGS = 0x10000000, WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME = 0x00000400, WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT = 0x00000200, /* TRUE: defer setting the SPN and dNSHostName until a rename operation */ diff --git a/source3/lib/netapi/examples/netdomjoin-gui/netdomjoin-gui.c b/source3/lib/netapi/examples/netdomjoin-gui/netdomjoin-gui.c index 8164b74..629a447 100644 --- a/source3/lib/netapi/examples/netdomjoin-gui/netdomjoin-gui.c +++ b/source3/lib/netapi/examples/netdomjoin-gui/netdomjoin-gui.c @@ -655,7 +655,8 @@ static void callback_do_join(GtkWidget *widget, unjoin_creds_required = TRUE; join_creds_required = FALSE; unjoin_flags = NETSETUP_JOIN_DOMAIN | - NETSETUP_ACCT_DELETE; + NETSETUP_ACCT_DELETE | + NETSETUP_IGNORE_UNSUPPORTED_FLAGS; } if (try_unjoin) { diff --git a/source3/utils/net_dom.c b/source3/utils/net_dom.c index 132630d..3bf6a27 100644 --- a/source3/utils/net_dom.c +++ b/source3/utils/net_dom.c @@ -38,7 +38,8 @@ static int net_dom_unjoin(struct net_context *c, int argc, const char **argv) const char *account = NULL; const char *password = NULL; uint32_t unjoin_flags = NETSETUP_ACCT_DELETE | - NETSETUP_JOIN_DOMAIN; + NETSETUP_JOIN_DOMAIN | + NETSETUP_IGNORE_UNSUPPORTED_FLAGS; struct cli_state *cli = NULL; bool do_reboot = false; NTSTATUS ntstatus; -- Samba Shared Repository