svn commit: samba r20148 - in branches/SAMBA_3_0/source/lib: .
Author: jra Date: 2006-12-13 05:54:39 + (Wed, 13 Dec 2006) New Revision: 20148 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20148 Log: Forgot to merge. Ensure open_any_socket_out() is safe from signals. Jeremy. Modified: branches/SAMBA_3_0/source/lib/util_sock.c Changeset: Modified: branches/SAMBA_3_0/source/lib/util_sock.c === --- branches/SAMBA_3_0/source/lib/util_sock.c 2006-12-13 03:20:57 UTC (rev 20147) +++ branches/SAMBA_3_0/source/lib/util_sock.c 2006-12-13 05:54:39 UTC (rev 20148) @@ -974,7 +974,7 @@ } if (errno == EINPROGRESS || errno == EALREADY || - errno == EAGAIN) { + errno == EAGAIN || errno == EINTR) { /* These are the error messages that something is progressing. */ good_connect = True;
svn commit: samba r20147 - in branches/SAMBA_3_0_24/source/lib: .
Author: jra Date: 2006-12-13 03:20:57 + (Wed, 13 Dec 2006) New Revision: 20147 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20147 Log: Match up EINTR ignoring code from SAMBA_3_0. Else open_any_socket_out() can fail. Jeremy. Modified: branches/SAMBA_3_0_24/source/lib/util_sock.c Changeset: Modified: branches/SAMBA_3_0_24/source/lib/util_sock.c === --- branches/SAMBA_3_0_24/source/lib/util_sock.c2006-12-13 01:11:29 UTC (rev 20146) +++ branches/SAMBA_3_0_24/source/lib/util_sock.c2006-12-13 03:20:57 UTC (rev 20147) @@ -974,7 +974,7 @@ } if (errno == EINPROGRESS || errno == EALREADY || - errno == EAGAIN) { + errno == EAGAIN || errno == EINTR) { /* These are the error messages that something is progressing. */ good_connect = True;
svn commit: samba r20146 - in branches: SAMBA_3_0/source/nsswitch SAMBA_3_0_24/source/nsswitch
Author: jra Date: 2006-12-13 01:11:29 + (Wed, 13 Dec 2006) New Revision: 20146 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20146 Log: Now online checks are fully async we can do them every cache timeout times. Jeremy. Modified: branches/SAMBA_3_0/source/nsswitch/winbindd_cm.c branches/SAMBA_3_0_24/source/nsswitch/winbindd_cm.c Changeset: Modified: branches/SAMBA_3_0/source/nsswitch/winbindd_cm.c === --- branches/SAMBA_3_0/source/nsswitch/winbindd_cm.c2006-12-12 23:48:28 UTC (rev 20145) +++ branches/SAMBA_3_0/source/nsswitch/winbindd_cm.c2006-12-13 01:11:29 UTC (rev 20146) @@ -271,7 +271,7 @@ } / - If we're still offline, exponentially increase the timeout check. + If we're still offline setup the timeout check. / static void calc_new_online_timeout_check(struct winbindd_domain *domain) @@ -282,12 +282,6 @@ domain->check_online_timeout = 10; } else if (domain->check_online_timeout < wbc) { domain->check_online_timeout = wbc; - } else { - uint32 new_to = domain->check_online_timeout * 3; - if (new_to > (3*60*60)) { - new_to = 3*60*60; /* 3 hours. */ - } - domain->check_online_timeout = new_to; } } Modified: branches/SAMBA_3_0_24/source/nsswitch/winbindd_cm.c === --- branches/SAMBA_3_0_24/source/nsswitch/winbindd_cm.c 2006-12-12 23:48:28 UTC (rev 20145) +++ branches/SAMBA_3_0_24/source/nsswitch/winbindd_cm.c 2006-12-13 01:11:29 UTC (rev 20146) @@ -269,7 +269,7 @@ } / - If we're still offline, exponentially increase the timeout check. + If we're still offline setup the timeout check. / static void calc_new_online_timeout_check(struct winbindd_domain *domain) @@ -280,12 +280,6 @@ domain->check_online_timeout = 10; } else if (domain->check_online_timeout < wbc) { domain->check_online_timeout = wbc; - } else { - uint32 new_to = domain->check_online_timeout * 3; - if (new_to > (3*60*60)) { - new_to = 3*60*60; /* 3 hours. */ - } - domain->check_online_timeout = new_to; } }
Build status as of Wed Dec 13 00:00:03 2006
URL: http://build.samba.org/ --- /home/build/master/cache/broken_results.txt.old 2006-12-12 00:00:28.0 + +++ /home/build/master/cache/broken_results.txt 2006-12-13 00:00:50.0 + @@ -1,10 +1,10 @@ -Build status as of Tue Dec 12 00:00:01 2006 +Build status as of Wed Dec 13 00:00:03 2006 Build counts: Tree Total Broken Panic SOC 0 0 0 build_farm 0 0 0 -ccache 41 7 0 +ccache 42 7 0 ctdb 0 0 0 distcc 2 0 0 ldb 41 4 0 @@ -14,8 +14,8 @@ rsync42 3 0 samba0 0 0 samba-docs 0 0 0 -samba4 40 27 0 -samba_3_042 12 0 +samba4 40 29 4 +samba_3_042 31 0 smb-build39 1 0 talloc 42 1 0 tdb 41 2 0
svn commit: samba r20145 - in branches/SAMBA_4_0/source/torture/rpc: .
Author: metze Date: 2006-12-12 23:48:28 + (Tue, 12 Dec 2006) New Revision: 20145 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20145 Log: fix whitespaces metze Modified: branches/SAMBA_4_0/source/torture/rpc/rpc.c Changeset: Modified: branches/SAMBA_4_0/source/torture/rpc/rpc.c === --- branches/SAMBA_4_0/source/torture/rpc/rpc.c 2006-12-12 23:23:50 UTC (rev 20144) +++ branches/SAMBA_4_0/source/torture/rpc/rpc.c 2006-12-12 23:48:28 UTC (rev 20145) @@ -156,9 +156,8 @@ NTSTATUS torture_rpc_init(void) { - struct torture_suite *suite = torture_suite_create( - talloc_autofree_context(), - "RPC"); + struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "RPC"); + dcerpc_init(); dcerpc_table_init(); @@ -216,8 +215,7 @@ torture_suite_add_simple_test(suite, "BENCH-RPC", torture_bench_rpc); torture_suite_add_simple_test(suite, "ASYNCBIND", torture_async_bind); - suite->description = talloc_strdup(suite, - "DCE/RPC protocol and interface tests"); + suite->description = talloc_strdup(suite, "DCE/RPC protocol and interface tests"); torture_register_suite(suite);
svn commit: lorikeet r689 - in trunk/heimdal/lib/gssapi/krb5: .
Author: metze Date: 2006-12-12 23:45:23 + (Tue, 12 Dec 2006) New Revision: 689 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=lorikeet&rev=689 Log: merge from samba4: only add GSS_C_CONF_FLAG and GSS_C_INTEG_FLAG if the caller requested it! this is needed to create plain, singed or sealed LDAP connections. this should go into lorikeet and main heimdal... metze Modified: trunk/heimdal/lib/gssapi/krb5/init_sec_context.c Changeset: Modified: trunk/heimdal/lib/gssapi/krb5/init_sec_context.c === --- trunk/heimdal/lib/gssapi/krb5/init_sec_context.c2006-11-28 20:10:18 UTC (rev 688) +++ trunk/heimdal/lib/gssapi/krb5/init_sec_context.c2006-12-12 23:45:23 UTC (rev 689) @@ -476,8 +476,11 @@ if (req_flags & GSS_C_EXTENDED_ERROR_FLAG) flags |= GSS_C_EXTENDED_ERROR_FLAG; -flags |= GSS_C_CONF_FLAG; -flags |= GSS_C_INTEG_FLAG; +if (req_flags & GSS_C_CONF_FLAG) +flags |= GSS_C_CONF_FLAG; +if (req_flags & GSS_C_INTEG_FLAG) +flags |= GSS_C_INTEG_FLAG; + flags |= GSS_C_TRANS_FLAG; if (ret_flags)
svn commit: samba r20144 - in branches/SAMBA_4_0/source/torture: . libnet
Author: metze Date: 2006-12-12 23:23:50 + (Tue, 12 Dec 2006) New Revision: 20144 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20144 Log: add NET-API-BECOME-DC test that tests libnet_BecomeDC()/libnet_UnbecomeDC() metze Added: branches/SAMBA_4_0/source/torture/libnet/libnet_BecomeDC.c Modified: branches/SAMBA_4_0/source/torture/config.mk branches/SAMBA_4_0/source/torture/libnet/libnet.c Changeset: Modified: branches/SAMBA_4_0/source/torture/config.mk === --- branches/SAMBA_4_0/source/torture/config.mk 2006-12-12 23:01:51 UTC (rev 20143) +++ branches/SAMBA_4_0/source/torture/config.mk 2006-12-12 23:23:50 UTC (rev 20144) @@ -256,7 +256,8 @@ libnet/libnet_user.o \ libnet/libnet_share.o \ libnet/libnet_rpc.o \ - libnet/libnet_domain.o + libnet/libnet_domain.o \ + libnet/libnet_BecomeDC.o PUBLIC_DEPENDENCIES = \ LIBSAMBA-NET \ POPT_CREDENTIALS Modified: branches/SAMBA_4_0/source/torture/libnet/libnet.c === --- branches/SAMBA_4_0/source/torture/libnet/libnet.c 2006-12-12 23:01:51 UTC (rev 20143) +++ branches/SAMBA_4_0/source/torture/libnet/libnet.c 2006-12-12 23:23:50 UTC (rev 20144) @@ -24,9 +24,7 @@ NTSTATUS torture_net_init(void) { - struct torture_suite *suite = torture_suite_create( - talloc_autofree_context(), - "NET"); + struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "NET"); torture_suite_add_simple_test(suite, "USERINFO", torture_userinfo); torture_suite_add_simple_test(suite, "USERADD", torture_useradd); @@ -53,9 +51,9 @@ torture_suite_add_simple_test(suite, "API-DOMCLOSELSA", torture_domain_close_lsa); torture_suite_add_simple_test(suite, "API-DOMOPENSAMR", torture_domain_open_samr); torture_suite_add_simple_test(suite, "API-DOMCLOSESAMR", torture_domain_close_samr); + torture_suite_add_simple_test(suite, "API-BECOME-DC", torture_net_become_dc); - suite->description = talloc_strdup(suite, - "libnet convenience interface tests"); + suite->description = talloc_strdup(suite, "libnet convenience interface tests"); torture_register_suite(suite); Added: branches/SAMBA_4_0/source/torture/libnet/libnet_BecomeDC.c === --- branches/SAMBA_4_0/source/torture/libnet/libnet_BecomeDC.c 2006-12-12 23:01:51 UTC (rev 20143) +++ branches/SAMBA_4_0/source/torture/libnet/libnet_BecomeDC.c 2006-12-12 23:23:50 UTC (rev 20144) @@ -0,0 +1,82 @@ +/* + Unix SMB/CIFS implementation. + + libnet_BecomeDC() tests + + Copyright (C) Stefan (metze) Metzmacher 2006 + + 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" +#include "lib/cmdline/popt_common.h" +#include "torture/torture.h" +#include "torture/rpc/rpc.h" +#include "libnet/libnet.h" +#include "lib/events/events.h" + +#define TORTURE_NETBIOS_NAME "smbtorturedc" + +BOOL torture_net_become_dc(struct torture_context *torture) +{ + BOOL ret = True; + NTSTATUS status; + struct libnet_context *ctx; + struct libnet_BecomeDC b; + struct libnet_UnbecomeDC u; + struct test_join *tj; + struct cli_credentials *machine_account; + + /* Join domain as a member server. */ + tj = torture_join_domain(TORTURE_NETBIOS_NAME, +ACB_WSTRUST, +&machine_account); + if (!tj) { + DEBUG(0, ("%s failed to join domain as workstation\n", + TORTURE_NETBIOS_NAME)); + return False; + } + + ctx = libnet_context_init(event_context_init(torture)); + ctx->cred = cmdline_credentials; + + b.in.domain_dns_name= torture_join_dom_dns_name(tj); + b.in.domain_netbios_name= torture_join_dom_netbios_name(tj); + b.in
svn commit: samba r20143 - in branches/SAMBA_4_0: source/scripting/ejs testprogs/ejs
Author: mimir Date: 2006-12-12 23:01:51 + (Tue, 12 Dec 2006) New Revision: 20143 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20143 Log: a bit of experiments before doing serious changes in ejsnet. rafal Modified: branches/SAMBA_4_0/source/scripting/ejs/ejsnet.c branches/SAMBA_4_0/testprogs/ejs/ejsnet.js Changeset: Modified: branches/SAMBA_4_0/source/scripting/ejs/ejsnet.c === --- branches/SAMBA_4_0/source/scripting/ejs/ejsnet.c2006-12-12 22:57:43 UTC (rev 20142) +++ branches/SAMBA_4_0/source/scripting/ejs/ejsnet.c2006-12-12 23:01:51 UTC (rev 20143) @@ -336,6 +336,11 @@ struct libnet_context *ctx; const char *userman_domain = NULL; struct libnet_UserInfo req; + struct MprVar mprUserInfo; + struct MprVar mprAccountName, mprFullName, mprDescription; + struct MprVar mprHomeDir, mprHomeDrive, mprComment; + struct MprVar mprLogonScript; + struct MprVar mprAcctExpiry, mprAllowPassChange, mprForcePassChange; if (argc != 1) { ejsSetErrorMsg(eid, "argument 1 must be a string"); @@ -364,9 +369,44 @@ ejsSetErrorMsg(eid, "%s", req.out.error_string); } - /* TODO: create user info object and pass received properties */ + /* create UserInfo object */ + mprUserInfo = mprObject("UserInfo"); + mprAccountName = mprString(req.out.account_name); + mprFullName = mprString(req.out.full_name); + mprDescription = mprString(req.out.description); + mprHomeDir = mprString(req.out.home_directory); + mprHomeDrive = mprString(req.out.home_drive); + mprComment = mprString(req.out.comment); + mprLogonScript = mprString(req.out.logon_script); + mprAcctExpiry = mprString(timestring(mem_ctx, req.out.acct_expiry->tv_sec)); + mprAllowPassChange = mprString(timestring(mem_ctx, req.out.allow_password_change->tv_sec)); + mprForcePassChange = mprString(timestring(mem_ctx, req.out.force_password_change->tv_sec)); + + status = mprSetVar(&mprUserInfo, "AccountName", mprAccountName); + if (!NT_STATUS_IS_OK(status)) goto done; + status = mprSetVar(&mprUserInfo, "FullName", mprFullName); + if (!NT_STATUS_IS_OK(status)) goto done; + status = mprSetVar(&mprUserInfo, "Description", mprDescription); + if (!NT_STATUS_IS_OK(status)) goto done; + status = mprSetVar(&mprUserInfo, "HomeDirectory", mprHomeDir); + if (!NT_STATUS_IS_OK(status)) goto done; + status = mprSetVar(&mprUserInfo, "HomeDrive", mprHomeDrive); + if (!NT_STATUS_IS_OK(status)) goto done; + status = mprSetVar(&mprUserInfo, "Comment", mprComment); + if (!NT_STATUS_IS_OK(status)) goto done; + status = mprSetVar(&mprUserInfo, "LogonScript", mprLogonScript); + if (!NT_STATUS_IS_OK(status)) goto done; + status = mprSetVar(&mprUserInfo, "AcctExpiry", mprAcctExpiry); + if (!NT_STATUS_IS_OK(status)) goto done; + status = mprSetVar(&mprUserInfo, "AllowPasswordChange", mprAllowPassChange); + if (!NT_STATUS_IS_OK(status)) goto done; + status = mprSetVar(&mprUserInfo, "ForcePasswordChange", mprForcePassChange); + if (!NT_STATUS_IS_OK(status)) goto done; + +done: talloc_free(mem_ctx); + mpr_Return(eid, mprUserInfo); return 0; } Modified: branches/SAMBA_4_0/testprogs/ejs/ejsnet.js === --- branches/SAMBA_4_0/testprogs/ejs/ejsnet.js 2006-12-12 22:57:43 UTC (rev 20142) +++ branches/SAMBA_4_0/testprogs/ejs/ejsnet.js 2006-12-12 23:01:51 UTC (rev 20143) @@ -30,6 +30,12 @@ return -1; } +var info = usr_ctx.Info(options.ARGV[1]); +println("UserInfo.AccountName = " + info.AccountName); +println("UserInfo.Description = " + info.Description); +println("UserInfo.FullName = " + info.FullName); +println("UserInfo.AcctExpiry = " + info.AcctExpiry); + var status = usr_ctx.Delete(options.ARGV[1]); if (status.is_ok != true) { println("Failed to delete user account " + options.ARGV[1] + ": " + status.errstr);
svn commit: samba r20142 - in branches/SAMBA_4_0/source/libnet: .
Author: metze Date: 2006-12-12 22:57:43 + (Tue, 12 Dec 2006) New Revision: 20142 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20142 Log: only the DDNS updates are missing for the full libnet_BecomeDC(), but that's not needed untill we can support the DsGetNCChanges() in the server... metze Modified: branches/SAMBA_4_0/source/libnet/libnet_become_dc.c Changeset: Modified: branches/SAMBA_4_0/source/libnet/libnet_become_dc.c === --- branches/SAMBA_4_0/source/libnet/libnet_become_dc.c 2006-12-12 22:43:35 UTC (rev 20141) +++ branches/SAMBA_4_0/source/libnet/libnet_become_dc.c 2006-12-12 22:57:43 UTC (rev 20142) @@ -1951,7 +1951,8 @@ talloc_free(r); - composite_error(c, NT_STATUS_NOT_IMPLEMENTED); + /* TODO: use DDNS updates and register dns names */ + composite_done(c); } static NTSTATUS becomeDC_ldap2_modify_computer(struct libnet_BecomeDC_state *s)
svn commit: samba r20141 - in branches/SAMBA_4_0/source/libcli/ldap: .
Author: metze Date: 2006-12-12 22:43:35 + (Tue, 12 Dec 2006) New Revision: 20141 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20141 Log: use the gensec_features of the cli_credentials for ildap connections, instead of hardcoded GENSEC_FEATURE_SEAL. That means plain LDAP is now the default. metze Modified: branches/SAMBA_4_0/source/libcli/ldap/ldap_bind.c Changeset: Modified: branches/SAMBA_4_0/source/libcli/ldap/ldap_bind.c === --- branches/SAMBA_4_0/source/libcli/ldap/ldap_bind.c 2006-12-12 22:41:42 UTC (rev 20140) +++ branches/SAMBA_4_0/source/libcli/ldap/ldap_bind.c 2006-12-12 22:43:35 UTC (rev 20141) @@ -28,6 +28,7 @@ #include "lib/tls/tls.h" #include "auth/gensec/gensec.h" #include "auth/gensec/socket.h" +#include "auth/credentials/credentials.h" #include "lib/stream/packet.h" struct ldap_simple_creds { @@ -211,7 +212,7 @@ int count, i; const char **sasl_names; - + uint32_t old_gensec_features; static const char *supported_sasl_mech_attrs[] = { "supportedSASLMechanisms", NULL @@ -225,10 +226,12 @@ /* require Kerberos SIGN/SEAL only if we don't use SSL * Windows seem not to like double encryption */ - if (!tls_enabled(conn->sock)) { - gensec_want_feature(conn->gensec, 0 | GENSEC_FEATURE_SIGN | GENSEC_FEATURE_SEAL); + old_gensec_features = cli_credentials_get_gensec_features(creds); + if (tls_enabled(conn->sock)) { + cli_credentials_set_gensec_features(creds, 0); } + /* this call also sets the gensec_want_features */ status = gensec_set_credentials(conn->gensec, creds); if (!NT_STATUS_IS_OK(status)) { DEBUG(1, ("Failed to set GENSEC creds: %s\n", @@ -236,6 +239,9 @@ goto failed; } + /* reset the original gensec_features */ + cli_credentials_set_gensec_features(creds, old_gensec_features); + if (conn->host) { status = gensec_set_target_hostname(conn->gensec, conn->host); if (!NT_STATUS_IS_OK(status)) {
svn commit: samba r20140 - in branches: SAMBA_3_0/source/include SAMBA_3_0/source/nsswitch SAMBA_3_0_24/source/include SAMBA_3_0_24/source/nsswitch
Author: jra Date: 2006-12-12 22:41:42 + (Tue, 12 Dec 2006) New Revision: 20140 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20140 Log: Make online/offline detection completely asynchronous. Now I've done this I might be able to reduce the probe timeout and reduce the backoff algorithm, going back to checking every cache time seconds (5 mins by default), as the parent or forked domain child will never block. Jeremy. Modified: branches/SAMBA_3_0/source/include/messages.h branches/SAMBA_3_0/source/nsswitch/winbindd_cm.c branches/SAMBA_3_0/source/nsswitch/winbindd_dual.c branches/SAMBA_3_0_24/source/include/messages.h branches/SAMBA_3_0_24/source/nsswitch/winbindd_cm.c branches/SAMBA_3_0_24/source/nsswitch/winbindd_dual.c Changeset: Sorry, the patch is too large (561 lines) to include; please use WebSVN to see it! WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20140
svn commit: samba r20139 - in branches/SAMBA_4_0/source/heimdal/lib/gssapi/krb5: .
Author: metze Date: 2006-12-12 22:38:23 + (Tue, 12 Dec 2006) New Revision: 20139 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20139 Log: only add GSS_C_CONF_FLAG and GSS_C_INTEG_FLAG if the caller requested it! this is needed to create plain, singed or sealed LDAP connections. this should go into lorikeet and main heimdal... metze Modified: branches/SAMBA_4_0/source/heimdal/lib/gssapi/krb5/init_sec_context.c Changeset: Modified: branches/SAMBA_4_0/source/heimdal/lib/gssapi/krb5/init_sec_context.c === --- branches/SAMBA_4_0/source/heimdal/lib/gssapi/krb5/init_sec_context.c 2006-12-12 22:34:35 UTC (rev 20138) +++ branches/SAMBA_4_0/source/heimdal/lib/gssapi/krb5/init_sec_context.c 2006-12-12 22:38:23 UTC (rev 20139) @@ -470,8 +470,11 @@ if (req_flags & GSS_C_EXTENDED_ERROR_FLAG) flags |= GSS_C_EXTENDED_ERROR_FLAG; -flags |= GSS_C_CONF_FLAG; -flags |= GSS_C_INTEG_FLAG; +if (req_flags & GSS_C_CONF_FLAG) +flags |= GSS_C_CONF_FLAG; +if (req_flags & GSS_C_INTEG_FLAG) +flags |= GSS_C_INTEG_FLAG; + flags |= GSS_C_TRANS_FLAG; if (ret_flags)
svn commit: samba r20138 - in branches/SAMBA_4_0/source/libnet: .
Author: mimir Date: 2006-12-12 22:34:35 + (Tue, 12 Dec 2006) New Revision: 20138 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20138 Log: return the proper status for the other functions as well. rafal Modified: branches/SAMBA_4_0/source/libnet/userman.c Changeset: Modified: branches/SAMBA_4_0/source/libnet/userman.c === --- branches/SAMBA_4_0/source/libnet/userman.c 2006-12-12 22:28:33 UTC (rev 20137) +++ branches/SAMBA_4_0/source/libnet/userman.c 2006-12-12 22:34:35 UTC (rev 20138) @@ -309,10 +309,13 @@ /* receive samr_DeleteUser result */ c->status = dcerpc_ndr_request_recv(s->req); NT_STATUS_NOT_OK_RETURN(c->status); + + /* return the actual function call status */ + c->status = s->deleteuser.out.result; c->state = COMPOSITE_STATE_DONE; - return NT_STATUS_OK; + return c->status; } @@ -778,7 +781,8 @@ c->status = dcerpc_ndr_request_recv(s->req); NT_STATUS_NOT_OK_RETURN(c->status); - NT_STATUS_NOT_OK_RETURN(s->setuser.out.result); + /* return the actual function call status */ + c->status = s->setuser.out.result; if (s->change.fields == 0) { /* all fields have been set - we're done */ @@ -788,7 +792,7 @@ return usermod_change(c, s); } - return NT_STATUS_OK; + return c->status; }
svn commit: samba r20137 - in branches/SAMBA_4_0/source/libnet: .
Author: mimir Date: 2006-12-12 22:28:33 + (Tue, 12 Dec 2006) New Revision: 20137 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20137 Log: return the proper status. rafal Modified: branches/SAMBA_4_0/source/libnet/userman.c Changeset: Modified: branches/SAMBA_4_0/source/libnet/userman.c === --- branches/SAMBA_4_0/source/libnet/userman.c 2006-12-12 22:05:48 UTC (rev 20136) +++ branches/SAMBA_4_0/source/libnet/userman.c 2006-12-12 22:28:33 UTC (rev 20137) @@ -59,9 +59,12 @@ { c->status = dcerpc_ndr_request_recv(s->req); NT_STATUS_NOT_OK_RETURN(c->status); + + /* return the actual function call status */ + c->status = s->createuser.out.result; c->state = COMPOSITE_STATE_DONE; - return NT_STATUS_OK; + return c->status; }
svn commit: samba r20136 - in branches: SAMBA_3_0/source/nsswitch SAMBA_3_0_24/source/nsswitch
Author: jmcd Date: 2006-12-12 22:05:48 + (Tue, 12 Dec 2006) New Revision: 20136 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20136 Log: Fix #4290. Properly compute time to password expiration in message from pam_winbind. Thanks to Andrew Benham <[EMAIL PROTECTED]> Modified: branches/SAMBA_3_0/source/nsswitch/pam_winbind.c branches/SAMBA_3_0_24/source/nsswitch/pam_winbind.c Changeset: Modified: branches/SAMBA_3_0/source/nsswitch/pam_winbind.c === --- branches/SAMBA_3_0/source/nsswitch/pam_winbind.c2006-12-12 21:47:56 UTC (rev 20135) +++ branches/SAMBA_3_0/source/nsswitch/pam_winbind.c2006-12-12 22:05:48 UTC (rev 20136) @@ -536,7 +536,8 @@ (response.data.auth.policy.expire) && (response.data.auth.info3.pass_last_set_time + response.data.auth.policy.expire > time(NULL) ) ) { - int days = response.data.auth.policy.expire / SECONDS_PER_DAY; + int days = (response.data.auth.info3.pass_last_set_time + response.data.auth.policy.expire - + time(NULL))/ SECONDS_PER_DAY; if (days <= DAYS_TO_WARN_BEFORE_PWD_EXPIRES) { _make_remark_format(pamh, PAM_TEXT_INFO, "Your password will expire in %d days", days); } Modified: branches/SAMBA_3_0_24/source/nsswitch/pam_winbind.c === --- branches/SAMBA_3_0_24/source/nsswitch/pam_winbind.c 2006-12-12 21:47:56 UTC (rev 20135) +++ branches/SAMBA_3_0_24/source/nsswitch/pam_winbind.c 2006-12-12 22:05:48 UTC (rev 20136) @@ -536,7 +536,8 @@ (response.data.auth.policy.expire) && (response.data.auth.info3.pass_last_set_time + response.data.auth.policy.expire > time(NULL) ) ) { - int days = response.data.auth.policy.expire / SECONDS_PER_DAY; + int days = (response.data.auth.info3.pass_last_set_time + response.data.auth.policy.expire - + time(NULL))/ SECONDS_PER_DAY; if (days <= DAYS_TO_WARN_BEFORE_PWD_EXPIRES) { _make_remark_format(pamh, PAM_TEXT_INFO, "Your password will expire in %d days", days); }
svn commit: samba r20135 - in branches/SAMBA_4_0/source/auth: credentials gensec
Author: metze Date: 2006-12-12 21:47:56 + (Tue, 12 Dec 2006) New Revision: 20135 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20135 Log: attach default gensec features to the cli_credentials structure, so make it possible to force encryption or signing. metze Modified: branches/SAMBA_4_0/source/auth/credentials/credentials.c branches/SAMBA_4_0/source/auth/credentials/credentials.h branches/SAMBA_4_0/source/auth/gensec/gensec.c Changeset: Modified: branches/SAMBA_4_0/source/auth/credentials/credentials.c === --- branches/SAMBA_4_0/source/auth/credentials/credentials.c2006-12-12 21:47:47 UTC (rev 20134) +++ branches/SAMBA_4_0/source/auth/credentials/credentials.c2006-12-12 21:47:56 UTC (rev 20135) @@ -63,6 +63,7 @@ cred->callback_running = False; cli_credentials_set_kerberos_state(cred, CRED_AUTO_USE_KERBEROS); + cli_credentials_set_gensec_features(cred, 0); return cred; } @@ -78,7 +79,17 @@ return creds->use_kerberos; } +void cli_credentials_set_gensec_features(struct cli_credentials *creds, uint32_t gensec_features) +{ + creds->gensec_features = gensec_features; +} +uint32_t cli_credentials_get_gensec_features(struct cli_credentials *creds) +{ + return creds->gensec_features; +} + + /** * Obtain the username for this credentials context. * @param cred credentials context Modified: branches/SAMBA_4_0/source/auth/credentials/credentials.h === --- branches/SAMBA_4_0/source/auth/credentials/credentials.h2006-12-12 21:47:47 UTC (rev 20134) +++ branches/SAMBA_4_0/source/auth/credentials/credentials.h2006-12-12 21:47:56 UTC (rev 20135) @@ -106,6 +106,9 @@ /* Should we be trying to use kerberos? */ enum credentials_use_kerberos use_kerberos; + /* gensec features which should be used for connections */ + uint32_t gensec_features; + /* Number of retries left before bailing out */ int tries; Modified: branches/SAMBA_4_0/source/auth/gensec/gensec.c === --- branches/SAMBA_4_0/source/auth/gensec/gensec.c 2006-12-12 21:47:47 UTC (rev 20134) +++ branches/SAMBA_4_0/source/auth/gensec/gensec.c 2006-12-12 21:47:56 UTC (rev 20135) @@ -1047,6 +1047,8 @@ _PUBLIC_ NTSTATUS gensec_set_credentials(struct gensec_security *gensec_security, struct cli_credentials *credentials) { gensec_security->credentials = talloc_reference(gensec_security, credentials); + NT_STATUS_HAVE_NO_MEMORY(gensec_security->credentials); + gensec_want_feature(gensec_security, cli_credentials_get_gensec_features(gensec_security->credentials)); return NT_STATUS_OK; }
svn commit: samba r20134 - in branches/SAMBA_4_0/source/lib/samba3: .
Author: abartlet Date: 2006-12-12 21:47:47 + (Tue, 12 Dec 2006) New Revision: 20134 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20134 Log: The IBM Checker correctly notes that *p cannot be \0 and still satisfy the loop entry condition. Andrew Bartlett Modified: branches/SAMBA_4_0/source/lib/samba3/smbpasswd.c Changeset: Modified: branches/SAMBA_4_0/source/lib/samba3/smbpasswd.c === --- branches/SAMBA_4_0/source/lib/samba3/smbpasswd.c2006-12-12 20:30:31 UTC (rev 20133) +++ branches/SAMBA_4_0/source/lib/samba3/smbpasswd.c2006-12-12 21:47:47 UTC (rev 20134) @@ -169,7 +169,6 @@ break; case ':': case '\n': - case '\0': case ']': default: finished = True;
svn commit: samba r20133 - in branches/SAMBA_3_0/source/lib: .
Author: herb Date: 2006-12-12 20:30:31 + (Tue, 12 Dec 2006) New Revision: 20133 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20133 Log: get rid of defined but not used warning - static function only used inside the #ifdef HAVE_NATIVE_ICONV Modified: branches/SAMBA_3_0/source/lib/iconv.c Changeset: Modified: branches/SAMBA_3_0/source/lib/iconv.c === --- branches/SAMBA_3_0/source/lib/iconv.c 2006-12-12 20:27:01 UTC (rev 20132) +++ branches/SAMBA_3_0/source/lib/iconv.c 2006-12-12 20:30:31 UTC (rev 20133) @@ -128,6 +128,7 @@ } } +#ifdef HAVE_NATIVE_ICONV /* if there was an error then reset the internal state, this ensures that we don't have a shift state remaining for character sets like SJIS */ @@ -135,7 +136,6 @@ const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft) { -#ifdef HAVE_NATIVE_ICONV size_t ret = iconv((iconv_t)cd, (char **)inbuf, inbytesleft, outbuf, outbytesleft); @@ -145,11 +145,8 @@ errno = saved_errno; } return ret; -#else - errno = EINVAL; - return -1; -#endif } +#endif /** * This is a simple portable iconv() implementaion.
svn commit: samba r20132 - in branches/SAMBA_3_0/source/libads: .
Author: herb Date: 2006-12-12 20:27:01 + (Tue, 12 Dec 2006) New Revision: 20132 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20132 Log: get rid of defined but not used warning - static function only used inside the #ifdef HAVE_KRB5 Modified: branches/SAMBA_3_0/source/libads/sasl.c Changeset: Modified: branches/SAMBA_3_0/source/libads/sasl.c === --- branches/SAMBA_3_0/source/libads/sasl.c 2006-12-12 20:15:47 UTC (rev 20131) +++ branches/SAMBA_3_0/source/libads/sasl.c 2006-12-12 20:27:01 UTC (rev 20132) @@ -136,6 +136,7 @@ return ADS_ERROR(rc); } +#ifdef HAVE_KRB5 /* perform a LDAP/SASL/SPNEGO/KRB5 bind */ @@ -165,6 +166,7 @@ return ADS_ERROR(rc); } +#endif /* this performs a SASL/SPNEGO bind
svn commit: samba r20131 - in branches/SAMBA_3_0/source: lib lib/talloc libaddns printing smbd utils
Author: herb Date: 2006-12-12 20:15:47 + (Tue, 12 Dec 2006) New Revision: 20131 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20131 Log: get rid of a few no previous prototype warnings Modified: branches/SAMBA_3_0/source/lib/interfaces.c branches/SAMBA_3_0/source/lib/talloc/talloc.h branches/SAMBA_3_0/source/libaddns/dns.h branches/SAMBA_3_0/source/printing/print_cups.c branches/SAMBA_3_0/source/printing/print_iprint.c branches/SAMBA_3_0/source/smbd/oplock_irix.c branches/SAMBA_3_0/source/smbd/server.c branches/SAMBA_3_0/source/utils/status_profile.c Changeset: Modified: branches/SAMBA_3_0/source/lib/interfaces.c === --- branches/SAMBA_3_0/source/lib/interfaces.c 2006-12-12 19:02:14 UTC (rev 20130) +++ branches/SAMBA_3_0/source/lib/interfaces.c 2006-12-12 20:15:47 UTC (rev 20131) @@ -362,6 +362,7 @@ return r; } +int get_interfaces(struct iface_struct *ifaces, int max_interfaces); /* this wrapper is used to remove duplicates from the interface list generated above */ int get_interfaces(struct iface_struct *ifaces, int max_interfaces) Modified: branches/SAMBA_3_0/source/lib/talloc/talloc.h === --- branches/SAMBA_3_0/source/lib/talloc/talloc.h 2006-12-12 19:02:14 UTC (rev 20130) +++ branches/SAMBA_3_0/source/lib/talloc/talloc.h 2006-12-12 20:15:47 UTC (rev 20131) @@ -123,6 +123,7 @@ const char *talloc_get_name(const void *ptr); void *talloc_check_name(const void *ptr, const char *name); void *talloc_parent(const void *ptr); +const char *talloc_parent_name(const void *context); void *talloc_init(const char *fmt, ...) PRINTF_ATTRIBUTE(1,2); int talloc_free(void *ptr); void talloc_free_children(void *ptr); Modified: branches/SAMBA_3_0/source/libaddns/dns.h === --- branches/SAMBA_3_0/source/libaddns/dns.h2006-12-12 19:02:14 UTC (rev 20130) +++ branches/SAMBA_3_0/source/libaddns/dns.h2006-12-12 20:15:47 UTC (rev 20131) @@ -405,6 +405,9 @@ const char *name, const in_addr_t *ip, struct dns_rrec **prec); +DNS_ERROR dns_create_name_not_in_use_record(TALLOC_CTX *mem_ctx, + const char *name, uint32 type, + struct dns_rrec **prec); DNS_ERROR dns_create_delete_record(TALLOC_CTX *mem_ctx, const char *name, uint16 type, uint16 r_class, struct dns_rrec **prec); Modified: branches/SAMBA_3_0/source/printing/print_cups.c === --- branches/SAMBA_3_0/source/printing/print_cups.c 2006-12-12 19:02:14 UTC (rev 20130) +++ branches/SAMBA_3_0/source/printing/print_cups.c 2006-12-12 20:15:47 UTC (rev 20131) @@ -1201,5 +1201,6 @@ #else /* this keeps fussy compilers happy */ + void print_cups_dummy(void); void print_cups_dummy(void) {} #endif /* HAVE_CUPS */ Modified: branches/SAMBA_3_0/source/printing/print_iprint.c === --- branches/SAMBA_3_0/source/printing/print_iprint.c 2006-12-12 19:02:14 UTC (rev 20130) +++ branches/SAMBA_3_0/source/printing/print_iprint.c 2006-12-12 20:15:47 UTC (rev 20131) @@ -1235,5 +1235,6 @@ #else /* this keeps fussy compilers happy */ + void print_iprint_dummy(void); void print_iprint_dummy(void) {} #endif /* HAVE_IPRINT */ Modified: branches/SAMBA_3_0/source/smbd/oplock_irix.c === --- branches/SAMBA_3_0/source/smbd/oplock_irix.c2006-12-12 19:02:14 UTC (rev 20130) +++ branches/SAMBA_3_0/source/smbd/oplock_irix.c2006-12-12 20:15:47 UTC (rev 20131) @@ -266,5 +266,6 @@ return &koplocks; } #else + void oplock_irix_dummy(void); void oplock_irix_dummy(void) {} #endif /* HAVE_KERNEL_OPLOCKS_IRIX */ Modified: branches/SAMBA_3_0/source/smbd/server.c === --- branches/SAMBA_3_0/source/smbd/server.c 2006-12-12 19:02:14 UTC (rev 20130) +++ branches/SAMBA_3_0/source/smbd/server.c 2006-12-12 20:15:47 UTC (rev 20131) @@ -786,7 +786,7 @@ mkproto.h. Mixing $(builddir) and $(srcdir) source files in the current prototype generation system is too complicated. */ -void build_options(BOOL screen); +extern void build_options(BOOL screen); int main(int argc,const char *argv[]) { Modified: branches/SAMBA_3_0/source/utils/status_profile.c === --- branches/SAMBA_3_0/source/utils/status_profile.c2006-12-12 19:02:14 UTC (rev 20130) +++ branches/SAMBA_3_0/source/uti
svn commit: samba-docs r1004 - in trunk/Samba3-HOWTO: .
Author: jmcd Date: 2006-12-12 19:21:31 + (Tue, 12 Dec 2006) New Revision: 1004 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba-docs&rev=1004 Log: Also update the HOWTO with the createcomputer information for net ads join Modified: trunk/Samba3-HOWTO/TOSHARG-DomainMember.xml Changeset: Modified: trunk/Samba3-HOWTO/TOSHARG-DomainMember.xml === --- trunk/Samba3-HOWTO/TOSHARG-DomainMember.xml 2006-12-12 16:52:26 UTC (rev 1003) +++ trunk/Samba3-HOWTO/TOSHARG-DomainMember.xml 2006-12-12 19:21:31 UTC (rev 1004) @@ -1112,7 +1112,7 @@ this to be done using the following syntax: &rootprompt; kinit [EMAIL PROTECTED] -&rootprompt; net ads join "organizational_unit" +&rootprompt; net ads join createcomputer="organizational_unit" Your ADS manager will be able to advise what should be specified for the "organizational_unit" parameter. @@ -1123,13 +1123,15 @@ container ADS For example, you may want to create the machine trust account in a container called Servers -under the organizational directory Computers\BusinessUnit\Department, like this: +under the organizational directory Computers/BusinessUnit/Department, like this: -&rootprompt; net ads join "Computers\BusinessUnit\Department\Servers" +&rootprompt; net ads join "Computers/BusinessUnit/Department/Servers" This command will place the Samba server machine trust account in the container -Computers\BusinessUnit\Department\Servers. The container should exist in the ADS directory -before executing this command. +Computers/BusinessUnit/Department/Servers. The container should exist in the ADS directory +before executing this command. Please note that forward slashes must be used, because backslashes are both +valid characters in an OU name and used as escapes for other characters. If you need a backslash in an OU +name, it may need to be quadrupled to pass through the shell escape and ldap escape.
Re: Rev 37: Raw implementation done. in http://samba.org/~tridge/psomogyi/
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi Peter, do you really need typedef's here? using 'struct ' in the code is in most cases more readable. metze > typedef struct _ibw_conn_priv { > + struct ibv_comp_channel *verbs_channel; > + struct fd_event *verbs_channel_event; > + > struct rdma_cm_id *cm_id; /* client's cm id */ > int is_accepted; > > struct ibv_cq *cq; /* qp is in cm_id */ > struct ibv_mr *mr; > - char *buf; /* fixed size (opts.bufsize) buffer for send/recv */ > + char *buf; /* fixed size (qsize * opts.max_msg_size) buffer for > send/recv */ > ibw_wr *wr_list_avail; > ibw_wr *wr_list_used; > - ibw_wr **wr_index; /* array[0..(max_send_wr + max_recv_wr)-1] of > (ibw_wr *) */ > + ibw_wr **wr_index; /* array[0..(qsize-1)] of (ibw_wr *) */ > } ibw_conn_priv; > > -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.2 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iD8DBQFFfv3zm70gjA5TCD8RApmPAJ9wvNErq22jI7g4GSLQdWc1cERdEwCgqnWs T/HlKIlGnfzcGthuVDuWJG0= =BFP3 -END PGP SIGNATURE-
svn commit: samba r20130 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ldap: .
Author: metze Date: 2006-12-12 19:02:14 + (Tue, 12 Dec 2006) New Revision: 20130 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20130 Log: remove one more talloc_get_type() metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c 2006-12-12 18:58:21 UTC (rev 20129) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c 2006-12-12 19:02:14 UTC (rev 20130) @@ -476,9 +476,9 @@ return lldb_ldap_to_ldb(ret); } -static int lldb_parse_result(struct ldb_handle *handle, LDAPMessage *result) +static int lldb_parse_result(struct lldb_context *ac, LDAPMessage *result) { - struct lldb_context *ac = talloc_get_type(handle->private_data, struct lldb_context); + struct ldb_handle *handle = ac->handle; struct lldb_private *lldb = ac->lldb; struct ldb_reply *ares = NULL; LDAPMessage *msg; @@ -683,7 +683,7 @@ goto done; } - return lldb_parse_result(handle, result); + return lldb_parse_result(ac, result); case LDB_WAIT_ALL: timeout.tv_usec = 0; @@ -706,7 +706,7 @@ return LDB_ERR_TIME_LIMIT_EXCEEDED; } - ret = lldb_parse_result(handle, result); + ret = lldb_parse_result(ac, result); if (ret != LDB_SUCCESS) { return ret; }
svn commit: samba r20129 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ildap: .
Author: metze Date: 2006-12-12 18:58:21 + (Tue, 12 Dec 2006) New Revision: 20129 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20129 Log: remove unused structure elements metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 18:52:25 UTC (rev 20128) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 18:58:21 UTC (rev 20129) @@ -53,12 +53,10 @@ struct ildb_private { struct ldap_connection *ldap; - struct ldb_context *ldb; struct ldb_module *module; }; struct ildb_context { - struct ldb_module *module; struct ildb_private *ildb; struct ldb_handle *handle; struct ldap_request *req; @@ -128,7 +126,7 @@ if (NT_STATUS_IS_OK(status)) { return LDB_SUCCESS; } - ldb_set_errstring(ildb->ldb, ldap_errstr(ildb->ldap, status)); + ldb_set_errstring(ildb->module->ldb, ldap_errstr(ildb->ldap, status)); if (NT_STATUS_IS_LDAP(status)) { return NT_STATUS_LDAP_CODE(status); } @@ -181,7 +179,7 @@ handle->status = ildb_map_error(ildb, status); if (ac->callback && handle->status == LDB_SUCCESS) { /* FIXME: build a corresponding ares to pass on */ - handle->status = ac->callback(ac->module->ldb, ac->context, NULL); + handle->status = ac->callback(ac->ildb->module->ldb, ac->context, NULL); } handle->state = LDB_ASYNC_DONE; break; @@ -195,7 +193,7 @@ handle->status = ildb_map_error(ildb, status); if (ac->callback && handle->status == LDB_SUCCESS) { /* FIXME: build a corresponding ares to pass on */ - handle->status = ac->callback(ac->module->ldb, ac->context, NULL); + handle->status = ac->callback(ac->ildb->module->ldb, ac->context, NULL); } handle->state = LDB_ASYNC_DONE; break; @@ -209,7 +207,7 @@ handle->status = ildb_map_error(ildb, status); if (ac->callback && handle->status == LDB_SUCCESS) { /* FIXME: build a corresponding ares to pass on */ - handle->status = ac->callback(ac->module->ldb, ac->context, NULL); + handle->status = ac->callback(ac->ildb->module->ldb, ac->context, NULL); } handle->state = LDB_ASYNC_DONE; break; @@ -223,7 +221,7 @@ handle->status = ildb_map_error(ildb, status); if (ac->callback && handle->status == LDB_SUCCESS) { /* FIXME: build a corresponding ares to pass on */ - handle->status = ac->callback(ac->module->ldb, ac->context, NULL); + handle->status = ac->callback(ac->ildb->module->ldb, ac->context, NULL); } handle->state = LDB_ASYNC_DONE; break; @@ -256,7 +254,7 @@ ares->controls = talloc_move(ares, &msg->controls); if (msg->r.SearchResultDone.resultcode) { if (msg->r.SearchResultDone.errormessage) { - ldb_set_errstring(ac->module->ldb, msg->r.SearchResultDone.errormessage); + ldb_set_errstring(ac->ildb->module->ldb, msg->r.SearchResultDone.errormessage); } } @@ -276,7 +274,7 @@ search = &(msg->r.SearchResultEntry); - ares->message->dn = ldb_dn_new(ares->message, ac->module->ldb, search->dn); + ares->message->dn = ldb_dn_new(ares->message, ac->ildb->module->ldb, search->dn); if ( ! ldb_dn_validate(ares->message->dn)) { handle->status = LDB_ERR_OPERATIONS_ERROR; return; @@ -305,7 +303,7 @@ return; } - ret = ac->callback(ac->module->ldb, ac->context, ares); + ret = ac->callback(ac->ildb->module->ldb, ac->context, ares); if (ret) { handle->status = ret; } @@ -349,7 +347,6 @@ h->state = LDB_ASYNC_INIT; h->status = LDB_SUCCESS; - ildb_ac->module = ildb->module; ildb_ac->ildb = ildb;
svn commit: samba r20128 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ildap: .
Author: metze Date: 2006-12-12 18:52:25 + (Tue, 12 Dec 2006) New Revision: 20128 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20128 Log: get rid of more talloc_get_type() calls metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 18:45:12 UTC (rev 20127) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 18:52:25 UTC (rev 20128) @@ -138,8 +138,8 @@ static void ildb_request_timeout(struct event_context *ev, struct timed_event *te, struct timeval t, void *private_data) { - struct ldb_handle *handle = talloc_get_type(private_data, struct ldb_handle); - struct ildb_context *ac = talloc_get_type(handle->private_data, struct ildb_context); + struct ildb_context *ac = talloc_get_type(private_data, struct ildb_context); + struct ldb_handle *handle = ac->handle; if (ac->req->state == LDAP_REQUEST_PENDING) { DLIST_REMOVE(ac->req->conn->pending, ac->req); @@ -152,9 +152,9 @@ static void ildb_callback(struct ldap_request *req) { - struct ldb_handle *handle = talloc_get_type(req->async.private_data, struct ldb_handle); - struct ildb_context *ac = talloc_get_type(handle->private_data, struct ildb_context); - struct ildb_private *ildb = talloc_get_type(ac->module->private_data, struct ildb_private); + struct ildb_context *ac = talloc_get_type(req->async.private_data, struct ildb_context); + struct ldb_handle *handle = ac->handle; + struct ildb_private *ildb = ac->ildb; NTSTATUS status; int i; @@ -383,13 +383,13 @@ talloc_free(req->time_event); req->time_event = NULL; if (r->timeout) { - req->time_event = event_add_timed(req->conn->event.event_ctx, ildb_ac->handle, + req->time_event = event_add_timed(req->conn->event.event_ctx, ildb_ac, timeval_current_ofs(r->timeout, 0), - ildb_request_timeout, ildb_ac->handle); + ildb_request_timeout, ildb_ac); } req->async.fn = ildb_callback; - req->async.private_data = ildb_ac->handle; + req->async.private_data = ildb_ac; return LDB_SUCCESS; }
svn commit: samba r20127 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ldap: .
Author: metze Date: 2006-12-12 18:45:12 + (Tue, 12 Dec 2006) New Revision: 20127 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20127 Log: - allocate ldb_handle under ldb_request! fix a mem leak - pass ldb_request to init_lldb_handle() - remove some useless talloc_get_type() calls metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c 2006-12-12 18:25:19 UTC (rev 20126) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c 2006-12-12 18:45:12 UTC (rev 20127) @@ -51,7 +51,8 @@ }; struct lldb_context { - struct ldb_module *module; + struct lldb_private *lldb; + struct ldb_handle *handle; int msgid; int timeout; time_t starttime; @@ -64,42 +65,41 @@ return err; } -static struct ldb_handle *init_handle(struct lldb_private *lldb, struct ldb_module *module, - void *context, - int (*callback)(struct ldb_context *, void *, struct ldb_reply *), - int timeout, time_t starttime) +static struct lldb_context *init_lldb_handle(struct lldb_private *lldb, struct ldb_request *req) { struct lldb_context *ac; struct ldb_handle *h; - h = talloc_zero(lldb, struct ldb_handle); + h = talloc_zero(req, struct ldb_handle); if (h == NULL) { - ldb_set_errstring(module->ldb, "Out of Memory"); + ldb_set_errstring(lldb->module->ldb, "Out of Memory"); return NULL; } - h->module = module; + h->module = lldb->module; ac = talloc(h, struct lldb_context); if (ac == NULL) { - ldb_set_errstring(module->ldb, "Out of Memory"); + ldb_set_errstring(lldb->module->ldb, "Out of Memory"); talloc_free(h); return NULL; } - h->private_data = (void *)ac; + h->private_data = ac; h->state = LDB_ASYNC_INIT; h->status = LDB_SUCCESS; - ac->module = module; - ac->context = context; - ac->callback = callback; - ac->timeout = timeout; - ac->starttime = starttime; + ac->lldb = lldb; + ac->handle = h; + ac->context = req->context; + ac->callback = req->callback; + ac->timeout = req->timeout; + ac->starttime = req->starttime; ac->msgid = 0; - return h; + req->handle = h; + return ac; } /* convert a ldb_message structure to a list of LDAPMod structures @@ -256,13 +256,11 @@ ldb_debug(module->ldb, LDB_DEBUG_WARNING, "Controls are not yet supported by ldb_ldap backend!\n"); } - req->handle = init_handle(lldb, module, req->context, req->callback, req->timeout, req->starttime); - if (req->handle == NULL) { + lldb_ac = init_lldb_handle(lldb, req); + if (lldb_ac == NULL) { return LDB_ERR_OPERATIONS_ERROR; } - lldb_ac = talloc_get_type(req->handle->private_data, struct lldb_context); - search_base = ldb_dn_alloc_linearized(lldb_ac, req->op.search.base); if (req->op.search.base == NULL) { search_base = talloc_strdup(lldb_ac, ""); @@ -324,13 +322,11 @@ return LDB_ERR_INVALID_DN_SYNTAX; } - req->handle = init_handle(lldb, module, req->context, req->callback, req->timeout, req->starttime); - if (req->handle == NULL) { + lldb_ac = init_lldb_handle(lldb, req); + if (lldb_ac == NULL) { return LDB_ERR_OPERATIONS_ERROR; } - lldb_ac = talloc_get_type(req->handle->private_data, struct lldb_context); - mods = lldb_msg_to_mods(lldb_ac, req->op.add.message, 0); if (mods == NULL) { return LDB_ERR_OPERATIONS_ERROR; @@ -369,13 +365,11 @@ return LDB_ERR_INVALID_DN_SYNTAX; } - req->handle = init_handle(lldb, module, req->context, req->callback, req->timeout, req->starttime); + lldb_ac = init_lldb_handle(lldb, req); if (req->handle == NULL) { return LDB_ERR_OPERATIONS_ERROR; } - lldb_ac = talloc_get_type(req->handle->private_data, struct lldb_context); - mods = lldb_msg_to_mods(lldb_ac, req->op.mod.message, 1); if (mods == NULL) { return LDB_ERR_OPERATIONS_ERROR; @@ -413,13 +407,11 @@ return LDB_ERR_INVALID_DN_SYNTAX; } - req->handle = init_handle(lldb, module, req->context, req->callback, req->timeout, req->starttime); - if (req->handle == NULL) { + lldb_ac = init_lldb_handle(lldb, req); + if (lldb_ac == NULL) { retur
svn commit: samba r20126 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ldap: .
Author: metze Date: 2006-12-12 18:25:19 + (Tue, 12 Dec 2006) New Revision: 20126 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20126 Log: fix talloc hierachy and make lldb a child of module metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c 2006-12-12 18:14:31 UTC (rev 20125) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ldap/ldb_ldap.c 2006-12-12 18:25:19 UTC (rev 20126) @@ -47,6 +47,7 @@ struct lldb_private { LDAP *ldap; + struct ldb_module *module; }; struct lldb_context { @@ -786,20 +787,34 @@ const char *url, unsigned int flags, const char *options[], - struct ldb_module **module) + struct ldb_module **_module) { - struct lldb_private *lldb = NULL; + struct ldb_module *module; + struct lldb_private *lldb; int version = 3; int ret; - lldb = talloc(ldb, struct lldb_private); + module = talloc(ldb, struct ldb_module); + if (module == NULL) { + ldb_oom(ldb); + talloc_free(lldb); + return -1; + } + talloc_set_name_const(module, "ldb_ldap backend"); + module->ldb = ldb; + module->prev= module->next = NULL; + module->private_data= NULL; + module->ops = &lldb_ops; + + lldb = talloc(module, struct lldb_private); if (!lldb) { ldb_oom(ldb); goto failed; } + module->private_data= lldb; + lldb->module= module; + lldb->ldap = NULL; - lldb->ldap = NULL; - ret = ldap_initialize(&lldb->ldap, url); if (ret != LDAP_SUCCESS) { ldb_debug(ldb, LDB_DEBUG_FATAL, "ldap_initialize failed for URL '%s' - %s\n", @@ -816,22 +831,11 @@ goto failed; } - *module = talloc(ldb, struct ldb_module); - if (*module == NULL) { - ldb_oom(ldb); - talloc_free(lldb); - return -1; - } - talloc_set_name_const(*module, "ldb_ldap backend"); - (*module)->ldb = ldb; - (*module)->prev = (*module)->next = NULL; - (*module)->private_data = lldb; - (*module)->ops = &lldb_ops; - + *_module = module; return 0; failed: - talloc_free(lldb); + talloc_free(module); return -1; }
svn commit: samba r20125 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ildap: .
Author: metze Date: 2006-12-12 18:14:31 + (Tue, 12 Dec 2006) New Revision: 20125 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20125 Log: fix some ugly mem leaks in the ldb_ildb backend metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 17:38:42 UTC (rev 20124) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 18:14:31 UTC (rev 20125) @@ -329,7 +329,7 @@ struct ildb_context *ildb_ac; struct ldb_handle *h; - h = talloc_zero(ildb->ldap, struct ldb_handle); + h = talloc_zero(req, struct ldb_handle); if (h == NULL) { ldb_set_errstring(ildb->module->ldb, "Out of Memory"); return NULL; @@ -373,6 +373,7 @@ ldb_set_errstring(ildb->module->ldb, "async send request failed"); return LDB_ERR_OPERATIONS_ERROR; } + ildb_ac->req = talloc_steal(ildb_ac, req); if (!req->conn) { ldb_set_errstring(ildb->module->ldb, "connection to remote LDAP server dropped?"); @@ -389,7 +390,6 @@ req->async.fn = ildb_callback; req->async.private_data = ildb_ac->handle; - ildb_ac->req = talloc_move(ildb_ac, &req); return LDB_SUCCESS; } @@ -431,7 +431,7 @@ return LDB_ERR_OPERATIONS_ERROR; } - msg = new_ldap_message(ildb); + msg = new_ldap_message(req); if (msg == NULL) { ldb_set_errstring(module->ldb, "Out of Memory"); return LDB_ERR_OPERATIONS_ERROR; @@ -487,7 +487,7 @@ return ildb_request_noop(ildb, req); } - msg = new_ldap_message(ildb->ldap); + msg = new_ldap_message(req); if (msg == NULL) { return LDB_ERR_OPERATIONS_ERROR; } @@ -537,7 +537,7 @@ return ildb_request_noop(ildb, req); } - msg = new_ldap_message(ildb->ldap); + msg = new_ldap_message(req); if (msg == NULL) { return LDB_ERR_OPERATIONS_ERROR; } @@ -585,7 +585,7 @@ return ildb_request_noop(ildb, req); } - msg = new_ldap_message(ildb->ldap); + msg = new_ldap_message(req); if (msg == NULL) { return LDB_ERR_OPERATIONS_ERROR; } @@ -616,7 +616,7 @@ return ildb_request_noop(ildb, req); } - msg = new_ldap_message(ildb->ldap); + msg = new_ldap_message(req); if (msg == NULL) { return LDB_ERR_OPERATIONS_ERROR; }
Rev 37: Raw implementation done. in http://samba.org/~tridge/psomogyi/
revno: 37 revision-id: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] committer: Peter Somogyi <[EMAIL PROTECTED]> branch nick: ctdb timestamp: Tue 2006-12-12 19:09:16 +0100 message: Raw implementation done. Let's start compilation... modified: ib/ibwrapper.c ibwrapper.c-20061204130028-0125b4f5a72f4b11 ib/ibwrapper.h ibwrapper.h-20061204130028-32755c6266dd3c49 ib/ibwrapper_internal.h ibwrapper_internal.h-20061204130028-47f0a7e658b16ca2 === modified file 'ib/ibwrapper.c' --- a/ib/ibwrapper.c2006-12-11 18:56:15 + +++ b/ib/ibwrapper.c2006-12-12 18:09:16 + @@ -42,33 +42,34 @@ #define IBW_LASTERR_BUFSIZE 512 static char ibw_lasterr[IBW_LASTERR_BUFSIZE]; +static void ibw_event_handler_verbs(struct event_context *ev, + struct fd_event *fde, uint16_t flags, void *private_data); + static int ibw_init_memory(ibw_conn *conn) { ibw_ctx_priv *pctx = talloc_get_type(conn->ctx->internal, ibw_ctx_priv); ibw_conn_priv *pconn = talloc_get_type(conn->internal, ibw_conn_priv); - int i, num_msg; + int i; ibw_wr *p; - /* didn't find any reason to split send & recv buffer handling */ - num_msg = pctx->opts.max_recv_wr + pctx->opts.max_send_wr; - - pconn->buf = memalign(pctx->page_size, pctx->opts.max_msg_size); + pconn->buf = memalign(pctx->page_size, pctx->max_msg_size); if (!pconn->buf) { sprintf(ibw_lasterr, "couldn't allocate work buf\n"); return -1; } - pconn->mr = ibv_reg_mr(pctx->pd, pconn->buf, pctx->opts.bufsize, IBV_ACCESS_LOCAL_WRITE); + pconn->mr = ibv_reg_mr(pctx->pd, pconn->buf, + pctx->qsize * pctx->max_msg_size, IBV_ACCESS_LOCAL_WRITE); if (!pconn->mr) { - sprintf(ibw_lasterr, "Couldn't allocate mr\n"); + sprintf(ibw_lasterr, "couldn't allocate mr\n"); return -1; } - pconn->wr_index = talloc_size(pconn, num_msg * sizeof(ibw_wr *)); + pconn->wr_index = talloc_size(pconn, pctx->qsize * sizeof(ibw_wr *)); - for(i=0; iqsize; i++) { p = pconn->wr_index[i] = talloc_zero(pconn, ibw_wr); - p->msg = pconn->buf + (i * pconn->opts.max_msg_size); + p->msg = pconn->buf + (i * pctx->max_msg_size); p->wr_id = i; DLIST_ADD(pconn->mr_list_avail, p); @@ -82,17 +83,6 @@ ibw_ctx *pctx = talloc_get_type(ctx->internal, ibw_ctx_priv); assert(pctx!=NULL); - if (pctx->verbs_channel) { - ibv_destroy_comp_channel(pctx->verbs_channel); - pctx->verbs_channel = NULL; - } - - if (pctx->verbs_channel_event) { - /* TODO: do we have to do this here? */ - talloc_free(pctx->verbs_channel_event); - pctx->verbs_channel_event = NULL; - } - if (pctx->pd) { ibv_dealloc_pd(pctx->pd); pctx->pd = NULL; @@ -149,6 +139,15 @@ ibv_destroy_cq(pconn->cq); pconn->cq = NULL; } + if (pconn->verbs_channel) { + ibv_destroy_comp_channel(pconn->verbs_channel); + pconn->verbs_channel = NULL; + } + if (pconn->verbs_channel_event) { + /* TODO: do we have to do this here? */ + talloc_free(pconn->verbs_channel_event); + pconn->verbs_channel_event = NULL; + } if (pconn->cm_id) { rdma_destroy_id(pctx->cm_id); pctx->cm_id = NULL; @@ -195,30 +194,44 @@ struct ibv_qp_init_attr init_attr; int rc; + /* init mr */ if (ibw_init_memory(conn)) return -1; - pctx->cq = ibv_create_cq(conn->cm_id->verbs, pctx->opts.max_send_wr + pctx->opts.max_recv_wr, - ctx, ctx->verbs_channel, 0); + /* init verbs */ + pconn->verbs_channel = ibv_create_comp_channel(pconn->cm_id->verbs); + if (!pconn->verbs_channel) { + sprintf(ibw_lasterr, "ibv_create_comp_channel failed %d\n", errno); + goto cleanup; + } + DEBUG(10, "created channel %p\n", pconn->channel); + + pconn->verbs_channel_event = event_add_fd(pctx->ectx, conn, + pconn->verbs_channel->fd, EVENT_FD_READ, ibw_event_handler_verbs, conn); + + /* init cq */ + pconn->cq = ibv_create_cq(conn->cm_id->verbs, pctx->qsize, + conn, pconn->verbs_channel, 0); if (cq==NULL) { sprintf(ibw_lasterr, "ibv_create_cq failed\n"); return -1; } - rc = ibv_req_notify_cq(pctx->cq, 0); + rc = ibv_req_notify_cq(pconn->cq, 0); if (rc) { sprintf(ibw_lasterr, "ibv_req_notify_cq failed with %d\n", rc); return rc; } + /* init qp */
svn commit: samba r20124 - in branches/SAMBA_3_0/source: client include libsmb modules nsswitch printing smbd
Author: herb Date: 2006-12-12 17:38:42 + (Tue, 12 Dec 2006) New Revision: 20124 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20124 Log: clean up nested extern declaration warnings Modified: branches/SAMBA_3_0/source/client/smbmount.c branches/SAMBA_3_0/source/include/smb_macros.h branches/SAMBA_3_0/source/libsmb/clientgen.c branches/SAMBA_3_0/source/modules/vfs_expand_msdfs.c branches/SAMBA_3_0/source/modules/vfs_full_audit.c branches/SAMBA_3_0/source/nsswitch/winbindd_ads.c branches/SAMBA_3_0/source/nsswitch/winbindd_cache.c branches/SAMBA_3_0/source/nsswitch/winbindd_cm.c branches/SAMBA_3_0/source/nsswitch/winbindd_dual.c branches/SAMBA_3_0/source/nsswitch/winbindd_util.c branches/SAMBA_3_0/source/printing/print_generic.c branches/SAMBA_3_0/source/printing/printing.c branches/SAMBA_3_0/source/smbd/blocking.c branches/SAMBA_3_0/source/smbd/nttrans.c branches/SAMBA_3_0/source/smbd/sesssetup.c Changeset: Modified: branches/SAMBA_3_0/source/client/smbmount.c === --- branches/SAMBA_3_0/source/client/smbmount.c 2006-12-12 17:37:41 UTC (rev 20123) +++ branches/SAMBA_3_0/source/client/smbmount.c 2006-12-12 17:38:42 UTC (rev 20124) @@ -26,6 +26,8 @@ extern BOOL in_client; extern pstring user_socket_options; +extern char *optarg; +extern int optind; static pstring credentials; static pstring my_netbios_name; @@ -712,7 +714,6 @@ int opt; char *opts; char *opteq; - extern char *optarg; int val; char *p; @@ -862,8 +863,6 @@ / int main(int argc,char *argv[]) { - extern char *optarg; - extern int optind; char *p; DEBUGLEVEL = 1; Modified: branches/SAMBA_3_0/source/include/smb_macros.h === --- branches/SAMBA_3_0/source/include/smb_macros.h 2006-12-12 17:37:41 UTC (rev 20123) +++ branches/SAMBA_3_0/source/include/smb_macros.h 2006-12-12 17:38:42 UTC (rev 20124) @@ -86,10 +86,10 @@ #define IS_IPC(conn) ((conn) && (conn)->ipc) #define IS_PRINT(conn) ((conn) && (conn)->printer) /* you must add the following extern declaration to files using this macro + * (do not add it to the macro as that causes nested extern declaration warnings) * extern struct current_user current_user; */ #define FSP_BELONGS_CONN(fsp,conn) do {\ - extern struct current_user current_user;\ if (!((fsp) && (conn) && ((conn)==(fsp)->conn) && (current_user.vuid==(fsp)->vuid))) \ return ERROR_NT(NT_STATUS_INVALID_HANDLE); \ } while(0) @@ -97,10 +97,10 @@ #define FNUM_OK(fsp,c) ((fsp) && !(fsp)->is_directory && (c)==(fsp)->conn && current_user.vuid==(fsp)->vuid) /* you must add the following extern declaration to files using this macro + * (do not add it to the macro as that causes nested extern declaration warnings) * extern struct current_user current_user; */ #define CHECK_FSP(fsp,conn) do {\ - extern struct current_user current_user;\ if (!(fsp) || !(conn)) \ return ERROR_NT(NT_STATUS_INVALID_HANDLE); \ else if (((conn) != (fsp)->conn) || current_user.vuid != (fsp)->vuid) \ Modified: branches/SAMBA_3_0/source/libsmb/clientgen.c === --- branches/SAMBA_3_0/source/libsmb/clientgen.c2006-12-12 17:37:41 UTC (rev 20123) +++ branches/SAMBA_3_0/source/libsmb/clientgen.c2006-12-12 17:38:42 UTC (rev 20124) @@ -20,6 +20,8 @@ #include "includes.h" +extern int smb_read_error; + / Change the timeout (in milliseconds). / @@ -79,7 +81,6 @@ BOOL cli_receive_smb(struct cli_state *cli) { - extern int smb_read_error; BOOL ret; /* fd == -1 causes segfaults -- Tom ([EMAIL PROTECTED]) */ Modified: branches/SAMBA_3_0/source/modules/vfs_expand_msdfs.c === --- branches/SAMBA_3_0/source/modules/vfs_expand_msdfs.c2006-12-12 17:37:41 UTC (rev 20123) +++ branches/SAMBA_3_0/source/modules/vfs_expand_msdfs.c2006-12-12 17:38:42 UTC (rev 20124) @@ -23,6 +23,8 @@ #undef DBGC_CLASS #define DBGC_CLASS DBGC_VFS +extern userdom_struct current_user_info; + /** Under mapfile we expect a table of the following format: @@ -110,7 +112,6 @@ int filename_len; pstring targethost; pstring new_target; - extern userdom_struct current_user_
svn commit: samba r20123 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ildap: .
Author: metze Date: 2006-12-12 17:37:41 + (Tue, 12 Dec 2006) New Revision: 20123 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20123 Log: - avoid some more talloc_get_type() calls - pass down ldb_request metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 17:20:38 UTC (rev 20122) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 17:37:41 UTC (rev 20123) @@ -59,6 +59,8 @@ struct ildb_context { struct ldb_module *module; + struct ildb_private *ildb; + struct ldb_handle *handle; struct ldap_request *req; void *context; int (*callback)(struct ldb_context *, void *, struct ldb_reply *); @@ -321,53 +323,51 @@ } } -static struct ldb_handle *init_ildb_handle(struct ldb_module *module, - void *context, - int (*callback)(struct ldb_context *, void *, struct ldb_reply *)) +static struct ildb_context *init_ildb_handle(struct ildb_private *ildb, +struct ldb_request *req) { - struct ildb_private *ildb = talloc_get_type(module->private_data, struct ildb_private); struct ildb_context *ildb_ac; struct ldb_handle *h; h = talloc_zero(ildb->ldap, struct ldb_handle); if (h == NULL) { - ldb_set_errstring(module->ldb, "Out of Memory"); + ldb_set_errstring(ildb->module->ldb, "Out of Memory"); return NULL; } - h->module = module; + h->module = ildb->module; ildb_ac = talloc(h, struct ildb_context); if (ildb_ac == NULL) { - ldb_set_errstring(module->ldb, "Out of Memory"); + ldb_set_errstring(ildb->module->ldb, "Out of Memory"); talloc_free(h); return NULL; } - h->private_data = (void *)ildb_ac; + h->private_data = ildb_ac; h->state = LDB_ASYNC_INIT; h->status = LDB_SUCCESS; - ildb_ac->module = module; - ildb_ac->context = context; - ildb_ac->callback = callback; + ildb_ac->module = ildb->module; + ildb_ac->ildb = ildb; + ildb_ac->handle = h; + ildb_ac->context = req->context; + ildb_ac->callback = req->callback; - return h; + req->handle = h; + return ildb_ac; } static int ildb_request_send(struct ildb_private *ildb, struct ldap_message *msg, struct ldb_request *r) { - struct ldb_handle *h = init_ildb_handle(ildb->module, r->context, r->callback); - struct ildb_context *ildb_ac; + struct ildb_context *ildb_ac = init_ildb_handle(ildb, r); struct ldap_request *req; - if (!h) { + if (!ildb_ac) { return LDB_ERR_OPERATIONS_ERROR; } - ildb_ac = talloc_get_type(h->private_data, struct ildb_context); - req = ldap_request_send(ildb->ldap, msg); if (req == NULL) { ldb_set_errstring(ildb->module->ldb, "async send request failed"); @@ -382,37 +382,31 @@ talloc_free(req->time_event); req->time_event = NULL; if (r->timeout) { - req->time_event = event_add_timed(req->conn->event.event_ctx, h, + req->time_event = event_add_timed(req->conn->event.event_ctx, ildb_ac->handle, timeval_current_ofs(r->timeout, 0), - ildb_request_timeout, h); + ildb_request_timeout, ildb_ac->handle); } req->async.fn = ildb_callback; - req->async.private_data = h; + req->async.private_data = ildb_ac->handle; ildb_ac->req = talloc_move(ildb_ac, &req); - r->handle = h; return LDB_SUCCESS; } static int ildb_request_noop(struct ildb_private *ildb, struct ldb_request *req) { - struct ldb_handle *h = init_ildb_handle(ildb->module, req->context, req->callback); - struct ildb_context *ildb_ac; + struct ildb_context *ildb_ac = init_ildb_handle(ildb, req); int ret = LDB_SUCCESS; - if (!h) { + if (!ildb_ac) { return LDB_ERR_OPERATIONS_ERROR; } - ildb_ac = talloc_get_type(h->private_data, struct ildb_context); - - req->handle = h; - if (ildb_ac->callback) { ret = ildb_ac->callback(ildb->module->ldb, ildb_ac->context, NULL); } - req->handle->state = LDB_ASYNC_DONE; + ildb_ac->handle->state = LDB_ASYNC_DONE; return ret; }
svn commit: samba r20122 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ildap: .
Author: metze Date: 2006-12-12 17:20:38 + (Tue, 12 Dec 2006) New Revision: 20122 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20122 Log: pass ildb to ildb_request_noop() metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 17:14:58 UTC (rev 20121) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 17:20:38 UTC (rev 20122) @@ -395,9 +395,9 @@ return LDB_SUCCESS; } -static int ildb_request_noop(struct ldb_module *module, struct ldb_request *req) +static int ildb_request_noop(struct ildb_private *ildb, struct ldb_request *req) { - struct ldb_handle *h = init_ildb_handle(module, req->context, req->callback); + struct ldb_handle *h = init_ildb_handle(ildb->module, req->context, req->callback); struct ildb_context *ildb_ac; int ret = LDB_SUCCESS; @@ -406,11 +406,11 @@ } ildb_ac = talloc_get_type(h->private_data, struct ildb_context); - + req->handle = h; if (ildb_ac->callback) { - ret = ildb_ac->callback(module->ldb, ildb_ac->context, NULL); + ret = ildb_ac->callback(ildb->module->ldb, ildb_ac->context, NULL); } req->handle->state = LDB_ASYNC_DONE; return ret; @@ -490,7 +490,7 @@ /* ignore ltdb specials */ if (ldb_dn_is_special(req->op.add.message->dn)) { - return ildb_request_noop(module, req); + return ildb_request_noop(ildb, req); } msg = new_ldap_message(ildb->ldap); @@ -540,7 +540,7 @@ /* ignore ltdb specials */ if (ldb_dn_is_special(req->op.mod.message->dn)) { - return ildb_request_noop(module, req); + return ildb_request_noop(ildb, req); } msg = new_ldap_message(ildb->ldap); @@ -588,7 +588,7 @@ /* ignore ltdb specials */ if (ldb_dn_is_special(req->op.del.dn)) { - return ildb_request_noop(module, req); + return ildb_request_noop(ildb, req); } msg = new_ldap_message(ildb->ldap); @@ -619,7 +619,7 @@ /* ignore ltdb specials */ if (ldb_dn_is_special(req->op.rename.olddn) || ldb_dn_is_special(req->op.rename.newdn)) { - return ildb_request_noop(module, req); + return ildb_request_noop(ildb, req); } msg = new_ldap_message(ildb->ldap);
svn commit: samba r20121 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ildap: .
Author: metze Date: 2006-12-12 17:14:58 + (Tue, 12 Dec 2006) New Revision: 20121 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20121 Log: pass down the ldb_request struct to ildb_request_send(), also pass ildb instead of module, to avoid multiple talloc_get_type() calls metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 16:56:53 UTC (rev 20120) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 17:14:58 UTC (rev 20121) @@ -356,14 +356,9 @@ return h; } -static int ildb_request_send(struct ldb_module *module, struct ldap_message *msg, -void *context, -int (*callback)(struct ldb_context *, void *, struct ldb_reply *), -int timeout, -struct ldb_handle **handle) +static int ildb_request_send(struct ildb_private *ildb, struct ldap_message *msg, struct ldb_request *r) { - struct ildb_private *ildb = talloc_get_type(module->private_data, struct ildb_private); - struct ldb_handle *h = init_ildb_handle(module, context, callback); + struct ldb_handle *h = init_ildb_handle(ildb->module, r->context, r->callback); struct ildb_context *ildb_ac; struct ldap_request *req; @@ -375,28 +370,28 @@ req = ldap_request_send(ildb->ldap, msg); if (req == NULL) { - ldb_set_errstring(module->ldb, "async send request failed"); + ldb_set_errstring(ildb->module->ldb, "async send request failed"); return LDB_ERR_OPERATIONS_ERROR; } if (!req->conn) { - ldb_set_errstring(module->ldb, "connection to remote LDAP server dropped?"); + ldb_set_errstring(ildb->module->ldb, "connection to remote LDAP server dropped?"); return LDB_ERR_OPERATIONS_ERROR; } talloc_free(req->time_event); req->time_event = NULL; - if (timeout) { + if (r->timeout) { req->time_event = event_add_timed(req->conn->event.event_ctx, h, - timeval_current_ofs(timeout, 0), + timeval_current_ofs(r->timeout, 0), ildb_request_timeout, h); } req->async.fn = ildb_callback; - req->async.private_data = (void *)h; + req->async.private_data = h; ildb_ac->req = talloc_move(ildb_ac, &req); - *handle = h; + r->handle = h; return LDB_SUCCESS; } @@ -478,7 +473,7 @@ msg->r.SearchRequest.attributes = discard_const(req->op.search.attrs); msg->controls = req->controls; - return ildb_request_send(module, msg, req->context, req->callback, req->timeout, &(req->handle)); + return ildb_request_send(ildb, msg, req); } /* @@ -528,7 +523,7 @@ msg->r.AddRequest.attributes[i] = mods[i]->attrib; } - return ildb_request_send(module, msg, req->context, req->callback, req->timeout, &(req->handle)); + return ildb_request_send(ildb, msg, req); } /* @@ -578,7 +573,7 @@ msg->r.ModifyRequest.mods[i] = *mods[i]; } - return ildb_request_send(module, msg, req->context, req->callback, req->timeout, &(req->handle)); + return ildb_request_send(ildb, msg, req); } /* @@ -609,7 +604,7 @@ return LDB_ERR_INVALID_DN_SYNTAX; } - return ildb_request_send(module, msg, req->context, req->callback, req->timeout, &(req->handle)); + return ildb_request_send(ildb, msg, req); } /* @@ -657,7 +652,7 @@ msg->r.ModifyDNRequest.deleteolddn = True; - return ildb_request_send(module, msg, req->context, req->callback, req->timeout, &(req->handle)); + return ildb_request_send(ildb, msg, req); } static int ildb_start_trans(struct ldb_module *module)
svn commit: samba r20120 - in branches/SAMBA_4_0/source/lib/ldb/ldb_ildap: .
Author: metze Date: 2006-12-12 16:56:53 + (Tue, 12 Dec 2006) New Revision: 20120 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20120 Log: fix the talloc hierachy and make ildb a child of module metze Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c Changeset: Modified: branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c === --- branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 16:40:57 UTC (rev 20119) +++ branches/SAMBA_4_0/source/lib/ldb/ldb_ildap/ldb_ildap.c 2006-12-12 16:56:53 UTC (rev 20120) @@ -54,6 +54,7 @@ struct ildb_private { struct ldap_connection *ldap; struct ldb_context *ldb; + struct ldb_module *module; }; struct ildb_context { @@ -738,20 +739,32 @@ */ static int ildb_connect(struct ldb_context *ldb, const char *url, unsigned int flags, const char *options[], - struct ldb_module **module) + struct ldb_module **_module) { - struct ildb_private *ildb = NULL; + struct ldb_module *module; + struct ildb_private *ildb; NTSTATUS status; struct cli_credentials *creds; - ildb = talloc(ldb, struct ildb_private); + module = talloc(ldb, struct ldb_module); + if (!module) { + ldb_oom(ldb); + return -1; + } + talloc_set_name_const(module, "ldb_ildap backend"); + module->ldb = ldb; + module->prev= module->next = NULL; + module->private_data= NULL; + module->ops = &ildb_ops; + + ildb = talloc(module, struct ildb_private); if (!ildb) { ldb_oom(ldb); goto failed; } - - ildb->ldb = ldb; - + module->private_data= ildb; + ildb->ldb = ldb; + ildb->module= module; ildb->ldap = ldap4_new_connection(ildb, ldb_get_opaque(ldb, "EventContext")); if (!ildb->ldap) { ldb_oom(ldb); @@ -769,19 +782,6 @@ goto failed; } - - *module = talloc(ldb, struct ldb_module); - if (!module) { - ldb_oom(ldb); - talloc_free(ildb); - return -1; - } - talloc_set_name_const(*module, "ldb_ildap backend"); - (*module)->ldb = ldb; - (*module)->prev = (*module)->next = NULL; - (*module)->private_data = ildb; - (*module)->ops = &ildb_ops; - /* caller can optionally setup credentials using the opaque token 'credentials' */ creds = talloc_get_type(ldb_get_opaque(ldb, "credentials"), struct cli_credentials); if (creds == NULL) { @@ -811,10 +811,11 @@ } } + *_module = module; return 0; failed: - talloc_free(ildb); + talloc_free(module); return -1; }
svn commit: samba-docs r1003 - in trunk/manpages-3: .
Author: jmcd Date: 2006-12-12 16:52:26 + (Tue, 12 Dec 2006) New Revision: 1003 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba-docs&rev=1003 Log: Add ads-only options for net ads join Modified: trunk/manpages-3/net.8.xml Changeset: Modified: trunk/manpages-3/net.8.xml === --- trunk/manpages-3/net.8.xml 2006-12-01 13:53:26 UTC (rev 1002) +++ trunk/manpages-3/net.8.xml 2006-12-12 16:52:26 UTC (rev 1003) @@ -181,7 +181,7 @@ -[RPC|ADS] JOIN [TYPE] [-U username[%password]] [options] +[RPC|ADS] JOIN [TYPE] [-U username[%password]] [createupn=UPN] [createcomputer=OU] [options] Join a domain. If the account already exists on the server, and @@ -194,6 +194,19 @@ [TYPE] may be PDC, BDC or MEMBER to specify the type of server joining the domain. + + +[UPN] (ADS only) set the principalname attribute during the join. The default +format is host/[EMAIL PROTECTED] + + + +[OU] (ADS only) Precreate the computer account in a specific OU. The +OU string reads from top to bottom without RDNs, and is delimited by +a '/'. Please note that '\' is used for escape by both the shell +and ldap, so it may need to be doubled or quadrupled to pass through, +and it is not used as a delimiter. +
svn commit: samba r20119 - in branches: SAMBA_3_0/source/utils SAMBA_3_0_24/source/utils
Author: jmcd Date: 2006-12-12 16:40:57 + (Tue, 12 Dec 2006) New Revision: 20119 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20119 Log: Update help info indicating how to use separators (forward slash only) and properly use backslashes in "net ads join computername=" Modified: branches/SAMBA_3_0/source/utils/net_ads.c branches/SAMBA_3_0_24/source/utils/net_ads.c Changeset: Modified: branches/SAMBA_3_0/source/utils/net_ads.c === --- branches/SAMBA_3_0/source/utils/net_ads.c 2006-12-12 15:16:26 UTC (rev 20118) +++ branches/SAMBA_3_0/source/utils/net_ads.c 2006-12-12 16:40:57 UTC (rev 20119) @@ -1322,6 +1322,8 @@ d_printf(" createcomputer=OU Precreate the computer account in a specific OU.\n"); d_printf(" The OU string read from top to bottom without RDNs and delimited by a '/'.\n"); d_printf(" E.g. \"createcomputer=Computers/Servers/Unix\"\n"); + d_printf(" NB: A backslash '\\' is used as escape at multiple levels and may\n"); + d_printf(" need to be doubled or even quadrupled. It is not used as a separator"); return -1; } Modified: branches/SAMBA_3_0_24/source/utils/net_ads.c === --- branches/SAMBA_3_0_24/source/utils/net_ads.c2006-12-12 15:16:26 UTC (rev 20118) +++ branches/SAMBA_3_0_24/source/utils/net_ads.c2006-12-12 16:40:57 UTC (rev 20119) @@ -1322,6 +1322,8 @@ d_printf(" createcomputer=OU Precreate the computer account in a specific OU.\n"); d_printf(" The OU string read from top to bottom without RDNs and delimited by a '/'.\n"); d_printf(" E.g. \"createcomputer=Computers/Servers/Unix\"\n"); + d_printf(" NB: A backslash '\\' is used as escape at multiple levels and may\n"); + d_printf(" need to be doubled or even quadrupled. It is not used as a separator"); return -1; }
svn commit: samba r20118 - in branches/SAMBA_3_0/source/nsswitch: .
Author: idra Date: 2006-12-12 15:16:26 + (Tue, 12 Dec 2006) New Revision: 20118 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20118 Log: Fix some more warnings Modified: branches/SAMBA_3_0/source/nsswitch/idmap_ad.c branches/SAMBA_3_0/source/nsswitch/idmap_rid.c Changeset: Modified: branches/SAMBA_3_0/source/nsswitch/idmap_ad.c === --- branches/SAMBA_3_0/source/nsswitch/idmap_ad.c 2006-12-12 15:14:27 UTC (rev 20117) +++ branches/SAMBA_3_0/source/nsswitch/idmap_ad.c 2006-12-12 15:16:26 UTC (rev 20118) @@ -145,11 +145,9 @@ /* Initialize and check conf is appropriate */ static NTSTATUS idmap_ad_initialize(struct idmap_domain *dom, const char *params) { - NTSTATUS ret; struct idmap_ad_context *ctx; char *config_option; const char *range; - const char *tmp; ADS_STRUCT *ads; /* verify AD is reachable (not critical, we may just be offline at start) */ @@ -375,13 +373,12 @@ } for (i = 0; i < count; i++) { - LDAPMessage *entry; + LDAPMessage *entry = NULL; DOM_SID sid; enum id_type type; struct id_map *map; uint32_t id; uint32_t atype; - int n; if (i == 0) { /* first entry */ entry = ads_first_entry(ads, res); @@ -587,13 +584,12 @@ } for (i = 0; i < count; i++) { - LDAPMessage *entry; + LDAPMessage *entry = NULL; DOM_SID sid; enum id_type type; struct id_map *map; uint32_t id; uint32_t atype; - int n; if (i == 0) { /* first entry */ entry = ads_first_entry(ads, res); Modified: branches/SAMBA_3_0/source/nsswitch/idmap_rid.c === --- branches/SAMBA_3_0/source/nsswitch/idmap_rid.c 2006-12-12 15:14:27 UTC (rev 20117) +++ branches/SAMBA_3_0/source/nsswitch/idmap_rid.c 2006-12-12 15:16:26 UTC (rev 20118) @@ -20,6 +20,7 @@ */ #include "includes.h" +#include "winbindd.h" #undef DBGC_CLASS #define DBGC_CLASS DBGC_IDMAP @@ -240,8 +241,6 @@ static NTSTATUS idmap_rid_close(struct idmap_domain *dom) { - struct idmap_tdb_context *ctx; - if (dom->private_data) { TALLOC_FREE(dom->private_data); }
svn commit: samba r20117 - in branches/SAMBA_3_0/source/nsswitch: .
Author: idra Date: 2006-12-12 15:14:27 + (Tue, 12 Dec 2006) New Revision: 20117 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20117 Log: 1st Error in the merge Modified: branches/SAMBA_3_0/source/nsswitch/winbindd_async.c Changeset: Modified: branches/SAMBA_3_0/source/nsswitch/winbindd_async.c === --- branches/SAMBA_3_0/source/nsswitch/winbindd_async.c 2006-12-12 14:52:13 UTC (rev 20116) +++ branches/SAMBA_3_0/source/nsswitch/winbindd_async.c 2006-12-12 15:14:27 UTC (rev 20117) @@ -756,7 +756,7 @@ /* Lookup the sid */ - if (!winbindd_lookup_name_by_sid(state->mem_ctx, &sid, dom_name, name, + if (!winbindd_lookup_name_by_sid(state->mem_ctx, &sid, &dom_name, &name, &type)) { TALLOC_FREE(dom_name); TALLOC_FREE(name);
svn commit: samba r20116 - in branches/SAMBA_3_0/source: . auth include lib nsswitch param passdb utils
Author: idra Date: 2006-12-12 14:52:13 + (Tue, 12 Dec 2006) New Revision: 20116 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20116 Log: Start merging in the work done to create the new idmap subsystem. Simo. Added: branches/SAMBA_3_0/source/nsswitch/idmap.c branches/SAMBA_3_0/source/nsswitch/idmap_ad.c branches/SAMBA_3_0/source/nsswitch/idmap_cache.c branches/SAMBA_3_0/source/nsswitch/idmap_ldap.c branches/SAMBA_3_0/source/nsswitch/idmap_nss.c branches/SAMBA_3_0/source/nsswitch/idmap_passdb.c branches/SAMBA_3_0/source/nsswitch/idmap_rid.c branches/SAMBA_3_0/source/nsswitch/idmap_tdb.c branches/SAMBA_3_0/source/nsswitch/idmap_util.c branches/SAMBA_3_0/source/nsswitch/nss_info.c Removed: branches/SAMBA_3_0/source/sam/ Modified: branches/SAMBA_3_0/source/Makefile.in branches/SAMBA_3_0/source/auth/auth_util.c branches/SAMBA_3_0/source/configure.in branches/SAMBA_3_0/source/include/dlinklist.h branches/SAMBA_3_0/source/include/idmap.h branches/SAMBA_3_0/source/include/passdb.h branches/SAMBA_3_0/source/include/smb.h branches/SAMBA_3_0/source/include/smbldap.h branches/SAMBA_3_0/source/lib/smbldap.c branches/SAMBA_3_0/source/nsswitch/wb_client.c branches/SAMBA_3_0/source/nsswitch/winbindd.c branches/SAMBA_3_0/source/nsswitch/winbindd.h branches/SAMBA_3_0/source/nsswitch/winbindd_async.c branches/SAMBA_3_0/source/nsswitch/winbindd_dual.c branches/SAMBA_3_0/source/nsswitch/winbindd_group.c branches/SAMBA_3_0/source/nsswitch/winbindd_nss.h branches/SAMBA_3_0/source/nsswitch/winbindd_sid.c branches/SAMBA_3_0/source/nsswitch/winbindd_user.c branches/SAMBA_3_0/source/nsswitch/winbindd_util.c branches/SAMBA_3_0/source/param/loadparm.c branches/SAMBA_3_0/source/passdb/lookup_sid.c branches/SAMBA_3_0/source/passdb/pdb_interface.c branches/SAMBA_3_0/source/passdb/secrets.c branches/SAMBA_3_0/source/utils/net.c branches/SAMBA_3_0/source/utils/net_idmap.c Changeset: Sorry, the patch is too large (9632 lines) to include; please use WebSVN to see it! WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20116