The branch, master has been updated via 53bdf43 s3-vfs acl modules: more non-linux build fixes. via 33082d0 s3-passdb: move LOOKUP_NAME_ flags to passdb where they belong to. via 3253d5a s3-passdb: move some passdb defines to passdb.h via c8ed33a s3-proto: pure cosmetics, remove some generated comments. via 6206156 s3-winbind: try to fix the build on hosts w/o winbind support. via b09b694 s3-vfs_solarisacl: try to fix the solaris build. from 25b43d3 s3: Use cli_ntcreate to when listing snapshots
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 53bdf43acab2f8808fb205a719ff6323543a6440 Author: Günther Deschner <g...@samba.org> Date: Wed Mar 30 15:14:05 2011 +0200 s3-vfs acl modules: more non-linux build fixes. Guenther Autobuild-User: Günther Deschner <g...@samba.org> Autobuild-Date: Wed Mar 30 16:00:02 CEST 2011 on sn-devel-104 commit 33082d016ee27537af0514d5eebcdaf0360fa4f7 Author: Günther Deschner <g...@samba.org> Date: Wed Mar 30 15:09:10 2011 +0200 s3-passdb: move LOOKUP_NAME_ flags to passdb where they belong to. Guenther commit 3253d5ad0515198083b0b185c06b659fc6972830 Author: Günther Deschner <g...@samba.org> Date: Wed Mar 30 14:49:37 2011 +0200 s3-passdb: move some passdb defines to passdb.h Guenther commit c8ed33ae9c26a63fd8adffa2041fe46a2542f0ba Author: Günther Deschner <g...@samba.org> Date: Wed Mar 30 14:48:18 2011 +0200 s3-proto: pure cosmetics, remove some generated comments. Guenther commit 6206156465b32aa565a1f7fbabfc62d668985d68 Author: Günther Deschner <g...@samba.org> Date: Wed Mar 30 14:03:13 2011 +0200 s3-winbind: try to fix the build on hosts w/o winbind support. Guenther commit b09b694dddfa4284b2c92d289694013e48b1e3f6 Author: Günther Deschner <g...@samba.org> Date: Wed Mar 30 13:46:59 2011 +0200 s3-vfs_solarisacl: try to fix the solaris build. Guenther ----------------------------------------------------------------------- Summary of changes: source3/include/passdb.h | 29 +++++++++++++++++ source3/include/proto.h | 55 --------------------------------- source3/include/smb.h | 50 ------------------------------ source3/lib/winbind_util.c | 2 +- source3/modules/vfs_afsacl.c | 1 + source3/modules/vfs_aixacl.c | 1 + source3/modules/vfs_hpuxacl.c | 1 + source3/modules/vfs_irixacl.c | 1 + source3/modules/vfs_posixacl.c | 2 +- source3/modules/vfs_solarisacl.c | 1 + source3/modules/vfs_tru64acl.c | 1 + source3/modules/vfs_zfsacl.c | 1 + source3/passdb/lookup_sid.h | 48 ++++++++++++++++++++++++++++ source3/winbindd/winbindd_getgroups.c | 1 + source3/winbindd/winbindd_getpwnam.c | 1 + 15 files changed, 88 insertions(+), 107 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/include/passdb.h b/source3/include/passdb.h index cae599b..855d253 100644 --- a/source3/include/passdb.h +++ b/source3/include/passdb.h @@ -41,6 +41,35 @@ #define GROUP_RID_TYPE 1 /* + * Flags for local user manipulation. + */ + +#define LOCAL_ADD_USER 0x1 +#define LOCAL_DELETE_USER 0x2 +#define LOCAL_DISABLE_USER 0x4 +#define LOCAL_ENABLE_USER 0x8 +#define LOCAL_TRUST_ACCOUNT 0x10 +#define LOCAL_SET_NO_PASSWORD 0x20 +#define LOCAL_SET_PASSWORD 0x40 +#define LOCAL_SET_LDAP_ADMIN_PW 0x80 +#define LOCAL_INTERDOM_ACCOUNT 0x100 +#define LOCAL_AM_ROOT 0x200 /* Act as root */ + +/* + * Size of new password account encoding string. This is enough space to + * hold 11 ACB characters, plus the surrounding [] and a terminating null. + * Do not change unless you are adding new ACB bits! + */ + +#define NEW_PW_FORMAT_SPACE_PADDED_LEN 14 + +/* Password history contants. */ +#define PW_HISTORY_SALT_LEN 16 +#define SALTED_MD5_HASH_LEN 16 +#define PW_HISTORY_ENTRY_LEN (PW_HISTORY_SALT_LEN+SALTED_MD5_HASH_LEN) +#define MAX_PW_HISTORY_LEN 24 + +/* * bit flags representing initialized fields in struct samu */ enum pdb_elements { diff --git a/source3/include/proto.h b/source3/include/proto.h index 91ff45d..c19e3a4 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -2755,8 +2755,6 @@ NTSTATUS rpc_transport_tstream_init(TALLOC_CTX *mem_ctx, struct rpc_cli_transport **presult); struct cli_state *rpc_pipe_np_smb_conn(struct rpc_pipe_client *p); -/* The following definitions come from rpc_server/srv_eventlog_nt.c */ - /* The following definitions come from rpc_server/rpc_handles.c */ size_t num_pipe_handles(struct pipes_struct *p); @@ -2861,59 +2859,6 @@ char *valid_share_pathname(TALLOC_CTX *ctx, const char *dos_pathname); bool init_service_op_table( void ); bool shutdown_service_op_table(void); -/* The following definitions come from rpcclient/cmd_dfs.c */ - - -/* The following definitions come from rpcclient/cmd_dssetup.c */ - - -/* The following definitions come from rpcclient/cmd_echo.c */ - - -/* The following definitions come from rpcclient/cmd_lsarpc.c */ - - -/* The following definitions come from rpcclient/cmd_netlogon.c */ - - -/* The following definitions come from rpcclient/cmd_ntsvcs.c */ - - -/* The following definitions come from rpcclient/cmd_samr.c */ - - -/* The following definitions come from rpcclient/cmd_shutdown.c */ - - -/* The following definitions come from rpcclient/cmd_spoolss.c */ - - -/* The following definitions come from rpcclient/cmd_srvsvc.c */ - - -/* The following definitions come from rpcclient/cmd_test.c */ - - -/* The following definitions come from rpcclient/cmd_wkssvc.c */ - - -/* The following definitions come from rpcclient/rpcclient.c */ - - -/* The following definitions come from services/svc_netlogon.c */ - - -/* The following definitions come from services/svc_rcinit.c */ - - -/* The following definitions come from services/svc_spoolss.c */ - - -/* The following definitions come from services/svc_winreg.c */ - - -/* The following definitions come from services/svc_wins.c */ - /* The following definitions come from lib/server_contexts.c */ struct tevent_context *server_event_context(void); void server_event_context_free(void); diff --git a/source3/include/smb.h b/source3/include/smb.h index b7fe649..96e2b00 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -153,27 +153,6 @@ typedef union unid_t { #define SID_MAX_SIZE ((size_t)(8+(MAXSUBAUTHS*4))) -#define LOOKUP_NAME_NONE 0x00000000 -#define LOOKUP_NAME_ISOLATED 0x00000001 /* Look up unqualified names */ -#define LOOKUP_NAME_REMOTE 0x00000002 /* Ask others */ -#define LOOKUP_NAME_GROUP 0x00000004 /* (unused) This is a NASTY hack for - valid users = @foo where foo also - exists in as user. */ -#define LOOKUP_NAME_NO_NSS 0x00000008 /* no NSS calls to avoid - winbind recursions */ -#define LOOKUP_NAME_BUILTIN 0x00000010 /* builtin names */ -#define LOOKUP_NAME_WKN 0x00000020 /* well known names */ -#define LOOKUP_NAME_DOMAIN 0x00000040 /* only lookup own domain */ -#define LOOKUP_NAME_LOCAL (LOOKUP_NAME_ISOLATED\ - |LOOKUP_NAME_BUILTIN\ - |LOOKUP_NAME_WKN\ - |LOOKUP_NAME_DOMAIN) -#define LOOKUP_NAME_ALL (LOOKUP_NAME_ISOLATED\ - |LOOKUP_NAME_REMOTE\ - |LOOKUP_NAME_BUILTIN\ - |LOOKUP_NAME_WKN\ - |LOOKUP_NAME_DOMAIN) - #include "librpc/gen_ndr/dcerpc.h" #include "librpc/gen_ndr/security.h" @@ -731,27 +710,6 @@ struct pipe_open_rec { #define NT_HASH_LEN 16 #define LM_HASH_LEN 16 -/* Password history contants. */ -#define PW_HISTORY_SALT_LEN 16 -#define SALTED_MD5_HASH_LEN 16 -#define PW_HISTORY_ENTRY_LEN (PW_HISTORY_SALT_LEN+SALTED_MD5_HASH_LEN) -#define MAX_PW_HISTORY_LEN 24 - -/* - * Flags for local user manipulation. - */ - -#define LOCAL_ADD_USER 0x1 -#define LOCAL_DELETE_USER 0x2 -#define LOCAL_DISABLE_USER 0x4 -#define LOCAL_ENABLE_USER 0x8 -#define LOCAL_TRUST_ACCOUNT 0x10 -#define LOCAL_SET_NO_PASSWORD 0x20 -#define LOCAL_SET_PASSWORD 0x40 -#define LOCAL_SET_LDAP_ADMIN_PW 0x80 -#define LOCAL_INTERDOM_ACCOUNT 0x100 -#define LOCAL_AM_ROOT 0x200 /* Act as root */ - /* key and data in the connections database - used in smbstatus and smbd */ struct connections_key { struct server_id pid; @@ -1652,14 +1610,6 @@ struct unix_error_map { }; /* - * Size of new password account encoding string. This is enough space to - * hold 11 ACB characters, plus the surrounding [] and a terminating null. - * Do not change unless you are adding new ACB bits! - */ - -#define NEW_PW_FORMAT_SPACE_PADDED_LEN 14 - -/* Do you want session setups at user level security with a invalid password to be rejected or allowed in as guest? WinNT rejects them but it can be a pain as it means "net view" needs to use a password diff --git a/source3/lib/winbind_util.c b/source3/lib/winbind_util.c index 390d2db..f30bcfc 100644 --- a/source3/lib/winbind_util.c +++ b/source3/lib/winbind_util.c @@ -21,10 +21,10 @@ #include "includes.h" #include "../libcli/security/security.h" #include "../lib/util/util_pw.h" +#include "nsswitch/libwbclient/wbclient.h" #if defined(WITH_WINBIND) -#include "nsswitch/libwbclient/wbclient.h" #include "lib/winbind_util.h" struct passwd * winbind_getpwnam(const char * name) diff --git a/source3/modules/vfs_afsacl.c b/source3/modules/vfs_afsacl.c index 9f085ce..06ce6f5 100644 --- a/source3/modules/vfs_afsacl.c +++ b/source3/modules/vfs_afsacl.c @@ -18,6 +18,7 @@ */ #include "includes.h" +#include "system/filesys.h" #include "smbd/smbd.h" #undef DBGC_CLASS diff --git a/source3/modules/vfs_aixacl.c b/source3/modules/vfs_aixacl.c index 30a65c8..c09bdb5 100644 --- a/source3/modules/vfs_aixacl.c +++ b/source3/modules/vfs_aixacl.c @@ -18,6 +18,7 @@ */ #include "includes.h" +#include "system/filesys.h" #include "smbd/smbd.h" extern SMB_ACL_T aixacl_to_smbacl( struct acl *file_acl); diff --git a/source3/modules/vfs_hpuxacl.c b/source3/modules/vfs_hpuxacl.c index 1df3fbb..bd1eee6 100644 --- a/source3/modules/vfs_hpuxacl.c +++ b/source3/modules/vfs_hpuxacl.c @@ -47,6 +47,7 @@ #include "includes.h" +#include "system/filesys.h" #include "smbd/smbd.h" /* diff --git a/source3/modules/vfs_irixacl.c b/source3/modules/vfs_irixacl.c index cceddb2..26f13cf 100644 --- a/source3/modules/vfs_irixacl.c +++ b/source3/modules/vfs_irixacl.c @@ -18,6 +18,7 @@ */ #include "includes.h" +#include "system/filesys.h" #include "smbd/smbd.h" /* prototypes for private functions first - for clarity */ diff --git a/source3/modules/vfs_posixacl.c b/source3/modules/vfs_posixacl.c index 9890110..539ced2 100644 --- a/source3/modules/vfs_posixacl.c +++ b/source3/modules/vfs_posixacl.c @@ -18,8 +18,8 @@ */ #include "includes.h" -#include "smbd/smbd.h" #include "system/filesys.h" +#include "smbd/smbd.h" /* prototypes for static functions first - for clarity */ diff --git a/source3/modules/vfs_solarisacl.c b/source3/modules/vfs_solarisacl.c index 04b8e4e..71da045 100644 --- a/source3/modules/vfs_solarisacl.c +++ b/source3/modules/vfs_solarisacl.c @@ -19,6 +19,7 @@ #include "includes.h" +#include "system/filesys.h" #include "smbd/smbd.h" diff --git a/source3/modules/vfs_tru64acl.c b/source3/modules/vfs_tru64acl.c index de3c415..f7457af 100644 --- a/source3/modules/vfs_tru64acl.c +++ b/source3/modules/vfs_tru64acl.c @@ -18,6 +18,7 @@ */ #include "includes.h" +#include "system/filesys.h" #include "smbd/smbd.h" /* prototypes for private functions first - for clarity */ diff --git a/source3/modules/vfs_zfsacl.c b/source3/modules/vfs_zfsacl.c index 2dbc2b9..286720a 100644 --- a/source3/modules/vfs_zfsacl.c +++ b/source3/modules/vfs_zfsacl.c @@ -23,6 +23,7 @@ */ #include "includes.h" +#include "system/filesys.h" #include "smbd/smbd.h" #include "nfs4_acls.h" diff --git a/source3/passdb/lookup_sid.h b/source3/passdb/lookup_sid.h index 81303f8..3c3d278 100644 --- a/source3/passdb/lookup_sid.h +++ b/source3/passdb/lookup_sid.h @@ -1,5 +1,51 @@ +/* + Unix SMB/CIFS implementation. + uid/user handling + Copyright (C) Andrew Tridgell 1992-1998 + Copyright (C) Gerald (Jerry) Carter 2003 + Copyright (C) Volker Lendecke 2005 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + + +#ifndef _PASSDB_LOOKUP_SID_H_ +#define _PASSDB_LOOKUP_SID_H_ + #include "../librpc/gen_ndr/lsa.h" +#define LOOKUP_NAME_NONE 0x00000000 +#define LOOKUP_NAME_ISOLATED 0x00000001 /* Look up unqualified names */ +#define LOOKUP_NAME_REMOTE 0x00000002 /* Ask others */ +#define LOOKUP_NAME_GROUP 0x00000004 /* (unused) This is a NASTY hack for + valid users = @foo where foo also + exists in as user. */ +#define LOOKUP_NAME_NO_NSS 0x00000008 /* no NSS calls to avoid + winbind recursions */ +#define LOOKUP_NAME_BUILTIN 0x00000010 /* builtin names */ +#define LOOKUP_NAME_WKN 0x00000020 /* well known names */ +#define LOOKUP_NAME_DOMAIN 0x00000040 /* only lookup own domain */ +#define LOOKUP_NAME_LOCAL (LOOKUP_NAME_ISOLATED\ + |LOOKUP_NAME_BUILTIN\ + |LOOKUP_NAME_WKN\ + |LOOKUP_NAME_DOMAIN) +#define LOOKUP_NAME_ALL (LOOKUP_NAME_ISOLATED\ + |LOOKUP_NAME_REMOTE\ + |LOOKUP_NAME_BUILTIN\ + |LOOKUP_NAME_WKN\ + |LOOKUP_NAME_DOMAIN) + struct lsa_dom_info { bool valid; struct dom_sid sid; @@ -47,3 +93,5 @@ bool delete_gid_cache(gid_t gid); bool delete_sid_cache(const struct dom_sid* psid); void flush_uid_cache(void); void flush_gid_cache(void); + +#endif /* _PASSDB_LOOKUP_SID_H_ */ diff --git a/source3/winbindd/winbindd_getgroups.c b/source3/winbindd/winbindd_getgroups.c index 736eba6..c9b0f19 100644 --- a/source3/winbindd/winbindd_getgroups.c +++ b/source3/winbindd/winbindd_getgroups.c @@ -19,6 +19,7 @@ #include "includes.h" #include "winbindd.h" +#include "passdb/lookup_sid.h" /* only for LOOKUP_NAME_NO_NSS flag */ struct winbindd_getgroups_state { struct tevent_context *ev; diff --git a/source3/winbindd/winbindd_getpwnam.c b/source3/winbindd/winbindd_getpwnam.c index 77e827e..bc771b2 100644 --- a/source3/winbindd/winbindd_getpwnam.c +++ b/source3/winbindd/winbindd_getpwnam.c @@ -19,6 +19,7 @@ #include "includes.h" #include "winbindd.h" +#include "passdb/lookup_sid.h" /* only for LOOKUP_NAME_NO_NSS flag */ struct winbindd_getpwnam_state { struct tevent_context *ev; -- Samba Shared Repository