[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 4ef82ac... s4:netlogon RPC - fix the indentation from 0c8608b... s3 Fix the build http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 4ef82accfe41eebabf26714d0a074d48d7134a26 Author: Matthias Dieter Wallnöfer Date: Tue Feb 23 09:51:25 2010 +0100 s4:netlogon RPC - fix the indentation Simo, I'm not really sure that those checks are valid. I read MS-NRPC section 3.5.4.1 about LOGONSRV_HANDLEs ("server_name" is of this type). There isn't stated that the server name has necessarily to be in the DNS form and should also be valid when it's NULL (if DCE server and client are the same - I don't know if me make use of it in s4). --- Summary of changes: source4/rpc_server/netlogon/dcerpc_netlogon.c | 30 1 files changed, 15 insertions(+), 15 deletions(-) Changeset truncated at 500 lines: diff --git a/source4/rpc_server/netlogon/dcerpc_netlogon.c b/source4/rpc_server/netlogon/dcerpc_netlogon.c index a5308bb..65d8c7b 100644 --- a/source4/rpc_server/netlogon/dcerpc_netlogon.c +++ b/source4/rpc_server/netlogon/dcerpc_netlogon.c @@ -1715,25 +1715,25 @@ static WERROR dcesrv_netr_DsrEnumerateDomainTrusts(struct dcesrv_call_state *dce } /* TODO: turn to hard check once we are sure this is 100% correct */ -if (!r->in.server_name) { + if (!r->in.server_name) { DEBUG(3, ("Invalid domain! Expected name in domain [%s]. " "But received NULL!\n", dnsdomain)); -} else { - p = strchr(r->in.server_name, '.'); - if (!p) { - DEBUG(3, ("Invalid domain! Expected name in domain " - "[%s]. But received [%s]!\n", - dnsdomain, r->in.server_name)); -p = r->in.server_name; - } else { - p++; + } else { + p = strchr(r->in.server_name, '.'); + if (!p) { + DEBUG(3, ("Invalid domain! Expected name in domain " + "[%s]. But received [%s]!\n", + dnsdomain, r->in.server_name)); + p = r->in.server_name; + } else { + p++; } if (strcasecmp(p, dnsdomain)) { - DEBUG(3, ("Invalid domain! Expected name in domain " - "[%s]. But received [%s]!\n", - dnsdomain, r->in.server_name)); - } -} + DEBUG(3, ("Invalid domain! Expected name in domain " + "[%s]. But received [%s]!\n", + dnsdomain, r->in.server_name)); + } + } ZERO_STRUCT(r->out); -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via f924b77... s3:winbindd: never mark external domains as internal! from 4ef82ac... s4:netlogon RPC - fix the indentation http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit f924b7749280b31ece19885de1c3ad1bd71942ac Author: Stefan Metzmacher Date: Tue Feb 23 08:42:41 2010 +0100 s3:winbindd: never mark external domains as internal! This way we can endup with silently using builtin_passdb_methods for an ad domain without an inbound trust. This fixes bug #7170. metze --- Summary of changes: source3/winbindd/winbindd_cm.c |5 + 1 files changed, 1 insertions(+), 4 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/winbindd/winbindd_cm.c b/source3/winbindd/winbindd_cm.c index 479602a..ed06dde 100644 --- a/source3/winbindd/winbindd_cm.c +++ b/source3/winbindd/winbindd_cm.c @@ -1641,7 +1641,7 @@ static NTSTATUS init_dc_connection_network(struct winbindd_domain *domain) NTSTATUS result; /* Internal connections never use the network. */ - if (domain->internal) { + if (domain->internal || !winbindd_can_contact_domain(domain)) { domain->initialized = True; return NT_STATUS_OK; } @@ -1769,9 +1769,6 @@ static bool set_dc_type_and_flags_trustinfo( struct winbindd_domain *domain ) domain->initialized = True; - if ( !winbindd_can_contact_domain( domain) ) - domain->internal = True; - break; } } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-4-test updated
The branch, v3-4-test has been updated via 7ca9130... WHATSNEW: Fiy typo. from 7b195c3... WHATSNEW: Update changes since 3.4.5. http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test - Log - commit 7ca9130556239eca52ecf8586c19e77780851d93 Author: Karolin Seeger Date: Tue Feb 23 10:34:37 2010 +0100 WHATSNEW: Fiy typo. Karolin --- Summary of changes: WHATSNEW.txt |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/WHATSNEW.txt b/WHATSNEW.txt index 5e7271d..42341d0 100644 --- a/WHATSNEW.txt +++ b/WHATSNEW.txt @@ -52,7 +52,7 @@ o Steven Danneman o Günther Deschner * BUG 6888: Fix printing with 64 bit clients. * BUG 7130: Fix listing of printjobs in Windows 7. -* BUG 7136: Sspoolss getprinterdriver2 level 101 marshalling is bad. +* BUG 7136: Spoolss getprinterdriver2 level 101 marshalling is bad. o William Jojo -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-4-stable updated
The branch, v3-4-stable has been updated via d0e7cc3... WHATSNEW: Fix typo. from 64bf3f9... WHATSNEW: Update changes since 3.4.5. http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-stable - Log - commit d0e7cc3b38de85ce33af1b9f056fd16f6b65c934 Author: Karolin Seeger Date: Tue Feb 23 10:34:37 2010 +0100 WHATSNEW: Fix typo. Karolin (cherry picked from commit 7ca9130556239eca52ecf8586c19e77780851d93) --- Summary of changes: WHATSNEW.txt |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/WHATSNEW.txt b/WHATSNEW.txt index 5e7271d..42341d0 100644 --- a/WHATSNEW.txt +++ b/WHATSNEW.txt @@ -52,7 +52,7 @@ o Steven Danneman o Günther Deschner * BUG 6888: Fix printing with 64 bit clients. * BUG 7130: Fix listing of printjobs in Windows 7. -* BUG 7136: Sspoolss getprinterdriver2 level 101 marshalling is bad. +* BUG 7136: Spoolss getprinterdriver2 level 101 marshalling is bad. o William Jojo -- Samba Shared Repository
[SCM] CTDB repository - branch master updated - ctdb-1.0.113-122-g00b249d
The branch, master has been updated via 00b249d9d098d5ed03e21caed404e66336f63629 (commit) via b151a5bf750ffde4845d19a6ef875b4ee6085426 (commit) via c72b637cc838ae6ea1694a476628c3fb4770f63b (commit) via 283338275c1e02811ce5062b24cc0da2288f64cc (commit) via 5ac32d3152ba11bacfab47c72ba998ac495fac00 (commit) via 51a455940464accece218b1a018be444993b3b4b (commit) via 4b06665b77cb24d488f4ef03cc9ad5fd5d0feb0e (commit) via 3ee225b0b6ed37c22478bd145ced56b1b9b86842 (commit) via ea87185ec9977006ef72d5a68c875154e4c84099 (commit) via 624e8878851b4957cc7c02e922ec86926d6927ee (commit) via 1493436b6b24eb05a23b7a339071ad85f70de8f4 (commit) via e2bc5c25116747c58505fe1cb3e2d164257377d1 (commit) via 2c2cbed4fcbc868a990fa6b32fc96126ffc61bb5 (commit) via e66d6636b80e3614f183366ec92fc3c6d5c323da (commit) via 756c8b953fef7132dae74b5b244baeb3108dec54 (commit) via ac97d65f44e8dc8bf2ec8f68e4db3448521755a2 (commit) via e7a6f64cf5bce5abdc47f5db96b286c5a8d66aff (commit) from 259054c3632e42bbaa614ee7e888e6e850733d60 (commit) http://gitweb.samba.org/?p=sahlberg/ctdb.git;a=shortlog;h=master - Log - commit 00b249d9d098d5ed03e21caed404e66336f63629 Author: Stefan Metzmacher Date: Tue Feb 23 10:29:27 2010 +0100 doc: regenerate ctdb.1* metze commit b151a5bf750ffde4845d19a6ef875b4ee6085426 Author: Stefan Metzmacher Date: Tue Feb 23 10:36:46 2010 +0100 doc/ctdb.1.xml: document "ctdb setifacelink " metze commit c72b637cc838ae6ea1694a476628c3fb4770f63b Author: Stefan Metzmacher Date: Tue Feb 23 10:04:51 2010 +0100 doc/ctdb.1.xml: document "ctdb ipinfo " metze commit 283338275c1e02811ce5062b24cc0da2288f64cc Author: Stefan Metzmacher Date: Tue Feb 23 10:03:00 2010 +0100 doc/ctdb.1.xml: update "ctdb ip" documentation metze commit 5ac32d3152ba11bacfab47c72ba998ac495fac00 Author: Stefan Metzmacher Date: Tue Feb 23 10:01:50 2010 +0100 doc/ctdb.1.xml: document "ctdb ifaces" metze commit 51a455940464accece218b1a018be444993b3b4b Author: Stefan Metzmacher Date: Tue Feb 23 08:35:08 2010 +0100 doc/ctdb.1.xml: document PARTIALLYONLINE status metze commit 4b06665b77cb24d488f4ef03cc9ad5fd5d0feb0e Author: Stefan Metzmacher Date: Fri Feb 12 09:54:46 2010 +0100 config/13.per_ip_routing: fix typo in error message metze commit 3ee225b0b6ed37c22478bd145ced56b1b9b86842 Author: Stefan Metzmacher Date: Fri Feb 12 14:06:40 2010 +0100 config/13.per_ip_routing: use better names for release_script and setup_script As the basename of the script will be used for the readd script from setup_iface_ip_readd_script, it's know easier to identify what script is called by delete_ip_from_iface() while readding ips to the interface. metze commit ea87185ec9977006ef72d5a68c875154e4c84099 Author: Stefan Metzmacher Date: Fri Feb 12 09:52:09 2010 +0100 config/13.per_ip_routing: register the setup script with setup_iface_ip_readd_script() This is needed because we need to resetup the routing table when the delete_ip_from_iface() function readds the ip to the interface. metze commit 624e8878851b4957cc7c02e922ec86926d6927ee Author: Stefan Metzmacher Date: Tue Feb 9 16:34:59 2010 +0100 config/13.per_ip_routing: add a setup_per_ip_routing() function This combines the logic into a shell function which can be used by the "takeip" and "updateip" hooks. We check the return values of the "ip" commands now instead of ignoring them. We now create a setup_script.sh similar to the release_script.sh which makes it easier to analyze problems. metze commit 1493436b6b24eb05a23b7a339071ad85f70de8f4 Author: Stefan Metzmacher Date: Fri Feb 12 11:24:08 2010 +0100 server: add "setup" event This is needed because the "init" event can't use 'ctdb' commands. metze commit e2bc5c25116747c58505fe1cb3e2d164257377d1 Author: Stefan Metzmacher Date: Fri Feb 12 11:25:26 2010 +0100 config/10.interface: use delete_ip_from_iface also in the "init" event metze commit 2c2cbed4fcbc868a990fa6b32fc96126ffc61bb5 Author: Stefan Metzmacher Date: Fri Feb 12 10:33:54 2010 +0100 config/11.natgw: use delete_ip_from_iface() instead of remove_ip() This also initializes the variables correctly for the shutdown|removenatgw code path to delete_all. metze commit e66d6636b80e3614f183366ec92fc3c6d5c323da Author: Stefan Metzmacher Date: Fri Feb 12 10:24:44 2010 +0100 config: make remove_ip() a wrapper of delete_ip_from_iface() metze commit 756c8b953fef7132dae74b5b244baeb3108dec54 Author: Stefan Metzmacher Date: Fri Feb 12 10:23:17 2010 +0100 config: interface_modify states in a $CTDB_BASE/st
[SCM] CTDB repository - branch master updated - ctdb-1.0.113-124-gda5fc07
The branch, master has been updated via da5fc07baa9aa806c3cba52c00fb10cf8b7f2dc5 (commit) via aa63f728152c37e31cecf2258efcdc8cf5ac0092 (commit) from 00b249d9d098d5ed03e21caed404e66336f63629 (commit) http://gitweb.samba.org/?p=sahlberg/ctdb.git;a=shortlog;h=master - Log - commit da5fc07baa9aa806c3cba52c00fb10cf8b7f2dc5 Author: Michael Adam Date: Tue Feb 23 11:00:23 2010 +0100 fix bug #7152: check NFS-Shares, fails with to long path-names Thanks to Thomas Sesselmann . Michael commit aa63f728152c37e31cecf2258efcdc8cf5ac0092 Author: Michael Adam Date: Wed Jan 6 14:59:23 2010 +0100 server:ctdb_send_dmaster_reply: fix a message typo. Michael --- Summary of changes: config/events.d/60.nfs |2 +- server/ctdb_call.c |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) Changeset truncated at 500 lines: diff --git a/config/events.d/60.nfs b/config/events.d/60.nfs index 2115d46..d403792 100755 --- a/config/events.d/60.nfs +++ b/config/events.d/60.nfs @@ -84,7 +84,7 @@ case "$1" in # and that its directories are available [ "$CTDB_NFS_SKIP_SHARE_CHECK" = "yes" ] || { exportfs | grep -v '^#' | grep '^/' | - sed -e 's/[[:space:]]*[^[:space:]]*$//' | + sed -e 's/[[:space:]]\+[^[:space:]]*$//' | ctdb_check_directories } || exit $? diff --git a/server/ctdb_call.c b/server/ctdb_call.c index 6ad9305..e07b98c 100644 --- a/server/ctdb_call.c +++ b/server/ctdb_call.c @@ -151,7 +151,7 @@ static void ctdb_send_dmaster_reply(struct ctdb_db_context *ctdb_db, } if (ctdb->methods == NULL) { - ctdb_fatal(ctdb, "ctdb_send_dmaster_reply cant update dmaster sicne transport is down"); + ctdb_fatal(ctdb, "ctdb_send_dmaster_reply cant update dmaster since transport is down"); return; } -- CTDB repository
[SCM] Samba Shared Repository - branch v3-3-test updated
The branch, v3-3-test has been updated via 40f3594... s3:winbindd: never mark external domains as internal! from 7e5e74b... s3-docs: Add missing para end tag. http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test - Log - commit 40f359476d7ec3aec252f79bd2127dd08b305a9f Author: Stefan Metzmacher Date: Tue Feb 23 08:42:41 2010 +0100 s3:winbindd: never mark external domains as internal! This way we can endup with silently using builtin_passdb_methods for an ad domain without an inbound trust. This fixes bug #7170. metze (cherry picked from commit f924b7749280b31ece19885de1c3ad1bd71942ac) --- Summary of changes: source/winbindd/winbindd_cm.c |5 + 1 files changed, 1 insertions(+), 4 deletions(-) Changeset truncated at 500 lines: diff --git a/source/winbindd/winbindd_cm.c b/source/winbindd/winbindd_cm.c index bd502a5..0ca7167 100644 --- a/source/winbindd/winbindd_cm.c +++ b/source/winbindd/winbindd_cm.c @@ -1618,7 +1618,7 @@ static NTSTATUS init_dc_connection_network(struct winbindd_domain *domain) NTSTATUS result; /* Internal connections never use the network. */ - if (domain->internal) { + if (domain->internal || !winbindd_can_contact_domain(domain)) { domain->initialized = True; return NT_STATUS_OK; } @@ -1746,9 +1746,6 @@ static bool set_dc_type_and_flags_trustinfo( struct winbindd_domain *domain ) domain->initialized = True; - if ( !winbindd_can_contact_domain( domain) ) - domain->internal = True; - break; } } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 1e9df26... s3:cli_netlogon: keep the the correct negotiate_flags on the cli->dc structure via ddfd5b6... s3:selftest: $WORKGROUP doesn't exist, we should use $DOMAIN from 752bffc... s3: Consolidate server_id_self into the equivalent procid_self() http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 1e9df26ef970df41de54142a78606a15374acbac Author: Stefan Metzmacher Date: Fri Feb 19 23:22:40 2010 +0100 s3:cli_netlogon: keep the the correct negotiate_flags on the cli->dc structure This should fix the rpccli_netlogon_set_trust_password() against DC's without netr_ServerPasswordSet2 support. This fixes bug #7160. metze commit ddfd5b69a0512937c101ef4338b57526c9f188bb Author: Stefan Metzmacher Date: Tue Feb 23 16:12:31 2010 +0100 s3:selftest: $WORKGROUP doesn't exist, we should use $DOMAIN metze --- Summary of changes: source3/rpc_client/cli_netlogon.c |8 ++-- source3/selftest/tests.sh |2 +- 2 files changed, 7 insertions(+), 3 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/rpc_client/cli_netlogon.c b/source3/rpc_client/cli_netlogon.c index e484209..3c4ddc2 100644 --- a/source3/rpc_client/cli_netlogon.c +++ b/source3/rpc_client/cli_netlogon.c @@ -45,6 +45,7 @@ NTSTATUS rpccli_netlogon_setup_creds(struct rpc_pipe_client *cli, struct samr_Password password; bool retried = false; fstring mach_acct; + uint32_t neg_flags = *neg_flags_inout; if (!ndr_syntax_id_equal(&cli->abstract_syntax, &ndr_table_netlogon.syntax_id)) { @@ -81,7 +82,7 @@ NTSTATUS rpccli_netlogon_setup_creds(struct rpc_pipe_client *cli, &srv_chal_recv, &password, &clnt_chal_send, - *neg_flags_inout); + neg_flags); if (!cli->dc) { return NT_STATUS_NO_MEMORY; @@ -98,7 +99,7 @@ NTSTATUS rpccli_netlogon_setup_creds(struct rpc_pipe_client *cli, cli->dc->computer_name, &clnt_chal_send, /* input. */ &srv_chal_recv, /* output. */ -neg_flags_inout); +&neg_flags); /* we might be talking to NT4, so let's downgrade in that case and retry * with the returned neg_flags - gd */ @@ -132,6 +133,9 @@ NTSTATUS rpccli_netlogon_setup_creds(struct rpc_pipe_client *cli, "chain established.\n", cli->desthost )); + cli->dc->negotiate_flags = neg_flags; + *neg_flags_inout = neg_flags; + return NT_STATUS_OK; } diff --git a/source3/selftest/tests.sh b/source3/selftest/tests.sh index 1910088..2fe54b2 100755 --- a/source3/selftest/tests.sh +++ b/source3/selftest/tests.sh @@ -105,7 +105,7 @@ export PASSWORD shift $# testitprefix="wbinfo_s3." testitenv="dc:local" - . $SCRIPTDIR/test_wbinfo_s3.sh \$WORKGROUP \$SERVER \$USERNAME \$PASSWORD + . $SCRIPTDIR/test_wbinfo_s3.sh \$DOMAIN \$SERVER \$USERNAME \$PASSWORD ) ( -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via a2cd203... s3:spoolss: construct the devmode the same way for level 2 and 8 from 1e9df26... s3:cli_netlogon: keep the the correct negotiate_flags on the cli->dc structure http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit a2cd2039824181494eb1496068d2121ee6150839 Author: Stefan Metzmacher Date: Fri Feb 19 09:09:40 2010 +0100 s3:spoolss: construct the devmode the same way for level 2 and 8 metze --- Summary of changes: source3/rpc_server/srv_spoolss_nt.c | 20 +++- 1 files changed, 3 insertions(+), 17 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c index c555a31..a5484f8 100644 --- a/source3/rpc_server/srv_spoolss_nt.c +++ b/source3/rpc_server/srv_spoolss_nt.c @@ -3949,25 +3949,11 @@ static WERROR construct_printer_info8(TALLOC_CTX *mem_ctx, struct spoolss_DeviceModeInfo *r, int snum) { - struct spoolss_DeviceMode *devmode; - WERROR result; - - if (!ntprinter->info_2->devmode) { - r->devmode = NULL; - return WERR_OK; - } - - devmode = TALLOC_ZERO_P(mem_ctx, struct spoolss_DeviceMode); - W_ERROR_HAVE_NO_MEMORY(devmode); - - result = convert_nt_devicemode(mem_ctx, devmode, ntprinter->info_2->devmode); - if (!W_ERROR_IS_OK(result)) { - TALLOC_FREE(devmode); - return result; + r->devmode = construct_dev_mode(mem_ctx, lp_const_servicename(snum)); + if (!r->devmode) { + DEBUG(8,("Returning NULL Devicemode!\n")); } - r->devmode = devmode; - return WERR_OK; } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via f6497a5... s3: re-run make samba3-idl. via 2288e16... spoolss: add various DM extradata formats (including PostScript and UniDriver). from a2cd203... s3:spoolss: construct the devmode the same way for level 2 and 8 http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit f6497a58079621fd0d8b0d9a8365371263c6a1e3 Author: Günther Deschner Date: Tue Aug 11 00:15:58 2009 +0200 s3: re-run make samba3-idl. Guenther commit 2288e16d72443d946a53744cb2b57e71e9950d10 Author: Günther Deschner Date: Tue Aug 11 00:14:55 2009 +0200 spoolss: add various DM extradata formats (including PostScript and UniDriver). Guenther --- Summary of changes: librpc/gen_ndr/ndr_spoolss.c | 295 + librpc/gen_ndr/ndr_spoolss.h | 11 ++ librpc/gen_ndr/spoolss.h | 369 ++ librpc/idl/spoolss.idl | 307 +++ 4 files changed, 982 insertions(+), 0 deletions(-) Changeset truncated at 500 lines: diff --git a/librpc/gen_ndr/ndr_spoolss.c b/librpc/gen_ndr/ndr_spoolss.c index 112e993..861fda5 100644 --- a/librpc/gen_ndr/ndr_spoolss.c +++ b/librpc/gen_ndr/ndr_spoolss.c @@ -531,6 +531,301 @@ _PUBLIC_ size_t ndr_size_spoolss_PrinterInfo0(const struct spoolss_PrinterInfo0 return ndr_size_struct(r, flags, (ndr_push_flags_fn_t)ndr_push_spoolss_PrinterInfo0, ic); } +static enum ndr_err_code ndr_push_spoolss_DM_Signature(struct ndr_push *ndr, int ndr_flags, enum spoolss_DM_Signature r) +{ + NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r)); + return NDR_ERR_SUCCESS; +} + +static enum ndr_err_code ndr_pull_spoolss_DM_Signature(struct ndr_pull *ndr, int ndr_flags, enum spoolss_DM_Signature *r) +{ + uint32_t v; + NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v)); + *r = v; + return NDR_ERR_SUCCESS; +} + +_PUBLIC_ void ndr_print_spoolss_DM_Signature(struct ndr_print *ndr, const char *name, enum spoolss_DM_Signature r) +{ + const char *val = NULL; + + switch (r) { + case SPOOLSS_DM_SIGNATURE_UNIDRVEXTRA: val = "SPOOLSS_DM_SIGNATURE_UNIDRVEXTRA"; break; + case SPOOLSS_DM_SIGNATURE_JTEXP: val = "SPOOLSS_DM_SIGNATURE_JTEXP"; break; + case SPOOLSS_DM_SIGNATURE_PSEXTRA: val = "SPOOLSS_DM_SIGNATURE_PSEXTRA"; break; + } + ndr_print_enum(ndr, name, "ENUM", val, r); +} + +static enum ndr_err_code ndr_push_spoolss_DM_Layout(struct ndr_push *ndr, int ndr_flags, enum spoolss_DM_Layout r) +{ + NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r)); + return NDR_ERR_SUCCESS; +} + +static enum ndr_err_code ndr_pull_spoolss_DM_Layout(struct ndr_pull *ndr, int ndr_flags, enum spoolss_DM_Layout *r) +{ + uint32_t v; + NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v)); + *r = v; + return NDR_ERR_SUCCESS; +} + +_PUBLIC_ void ndr_print_spoolss_DM_Layout(struct ndr_print *ndr, const char *name, enum spoolss_DM_Layout r) +{ + const char *val = NULL; + + switch (r) { + case SPOOLSS_DM_LAYOUT_NUP_DISABLED: val = "SPOOLSS_DM_LAYOUT_NUP_DISABLED"; break; + case SPOOLSS_DM_LAYOUT_NUP_2: val = "SPOOLSS_DM_LAYOUT_NUP_2"; break; + case SPOOLSS_DM_LAYOUT_NUP_4: val = "SPOOLSS_DM_LAYOUT_NUP_4"; break; + case SPOOLSS_DM_LAYOUT_NUP_6: val = "SPOOLSS_DM_LAYOUT_NUP_6"; break; + case SPOOLSS_DM_LAYOUT_NUP_9: val = "SPOOLSS_DM_LAYOUT_NUP_9"; break; + case SPOOLSS_DM_LAYOUT_NUP_16: val = "SPOOLSS_DM_LAYOUT_NUP_16"; break; + case SPOOLSS_DM_LAYOUT_BOOKLET: val = "SPOOLSS_DM_LAYOUT_BOOKLET"; break; + } + ndr_print_enum(ndr, name, "ENUM", val, r); +} + +static enum ndr_err_code ndr_push_spoolss_DM_NupDirection(struct ndr_push *ndr, int ndr_flags, enum spoolss_DM_NupDirection r) +{ + NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r)); + return NDR_ERR_SUCCESS; +} + +static enum ndr_err_code ndr_pull_spoolss_DM_NupDirection(struct ndr_pull *ndr, int ndr_flags, enum spoolss_DM_NupDirection *r) +{ + uint32_t v; + NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v)); + *r = v; + return NDR_ERR_SUCCESS; +} + +_PUBLIC_ void ndr_print_spoolss_DM_NupDirection(struct ndr_print *ndr, const char *name, enum spoolss_DM_NupDirection r) +{ + const char *val = NULL; + + switch (r) { + case SPOOLSS_DM_NUP_DIRECTION_L2R_T2B: val = "SPOOLSS_DM_NUP_DIRECTION_L2R_T2B"; break; + case SPOOLSS_DM_NUP_DIRECTION_T2B_L2R: val = "SPOOLSS_DM_NUP_DIRECTION_T2B_L2R"; break; + case SPOOLSS_DM_NUP_DIRECTION_R2L_T2B: val = "SPOOLSS_DM_NUP_DIRECTION_R2L_T2B"; break; + case SPOOLSS_DM_NUP_DIRECTION_
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 0278ef8... s3: re-run make samba3-idl. via d22b54c... spoolss: some fixes for devicemode dm extra structs. from f6497a5... s3: re-run make samba3-idl. http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 0278ef8ce30518c3a3e4c20a51c751ea2aab9add Author: Günther Deschner Date: Tue Feb 23 17:02:37 2010 +0100 s3: re-run make samba3-idl. Guenther commit d22b54c4eb1da075041b640f6b9eeb5ec263b9be Author: Günther Deschner Date: Tue Feb 23 17:01:26 2010 +0100 spoolss: some fixes for devicemode dm extra structs. Guenther --- Summary of changes: librpc/gen_ndr/ndr_spoolss.c | 30 --- librpc/gen_ndr/spoolss.h | 80 +- librpc/idl/spoolss.idl | 12 +- 3 files changed, 58 insertions(+), 64 deletions(-) Changeset truncated at 500 lines: diff --git a/librpc/gen_ndr/ndr_spoolss.c b/librpc/gen_ndr/ndr_spoolss.c index 861fda5..2448f73 100644 --- a/librpc/gen_ndr/ndr_spoolss.c +++ b/librpc/gen_ndr/ndr_spoolss.c @@ -533,14 +533,14 @@ _PUBLIC_ size_t ndr_size_spoolss_PrinterInfo0(const struct spoolss_PrinterInfo0 static enum ndr_err_code ndr_push_spoolss_DM_Signature(struct ndr_push *ndr, int ndr_flags, enum spoolss_DM_Signature r) { - NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r)); + NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r)); return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_spoolss_DM_Signature(struct ndr_pull *ndr, int ndr_flags, enum spoolss_DM_Signature *r) { uint32_t v; - NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v)); + NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v)); *r = v; return NDR_ERR_SUCCESS; } @@ -559,14 +559,14 @@ _PUBLIC_ void ndr_print_spoolss_DM_Signature(struct ndr_print *ndr, const char * static enum ndr_err_code ndr_push_spoolss_DM_Layout(struct ndr_push *ndr, int ndr_flags, enum spoolss_DM_Layout r) { - NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r)); + NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r)); return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_spoolss_DM_Layout(struct ndr_pull *ndr, int ndr_flags, enum spoolss_DM_Layout *r) { uint32_t v; - NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v)); + NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v)); *r = v; return NDR_ERR_SUCCESS; } @@ -589,14 +589,14 @@ _PUBLIC_ void ndr_print_spoolss_DM_Layout(struct ndr_print *ndr, const char *nam static enum ndr_err_code ndr_push_spoolss_DM_NupDirection(struct ndr_push *ndr, int ndr_flags, enum spoolss_DM_NupDirection r) { - NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r)); + NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r)); return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_spoolss_DM_NupDirection(struct ndr_pull *ndr, int ndr_flags, enum spoolss_DM_NupDirection *r) { uint32_t v; - NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v)); + NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v)); *r = v; return NDR_ERR_SUCCESS; } @@ -616,14 +616,14 @@ _PUBLIC_ void ndr_print_spoolss_DM_NupDirection(struct ndr_print *ndr, const cha static enum ndr_err_code ndr_push_spoolss_DM_NupBorderFlags(struct ndr_push *ndr, int ndr_flags, enum spoolss_DM_NupBorderFlags r) { - NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r)); + NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r)); return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_spoolss_DM_NupBorderFlags(struct ndr_pull *ndr, int ndr_flags, enum spoolss_DM_NupBorderFlags *r) { uint32_t v; - NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v)); + NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v)); *r = v; return NDR_ERR_SUCCESS; } @@ -641,14 +641,14 @@ _PUBLIC_ void ndr_print_spoolss_DM_NupBorderFlags(struct ndr_print *ndr, const c static enum ndr_err_code ndr_push_spoolss_DM_BookletFlags(struct ndr_push *ndr, int ndr_flags, enum spoolss_DM_BookletFlags r) { - NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r)); + NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r)); return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_spoolss_DM_BookletFlags(struct ndr_pull *ndr, int ndr_flags, enum spoolss_DM_BookletFlags *r) { uint32_t v; - NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v)); + NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v)); *r = v; return NDR_ERR_SUCCESS; } @@ -666,14 +666,14 @@ _PUBLIC_ void ndr_print_spoolss_DM_BookletFlags(struct ndr_print *ndr, const cha static enum ndr_err_code ndr_push_spoolss_DMUNI_Quality(struct ndr_push *ndr, int ndr_flag
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via c31cf0a... s3: Consolidate some pid_to_procid() calls to procid_self() from 0278ef8... s3: re-run make samba3-idl. http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit c31cf0a1b5b113c1221477238efa6b131e884bcf Author: Volker Lendecke Date: Tue Feb 23 17:17:58 2010 +0100 s3: Consolidate some pid_to_procid() calls to procid_self() --- Summary of changes: source3/torture/msgtest.c |4 ++-- source3/utils/smbcontrol.c | 10 +- 2 files changed, 7 insertions(+), 7 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/torture/msgtest.c b/source3/torture/msgtest.c index db9e589..0c4c96b 100644 --- a/source3/torture/msgtest.c +++ b/source3/torture/msgtest.c @@ -87,9 +87,9 @@ static void pong_message(struct messaging_context *msg_ctx, safe_strcpy(buf, "1234567890", sizeof(buf)-1); for (i=0;i dump-event-list\n"); @@ -1006,7 +1006,7 @@ static bool do_winbind_dump_domain_list(struct messaging_context *msg_ctx, uint8_t *buf = NULL; int buf_len = 0; - myid = pid_to_procid(sys_getpid()); + myid = procid_self(); if (argc < 1 || argc > 2) { fprintf(stderr, "Usage: smbcontrol dump_domain_list " @@ -1069,7 +1069,7 @@ static bool do_winbind_validate_cache(struct messaging_context *msg_ctx, const struct server_id pid, const int argc, const char **argv) { - struct server_id myid = pid_to_procid(sys_getpid()); + struct server_id myid = procid_self(); if (argc != 1) { fprintf(stderr, "Usage: smbcontrol winbindd validate-cache\n"); @@ -1239,7 +1239,7 @@ static struct server_id parse_dest(const char *dest) /* Try self - useful for testing */ if (strequal(dest, "self")) { - return pid_to_procid(sys_getpid()); + return procid_self(); } /* Fix winbind typo. */ -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 61b7a24... s3 move the sitename cache in its own file from c31cf0a... s3: Consolidate some pid_to_procid() calls to procid_self() http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 61b7a24f16c9d3a3c41df19ac7073571164eb47a Author: Simo Sorce Date: Tue Feb 23 11:11:37 2010 -0500 s3 move the sitename cache in its own file --- Summary of changes: source3/Makefile.in |3 +- source3/include/proto.h |3 - source3/libads/dns.c| 113 source3/libads/ldap.c |1 + source3/libads/sitename_cache.c | 136 +++ source3/libads/sitename_cache.h | 28 source3/libsmb/dsgetdcname.c|1 + source3/libsmb/namequery.c |1 + source3/libsmb/namequery_dc.c |1 + source3/utils/net_lookup.c |1 + source3/winbindd/winbindd_cm.c |1 + 11 files changed, 172 insertions(+), 117 deletions(-) create mode 100644 source3/libads/sitename_cache.c create mode 100644 source3/libads/sitename_cache.h Changeset truncated at 500 lines: diff --git a/source3/Makefile.in b/source3/Makefile.in index c409308..e966023 100644 --- a/source3/Makefile.in +++ b/source3/Makefile.in @@ -464,7 +464,8 @@ LIBNBT_OBJ = ../libcli/nbt/nbtname.o \ ../librpc/ndr/ndr_svcctl.o LIBNMB_OBJ = libsmb/unexpected.o libsmb/namecache.o libsmb/nmblib.o \ -libsmb/namequery.o ../libcli/nbt/lmhosts.o libsmb/conncache.o libads/dns.o +libsmb/namequery.o ../libcli/nbt/lmhosts.o libsmb/conncache.o \ +libads/dns.o libads/sitename_cache.o NTERR_OBJ = libsmb/nterr.o libsmb/smberr.o DOSERR_OBJ = ../libcli/util/doserr.o diff --git a/source3/include/proto.h b/source3/include/proto.h index ca1a38b..f8c3032 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -1748,9 +1748,6 @@ NTSTATUS ads_dns_lookup_ns(TALLOC_CTX *ctx, const char *dnsdomain, struct dns_rr_ns **nslist, int *numns); -bool sitename_store(const char *realm, const char *sitename); -char *sitename_fetch(const char *realm); -bool stored_sitename_changed(const char *realm, const char *sitename); NTSTATUS ads_dns_query_dcs(TALLOC_CTX *ctx, const char *realm, const char *sitename, diff --git a/source3/libads/dns.c b/source3/libads/dns.c index 2fa6f18..dc573e3 100644 --- a/source3/libads/dns.c +++ b/source3/libads/dns.c @@ -726,119 +726,6 @@ NTSTATUS ads_dns_lookup_ns(TALLOC_CTX *ctx, return NT_STATUS_OK; } -/ - Store and fetch the AD client sitename. -/ - -#define SITENAME_KEY "AD_SITENAME/DOMAIN/%s" - -static char *sitename_key(const char *realm) -{ - char *keystr; - - if (asprintf_strupper_m(&keystr, SITENAME_KEY, realm) == -1) { - return NULL; - } - - return keystr; -} - - -/ - Store the AD client sitename. - We store indefinately as every new CLDAP query will re-write this. -/ - -bool sitename_store(const char *realm, const char *sitename) -{ - time_t expire; - bool ret = False; - char *key; - - if (!realm || (strlen(realm) == 0)) { - DEBUG(0,("sitename_store: no realm\n")); - return False; - } - - key = sitename_key(realm); - - if (!sitename || (sitename && !*sitename)) { - DEBUG(5,("sitename_store: deleting empty sitename!\n")); - ret = gencache_del(key); - SAFE_FREE(key); - return ret; - } - - expire = get_time_t_max(); /* Store indefinately. */ - - DEBUG(10,("sitename_store: realm = [%s], sitename = [%s], expire = [%u]\n", - realm, sitename, (unsigned int)expire )); - - ret = gencache_set( key, sitename, expire ); - SAFE_FREE(key); - return ret; -} - -/ - Fetch the AD client sitename. - Caller must free. -/ - -char *sitename_fetch(const char *realm) -{ - char *sitename = NULL; - time_t timeout; - bool ret = False; - const char *query_realm; - char *key; - - if (!realm || (strlen(realm) == 0)) { - query_realm = lp_realm(); - } else { - query_realm = realm; - } - - key =
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 805f750... s4:cleanup remove unused schannel ldb code via 1203de9... s4:schannel merge code with s3 via 1d0938c... schannel_tdb: make code compilable in both trees via 3b12c38... s3:schannel streamline interface via e5ab64a... s3:schannel fix memory hierarchy via bb9014d... schannel: merge header files via 8e2f5fe... s4:schannel more readable check logic via b4c9dc3... s3:schannel more readable check logic from 61b7a24... s3 move the sitename cache in its own file http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 805f7507e23f95c479114c44cd175b6b668ffaf9 Author: Simo Sorce Date: Fri Feb 19 09:43:46 2010 -0500 s4:cleanup remove unused schannel ldb code commit 1203de99b178a2d7f6c7c6534c42d05242322fe3 Author: Simo Sorce Date: Thu Feb 18 15:11:25 2010 -0500 s4:schannel merge code with s3 After looking at the s4 side of the (s)channel :) I found out that it makes more sense to simply make it use the tdb based code than redo the same changes done to s3 to simplify the interface. Ldb is slow, to the point it needs haks to pre-open the db to speed it up, yet that does not solve the lookup speed, with ldb it is always going to be slower. Looking through the history it is evident that the schannel database doesn't really need greate expanadability. And lookups are always done with a single Key. This seem a perfet fit for tdb while ldb looks unnecessarily complicated. The schannel database is not really a persistent one. It can be discared during an upgrade without causing any real issue. all it contains is temproary session data. commit 1d0938c629904e14c3769036d1a8d1a6d7b3f34b Author: Simo Sorce Date: Thu Feb 18 16:17:06 2010 -0500 schannel_tdb: make code compilable in both trees commit 3b12c38ac09ad253cf56099c243659a3a362ea67 Author: Simo Sorce Date: Thu Feb 18 14:44:09 2010 -0500 s3:schannel streamline interface Make calling schannel much easier by removing the need to explicitly open the database. Let the abstraction do it instead. commit e5ab64a79902e710636352b01ccd0012d5df1c31 Author: Simo Sorce Date: Fri Feb 19 09:34:48 2010 -0500 s3:schannel fix memory hierarchy passing mem_ctx was causing creds->sid to be allocated on mem_ctx and not be child of creds as expected. When later in schannel_check_creds_state() we stole the creds on a different memory context the sid was left behind and the memory it points to freed when the temporary context was freed. commit bb9014d5cbbc2ebb8fbd9fab05a3f3fc57e725b8 Author: Simo Sorce Date: Thu Feb 18 14:10:26 2010 -0500 schannel: merge header files One almost empty header file was simply including another not included by anything else. Just merge them together. commit 8e2f5fe7c5bc0fce0564c751a68e0feb370e0857 Author: Simo Sorce Date: Thu Feb 18 10:26:24 2010 -0500 s4:schannel more readable check logic Make the initial schannel check logic more understandable. Make it easy to define different policies depending on the caller's security requirements (Integrity/Privacy/Both/None) This is the same change applied to s3 commit b4c9dc3724b5c34661b6986e81af2dc6c191dde9 Author: Simo Sorce Date: Thu Feb 18 10:19:09 2010 -0500 s3:schannel more readable check logic Make the initial schannel check logic more understandable. Make it easy to define different policies depending on ther caller's security requirements (Integrity/Privacy/Both/None) --- Summary of changes: libcli/auth/config.mk |4 +- libcli/auth/schannel_state.h | 32 ++- libcli/auth/schannel_state_ldb.c | 334 - libcli/auth/schannel_state_proto.h| 48 libcli/auth/schannel_state_tdb.c | 278 source3/Makefile.in |3 +- source3/include/proto.h |9 - source3/include/secrets.h |2 - source3/passdb/secrets_schannel.c | 131 -- source3/rpc_server/srv_netlog_nt.c| 65 -- source3/rpc_server/srv_pipe.c |2 +- source4/auth/gensec/config.mk | 12 +- source4/auth/gensec/schannel.c| 15 +- source4/auth/gensec/schannel_state.c | 67 - source4/rpc_server/netlogon/dcerpc_netlogon.c | 93 +--- source4/smbd/server.c |2 - source4/torture/rpc/samr.c|1 - 17 files changed, 363 insertions(+), 735 deletions(-) delete mode 100644 libcli/auth/schannel_state_ldb.c delete mode 100
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 2523b20... s4/torture/smb2: Add two new SMB2 compound tests from 805f750... s4:cleanup remove unused schannel ldb code http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 2523b20349930be693674be915bcb423bc1fcb82 Author: Steven Danneman Date: Mon Feb 22 12:38:26 2010 -0800 s4/torture/smb2: Add two new SMB2 compound tests These tests server behavior when a client compounds both synchronous and asynchronous requests. --- Summary of changes: source4/torture/smb2/compound.c | 157 +++ 1 files changed, 157 insertions(+), 0 deletions(-) Changeset truncated at 500 lines: diff --git a/source4/torture/smb2/compound.c b/source4/torture/smb2/compound.c index 4e58949..858ffde 100644 --- a/source4/torture/smb2/compound.c +++ b/source4/torture/smb2/compound.c @@ -33,6 +33,9 @@ goto done; \ }} while (0) +#define TARGET_IS_W2K8(_tctx) (torture_setting_bool(_tctx, "w2k8", false)) +#define TARGET_IS_WIN7(_tctx) (torture_setting_bool(_tctx, "win7", false)) + static bool test_compound_related1(struct torture_context *tctx, struct smb2_tree *tree) { @@ -420,6 +423,158 @@ done: return ret; } +/* Send a compound request where we expect the last request (Create, Notify) + * to go asynchronous. This works against a Win7 server and the reply is + * sent in two different packets. */ +static bool test_compound_interim1(struct torture_context *tctx, + struct smb2_tree *tree) +{ +struct smb2_handle hd; +struct smb2_create cr; +NTSTATUS status = NT_STATUS_OK; +const char *dname = "compound_interim_dir"; +struct smb2_notify nt; +bool ret = true; +struct smb2_request *req[2]; + +/* Win7 compound request implementation deviates substantially from the + * SMB2 spec as noted in MS-SMB2 <159>, <162>. This, test currently + * verifies the Windows behavior, not the general spec behavior. */ +if (!TARGET_IS_WIN7(tctx) && !TARGET_IS_W2K8(tctx)) { + torture_skip(tctx, "Interim test is specific to Windows server " + "behavior.\n"); +} + +smb2_transport_credits_ask_num(tree->session->transport, 5); + +smb2_deltree(tree, dname); + +smb2_transport_credits_ask_num(tree->session->transport, 1); + +ZERO_STRUCT(cr); +cr.in.desired_access = SEC_RIGHTS_FILE_ALL; +cr.in.create_options = NTCREATEX_OPTIONS_DIRECTORY; +cr.in.file_attributes = FILE_ATTRIBUTE_DIRECTORY; +cr.in.share_access = NTCREATEX_SHARE_ACCESS_READ | + NTCREATEX_SHARE_ACCESS_WRITE | + NTCREATEX_SHARE_ACCESS_DELETE; +cr.in.create_disposition = NTCREATEX_DISP_CREATE; +cr.in.fname= dname; + +smb2_transport_compound_start(tree->session->transport, 2); + +req[0] = smb2_create_send(tree, &cr); + +smb2_transport_compound_set_related(tree->session->transport, true); + +hd.data[0] = UINT64_MAX; +hd.data[1] = UINT64_MAX; + +ZERO_STRUCT(nt); +nt.in.recursive = true; +nt.in.buffer_size= 0x1000; +nt.in.file.handle= hd; +nt.in.completion_filter = FILE_NOTIFY_CHANGE_NAME; +nt.in.unknown= 0x; + +req[1] = smb2_notify_send(tree, &nt); + +status = smb2_create_recv(req[0], tree, &cr); +CHECK_STATUS(status, NT_STATUS_OK); + +smb2_cancel(req[1]); +status = smb2_notify_recv(req[1], tree, &nt); +CHECK_STATUS(status, NT_STATUS_CANCELLED); + +smb2_util_close(tree, cr.out.file.handle); + +smb2_deltree(tree, dname); +done: +return ret; +} + +/* Send a compound request where we expect the middle request (Create, Notify, + * GetInfo) to go asynchronous. Against Win7 the sync request succeed while + * the async fails. All are returned in the same compound response. */ +static bool test_compound_interim2(struct torture_context *tctx, + struct smb2_tree *tree) +{ +struct smb2_handle hd; +struct smb2_create cr; +NTSTATUS status = NT_STATUS_OK; +const char *dname = "compound_interim_dir"; +struct smb2_getinfo gf; +struct smb2_notify nt; +bool ret = true; +struct smb2_request *req[3]; + +/* Win7 compound request implementation deviates substantially from the + * SMB2 spec as noted in MS-SMB2 <159>, <162>. This, test currently + * verifies the Windows behavior, not the general spec behavior. */ +if (!TARGET_IS_WIN7(tctx) && !TARGET_IS_W2K8(tctx)) { + torture_skip(tctx, "Interim test is specific to Windows server " + "behavior.\n"); +} + +smb2_transport_credits_ask_nu
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via fffdce6... s4/schema: Move msDS-IntId implementation to samldb.c module from 2523b20... s4/torture/smb2: Add two new SMB2 compound tests http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit fffdce62fc1c9959f17c2dbb0a3939e95095fe54 Author: Kamen Mazdrashki Date: Wed Feb 24 01:45:26 2010 +0200 s4/schema: Move msDS-IntId implementation to samldb.c module msDS-IntId attribute should be replicated, so it must be implemented in a module that is before repl_meta_data module (thanks abartlet for pointing this out). Signed-off-by: Andrew Bartlett --- Summary of changes: source4/dsdb/samdb/ldb_modules/samldb.c | 87 +++ source4/dsdb/samdb/ldb_modules/schema_data.c | 149 -- 2 files changed, 87 insertions(+), 149 deletions(-) Changeset truncated at 500 lines: diff --git a/source4/dsdb/samdb/ldb_modules/samldb.c b/source4/dsdb/samdb/ldb_modules/samldb.c index 9d79776..6420e05 100644 --- a/source4/dsdb/samdb/ldb_modules/samldb.c +++ b/source4/dsdb/samdb/ldb_modules/samldb.c @@ -689,6 +689,81 @@ static int samldb_find_for_defaultObjectCategory(struct samldb_ctx *ac) return ldb_next_request(ac->module, req); } +/** + * msDS-IntId attributeSchema attribute handling + * during LDB_ADD request processing + */ +static int samldb_add_handle_msDS_IntId(struct samldb_ctx *ac) +{ + int ret; + bool id_exists; + uint32_t msds_intid; + uint32_t system_flags; + struct ldb_context *ldb; + struct ldb_result *ldb_res; + struct ldb_dn *schema_dn; + + ldb = ldb_module_get_ctx(ac->module); + schema_dn = ldb_get_schema_basedn(ldb); + + /* replicated update should always go through */ + if (ldb_request_get_control(ac->req, DSDB_CONTROL_REPLICATED_UPDATE_OID)) { + return LDB_SUCCESS; + } + + /* msDS-IntId is handled by system and should never be +* passed by clients */ + if (ldb_msg_find_element(ac->msg, "msDS-IntId")) { + return LDB_ERR_UNWILLING_TO_PERFORM; + } + + /* do not generate msDS-IntId if Relax control is passed */ + if (ldb_request_get_control(ac->req, LDB_CONTROL_RELAX_OID)) { + return LDB_SUCCESS; + } + + /* check Functional Level */ + if (dsdb_functional_level(ldb) < DS_DOMAIN_FUNCTION_2003) { + return LDB_SUCCESS; + } + + /* check systemFlags for SCHEMA_BASE_OBJECT flag */ + system_flags = ldb_msg_find_attr_as_uint(ac->msg, "systemFlags", 0); + if (system_flags & SYSTEM_FLAG_SCHEMA_BASE_OBJECT) { + return LDB_SUCCESS; + } + + /* Generate new value for msDs-IntId +* Value should be in 0x8000..0xBFFF range */ + msds_intid = generate_random() % 0X3FFF; + msds_intid += 0x8000; + + /* probe id values until unique one is found */ + do { + msds_intid++; + if (msds_intid > 0xBFFF) { + msds_intid = 0x8001; + } + + ret = dsdb_module_search(ac->module, ac, +&ldb_res, +schema_dn, LDB_SCOPE_ONELEVEL, NULL, 0, +"(msDS-IntId=%d)", msds_intid); + if (ret != LDB_SUCCESS) { + ldb_debug_set(ldb, LDB_DEBUG_ERROR, + __location__": Searching for msDS-IntId=%d failed - %s\n", + msds_intid, + ldb_errstring(ldb)); + return LDB_ERR_OPERATIONS_ERROR; + } + id_exists = (ldb_res->count > 0); + + talloc_free(ldb_res); + } while(id_exists); + + return ldb_msg_add_fmt(ac->msg, "msDS-IntId", "%d", msds_intid); +} + /* * samldb_add_entry (async) @@ -870,6 +945,10 @@ static int samldb_fill_object(struct samldb_ctx *ac, const char *type) } } + /* handle msDS-IntID attribute */ + ret = samldb_add_handle_msDS_IntId(ac); + if (ret != LDB_SUCCESS) return ret; + ret = samldb_add_step(ac, samldb_add_entry); if (ret != LDB_SUCCESS) return ret; @@ -1763,6 +1842,14 @@ static int samldb_modify(struct ldb_module *module, struct ldb_request *req) return LDB_ERR_UNWILLING_TO_PERFORM; } + /* msDS-IntId is not allowed to be modified +* except when modification comes from replication */ + if (ldb_msg_find_element(req->op.mod.message, "msDS-IntId")) { + if (!ldb_request_get_control(req, DSDB_CONTR
svn commit: samba-web r1394 - in trunk/support: .
Author: jht Date: 2010-02-23 20:18:44 -0700 (Tue, 23 Feb 2010) New Revision: 1394 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba-web&rev=1394 Log: Update from Loftus IT Modified: trunk/support/australia.html Changeset: Modified: trunk/support/australia.html === --- trunk/support/australia.html2010-02-23 00:59:47 UTC (rev 1393) +++ trunk/support/australia.html2010-02-24 03:18:44 UTC (rev 1394) @@ -13,14 +13,33 @@ Dulwich, Adelaide, South Australia http://www.loftusit.com.au/";>http://www.loftusit.com.au/ -+61 8 8304 ++61 8 8304 [Nationally: (08) 8304 ] mailto:i...@loftusit.com.au";>i...@loftusit.com.au Chris Harris + -IT Support Services with capabilities in Linux/Open Source and Windows -Specialty samba capabilities: Samba Domain support and implementation, - AD and Linux integration services and support. +Loftus IT is a respected Open Source Solution services company at all levels of State and Local Government, and business right across Australia. Staffing includes 4 Full Time Engineers with extensive Samba experience. + +Geographic limits to support offered – Australia Only. + +Typical response times - <2 hours (business hours CST/CSDT) + +Availability of a helpdesk service - (during business hours 8:30-5:30 Mon - Fri CST/CSDT) + +Loftus IT is a team of more than 25 people in South Australia and Victoria whose focus is on Open Source Infrastructure and Applications. + +Loftus IT’s people deliver expertise across technologies including Red Hat, Suse, Joomla!, Moodle, JBoss, Samba (and many others) to global businesses such as Santos (mining and exploration) and Cobham Aviation Services (Aviation); as well as State and Local Government, medium commercial and small business. Many of the environments that Loftus IT supports are mission critical, which means that if you seek help with Open Source, Loftus IT’s resources are a must-have. + +In addition to supporting Open Source technologies, Loftus IT also has proprietary infrastructure and applications expertise covering Microsoft, Novell, VMWare, Oracle/ Sun , IBM, (and many others). + +While all of the technical team-members at Loftus IT have greater than 10 years of experience working with specific Open Source or proprietary solution-sets, everyone keenly pursues further training. This ensures that we are up-to-date and relevant to our clients’ needs; and our philosophy is to share our knowledge with our clients; after all, nobody wants to pay for services that they don’t need. + +Robway Crane Systems (Materials Handling) defined Loftus as “always quick to respond, flexible... open, ethical and fair”, while CHC Helicopters (Aviation) describe Loftus IT as “... trusted and valued ... supplement to a generally busy IT team. + +Loftus IT is also lucky to have excellent pre-sales technical resources that can assist both clients and business partners to make informed technical and commercial decisions about Open Source. + +We encourage you to contact Loftus IT to explore the benefits of an Open Source solution, or to assist with any challenges with Open Source technologies.
svn commit: samba-web r1395 - in trunk/support: .
Author: jht Date: 2010-02-23 20:25:34 -0700 (Tue, 23 Feb 2010) New Revision: 1395 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba-web&rev=1395 Log: Fix apostrophes Modified: trunk/support/australia.html Changeset: Modified: trunk/support/australia.html === --- trunk/support/australia.html2010-02-24 03:18:44 UTC (rev 1394) +++ trunk/support/australia.html2010-02-24 03:25:34 UTC (rev 1395) @@ -21,21 +21,21 @@ Loftus IT is a respected Open Source Solution services company at all levels of State and Local Government, and business right across Australia. Staffing includes 4 Full Time Engineers with extensive Samba experience. -Geographic limits to support offered – Australia Only. +Geographic limits to support offered: Australia Only. -Typical response times - <2 hours (business hours CST/CSDT) +Typical response times: <2 hours (business hours CST/CSDT) -Availability of a helpdesk service - (during business hours 8:30-5:30 Mon - Fri CST/CSDT) +Availability of a helpdesk service: (during business hours 8:30-5:30 Mon - Fri CST/CSDT) Loftus IT is a team of more than 25 people in South Australia and Victoria whose focus is on Open Source Infrastructure and Applications. -Loftus IT’s people deliver expertise across technologies including Red Hat, Suse, Joomla!, Moodle, JBoss, Samba (and many others) to global businesses such as Santos (mining and exploration) and Cobham Aviation Services (Aviation); as well as State and Local Government, medium commercial and small business. Many of the environments that Loftus IT supports are mission critical, which means that if you seek help with Open Source, Loftus IT’s resources are a must-have. +Loftus IT's people deliver expertise across technologies including Red Hat, Suse, Joomla!, Moodle, JBoss, Samba (and many others) to global businesses such as Santos (mining and exploration) and Cobham Aviation Services (Aviation); as well as State and Local Government, medium commercial and small business. Many of the environments that Loftus IT supports are mission critical, which means that if you seek help with Open Source, Loftus IT's resources are a must-have. In addition to supporting Open Source technologies, Loftus IT also has proprietary infrastructure and applications expertise covering Microsoft, Novell, VMWare, Oracle/ Sun , IBM, (and many others). -While all of the technical team-members at Loftus IT have greater than 10 years of experience working with specific Open Source or proprietary solution-sets, everyone keenly pursues further training. This ensures that we are up-to-date and relevant to our clients’ needs; and our philosophy is to share our knowledge with our clients; after all, nobody wants to pay for services that they don’t need. +While all of the technical team-members at Loftus IT have greater than 10 years of experience working with specific Open Source or proprietary solution-sets, everyone keenly pursues further training. This ensures that we are up-to-date and relevant to our clients' needs; and our philosophy is to share our knowledge with our clients; after all, nobody wants to pay for services that they don't need. -Robway Crane Systems (Materials Handling) defined Loftus as “always quick to respond, flexible... open, ethical and fair”, while CHC Helicopters (Aviation) describe Loftus IT as “... trusted and valued ... supplement to a generally busy IT team. +Robway Crane Systems (Materials Handling) defined Loftus as "e;always quick to respond, flexible... open, ethical and fair"e;, while CHC Helicopters (Aviation) describe Loftus IT as "e;... trusted and valued ... supplement to a generally busy IT team."e; Loftus IT is also lucky to have excellent pre-sales technical resources that can assist both clients and business partners to make informed technical and commercial decisions about Open Source.
svn commit: samba-web r1396 - in trunk/support: .
Author: jht Date: 2010-02-23 20:36:16 -0700 (Tue, 23 Feb 2010) New Revision: 1396 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba-web&rev=1396 Log: Fix double-quotes Modified: trunk/support/australia.html Changeset: Modified: trunk/support/australia.html === --- trunk/support/australia.html2010-02-24 03:25:34 UTC (rev 1395) +++ trunk/support/australia.html2010-02-24 03:36:16 UTC (rev 1396) @@ -35,7 +35,7 @@ While all of the technical team-members at Loftus IT have greater than 10 years of experience working with specific Open Source or proprietary solution-sets, everyone keenly pursues further training. This ensures that we are up-to-date and relevant to our clients' needs; and our philosophy is to share our knowledge with our clients; after all, nobody wants to pay for services that they don't need. -Robway Crane Systems (Materials Handling) defined Loftus as "e;always quick to respond, flexible... open, ethical and fair"e;, while CHC Helicopters (Aviation) describe Loftus IT as "e;... trusted and valued ... supplement to a generally busy IT team."e; +Robway Crane Systems (Materials Handling) defined Loftus as "always quick to respond, flexible... open, ethical and fair", while CHC Helicopters (Aviation) describe Loftus IT as "... trusted and valued ... supplement to a generally busy IT team." Loftus IT is also lucky to have excellent pre-sales technical resources that can assist both clients and business partners to make informed technical and commercial decisions about Open Source.
svn commit: samba-web r1397 - in trunk/docs: .
Author: jht Date: 2010-02-23 20:39:00 -0700 (Tue, 23 Feb 2010) New Revision: 1397 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba-web&rev=1397 Log: Added Japanese translation of HOWTO by Oota Toshiya Modified: trunk/docs/index.html Changeset: Modified: trunk/docs/index.html === --- trunk/docs/index.html 2010-02-24 03:36:16 UTC (rev 1396) +++ trunk/docs/index.html 2010-02-24 03:39:00 UTC (rev 1397) @@ -57,7 +57,8 @@ http://home.gna.org/sambadoc/";>Samba HOWTO Collection in French http://gertranssmb3.berlios.de/";>Samba HOWTO Collection in -German + http://www.samba.gr.jp/project/translation/Samba3-HOWTO/ +">Samba HOWTO Collection in Japanese http://smb-conf.ru/";>Samba 3 smb.conf man page in Russian
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via ec96ea6... tdb: handle processes dying during transaction commit. via 1bf482b... patch tdb-refactor-tdb_lock-and-tdb_lock_nonblock.patch via ececeff... tdb: add -k option to tdbtorture via 8c3fda4... tdb: don't truncate tdb on recovery via 9f295ee... tdb: remove lock ops via a84222b... tdb: rename tdb_release_extra_locks() to tdb_release_transaction_locks() via dd1b508... tdb: cleanup: remove ltype argument from _tdb_transaction_cancel. via fca1621... tdb: tdb_allrecord_lock/tdb_allrecord_unlock/tdb_allrecord_upgrade via caaf5c6... tdb: suppress record write locks when allrecord lock is taken. via 9341f23... tdb: cleanup: always grab allrecord lock to infinity. via 1ab8776... tdb: remove num_locks via d48c3e4... tdb: use tdb_nest_lock() for seqnum lock. via 4738d47... tdb: use tdb_nest_lock() for active lock. via 9136818... tdb: use tdb_nest_lock() for open lock. via e8fa70a... tdb: use tdb_nest_lock() for transaction lock. via ce41411... tdb: cleanup: find_nestlock() helper. via db27073... tdb: cleanup: tdb_release_extra_locks() helper via fba42f1... tdb: cleanup: tdb_have_extra_locks() helper via b754f61... tdb: don't suppress the transaction lock because of the allrecord lock. via 5d9de60... tdb: cleanup: tdb_nest_lock/tdb_nest_unlock via e9114a7... tdb: cleanup: rename global_lock to allrecord_lock. via 7ab422d... tdb: cleanup: rename GLOBAL_LOCK to OPEN_LOCK. via a6e0ef8... tdb: make _tdb_transaction_cancel static. via 452b4a5... tdb: cleanup: split brlock and brunlock methods. from fffdce6... s4/schema: Move msDS-IntId implementation to samldb.c module http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit ec96ea690edbe3398d690b4a953d487ca1773f1c Author: Rusty Russell Date: Wed Feb 24 13:23:58 2010 +1030 tdb: handle processes dying during transaction commit. tdb transactions were designed to be robust against the machine powering off, but interestingly were never designed to handle the case where an administrator kill -9's a process during commit. Because recovery is only done on tdb_open, processes with the tdb already mapped will simply use it despite it being corrupt and needing recovery. The solution to this is to check for recovery every time we grab a data lock: we could have gained the lock because a process just died. This has no measurable cost: here is the time for tdbtorture -s 0 -n 1 -l 1: Before: 2.75 2.50 2.81 3.19 2.91 2.53 2.72 2.50 2.78 2.77 = Avg 2.75 After: 2.81 2.57 3.42 2.49 3.02 2.49 2.84 2.48 2.80 2.43 = Avg 2.74 Signed-off-by: Rusty Russell commit 1bf482b9ef9ec73dd7ee4387d7087aa3955503dd Author: Rusty Russell Date: Wed Feb 24 13:18:06 2010 +1030 patch tdb-refactor-tdb_lock-and-tdb_lock_nonblock.patch commit ececeffd85db1b27c07cdf91a921fd203006daf6 Author: Rusty Russell Date: Wed Feb 24 10:53:05 2010 +1030 tdb: add -k option to tdbtorture To test the case of death of a process during transaction commit, add a -k (kill random) option to tdbtorture. The easiest way to do this is to make every worker a child (unless there's only one child), which is why this patch is bigger than you might expect. Using -k without -t (always transactions) you expect corruption, though it doesn't happen every time. With -t, we currently get corruption but the next patch fixes that. Signed-off-by: Rusty Russell commit 8c3fda4318adc71899bc41486d5616da3a91a688 Author: Rusty Russell Date: Wed Feb 24 10:50:41 2010 +1030 tdb: don't truncate tdb on recovery The current recovery code truncates the tdb file on recovery. This is fine if recovery is only done on first open, but is a really bad idea as we move to allowing recovery on "live" databases. Signed-off-by: Rusty Russell commit 9f295eecffd92e55584fc36539cd85cd32c832de Author: Rusty Russell Date: Wed Feb 24 10:49:22 2010 +1030 tdb: remove lock ops Now the transaction code uses the standard allrecord lock, that stops us from trying to grab any per-record locks anyway. We don't need to have special noop lock ops for transactions. This is a nice simplification: if you see brlock, you know it's really going to grab a lock. Signed-off-by: Rusty Russell commit a84222bbaf9ed2c7b9c61b8157b2e3c85f17fa32 Author: Rusty Russell Date: Wed Feb 24 11:02:55 2010 +1030 tdb: rename tdb_release_extra_locks() to tdb_release_transaction_locks() tdb_release_extra_locks() is too general: it carefully skips over the transaction lock, even though the only caller then drops it.
Build status as of Wed Feb 24 07:00:05 2010
URL: http://build.samba.org/ --- /home/build/master/cache/broken_results.txt.old 2010-02-23 00:00:15.0 -0700 +++ /home/build/master/cache/broken_results.txt 2010-02-24 00:00:30.0 -0700 @@ -1,4 +1,4 @@ -Build status as of Tue Feb 23 07:00:06 2010 +Build status as of Wed Feb 24 07:00:05 2010 Build counts: Tree Total Broken Panic @@ -15,7 +15,7 @@ samba_3_current 33 32 2 samba_3_master 33 31 3 samba_3_next 29 28 4 -samba_4_0_test 35 34 2 +samba_4_0_test 35 33 0 talloc 35 11 0 tdb 33 22 0