# HG changeset patch # User Jiri Sasek # Date 1327975440 28800 # Node ID 4307245757f69835e1b3a45b12118321144df68a # Parent b4a4c4d7fb32ea7e186ab1418f935075a7cb9866 7119845 Samba 3.5.10 can not use the system kerberos keytab. 7121739 Reorganize Samba source patches to change-set manner. diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/Makefile --- a/components/samba/samba/Makefile Mon Jan 23 04:17:30 2012 -0800 +++ b/components/samba/samba/Makefile Mon Jan 30 18:04:00 2012 -0800 @@ -20,16 +20,16 @@ # # -# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. # include ../../../make-rules/shared-macros.mk COMPONENT_NAME= samba -COMPONENT_VERSION= 3.5.10 +COMPONENT_VERSION= 3.5.12 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) COMPONENT_PROJECT_URL= http://www.samba.org/ COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz -COMPONENT_ARCHIVE_HASH= sha1:de63b1a7e2fa6bcae91dbf7d2cbdfb38d0f97c00 +COMPONENT_ARCHIVE_HASH= sha1:cce0a391b4468a716dda2315a56271a785990c54 COMPONENT_ARCHIVE_URL= http://us1.samba.org/samba/ftp/stable/$(COMPONENT_ARCHIVE) COMPONENT_NAME_1= docbook-xsl @@ -61,7 +61,6 @@ include ../../../make-rules/configure.mk include ../../../make-rules/ips.mk -PATCH_LEVEL = 0 CONFIGURE_SCRIPT = $(BUILD_DIR_$(BITS))/configure PKG_OPTIONS += -I $(COMPONENT_DIR) @@ -110,7 +109,7 @@ $(PROTO_DIR)/opt/SUNWsamfs/lib/libsam.so: Solaris/libsam.c \ $(COMPONENT_ARCHIVE_2) $(PROTO_DIR)/.mozldap $(MKDIR) $(PROTO_DIR)/opt/SUNWsamfs/lib - $(CC) -G -Kpic -hlibsam.so Solaris/libsam.c \ + $(CC.studio.32) -G $(studio_PIC) -hlibsam.so Solaris/libsam.c \ -o $(PROTO_DIR)/opt/SUNWsamfs/lib/libsam.so cd $(BUILD_DIR) ; $(UNPACK) $(UNPACK_ARGS) ../$(COMPONENT_ARCHIVE_2) diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/0001-s3-Fix-bug-8238-KB2536276-prevents-access-to-sha.patch --- a/components/samba/samba/patches/0001-s3-Fix-bug-8238-KB2536276-prevents-access-to-sha.patch Mon Jan 23 04:17:30 2012 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -From 0b0c5596034a007b71785a0f36aaf40cf74b234d Mon Sep 17 00:00:00 2001 -From: Volker Lendecke -Date: Thu, 16 Jun 2011 22:20:49 +0200 -Subject: [PATCH] s3: Fix bug 8238 -- KB2536276 prevents access to shares - -Without this we were not sending the workgroup name in the negprot reply if -plain text passwords are used. ---- - source3/smbd/negprot.c | 1 + - 1 files changed, 1 insertions(+), 0 deletions(-) - -diff --git a/source3/smbd/negprot.c b/source3/smbd/negprot.c -index 81d29d9..51ad80d 100644 ---- source3/smbd/negprot.c -+++ source3/smbd/negprot.c -@@ -382,6 +382,7 @@ static void reply_nt1(struct smb_request *req, uint16 choice) - reply_nterror(req, NT_STATUS_NO_MEMORY); - return; - } -+ p += ret; - DEBUG(3,("not using SPNEGO\n")); - } else { - DATA_BLOB spnego_blob = negprot_spnego(); --- -1.5.6.5 - diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/MITkrb5-Solaris.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/samba/samba/patches/MITkrb5-Solaris.patch Mon Jan 30 18:04:00 2012 -0800 @@ -0,0 +1,48 @@ +--- a/source3/configure.in Mon Jan 18 12:38:09 2010 ++++ b/source3/configure.in Sat Mar 13 19:19:27 2010 +@@ -3282,6 +3360,22 @@ + fi + fi + ++ if test x$FOUND_KRB5 = x"no"; then ++ ################################################# ++ # see if this box has Solaris MIT kerberos implementation ++ AC_MSG_CHECKING(for Solaris MIT kerberos) ++ if test -x "$KRB5CONFIG" && $KRB5CONFIG --version | grep -s Solaris | grep -s MIT > /dev/null ; then ++ FOUND_KRB5=yes ++ KRB5_LIBS="`$KRB5CONFIG --libs | sed s/-lkrb5//`" ++ KRB5_LDFLAGS="-lkrb5 -lgss" ++ KRB5_CFLAGS="`$KRB5CONFIG --cflags`" ++ KRB5_CPPFLAGS="`$KRB5CONFIG --cflags`" ++ AC_MSG_RESULT(yes) ++ else ++ AC_MSG_RESULT(${KRB5CONFIG_VER_S}) ++ fi ++ fi ++ + ac_save_CFLAGS=$CFLAGS + ac_save_CPPFLAGS=$CPPFLAGS + ac_save_LDFLAGS=$LDFLAGS +# +--- a/source3/libsmb/clikrb5.c 2010-11-16 06:25:10.974288877 -0800 ++++ b/source3/libsmb/clikrb5.c 2010-11-16 06:44:09.764248834 -0800 +@@ -912,8 +912,17 @@ + } + #endif + +- retval = krb5_mk_req_extended(context, auth_context, ap_req_options, +- &in_data, credsp, outbuf); ++ retval = krb5_mk_req_extended(context, auth_context, ap_req_options, ++#if defined(HAVE_SHORT_KRB5_MK_ERROR_INTERFACE) ++ /* MIT implementation does not use the ++ * 4-th. parameter (krb5_data *) by the ++ * same way as Heimdal. Set to NULL . ++ */ ++ NULL ++#else ++ &in_data ++#endif ++ , credsp, outbuf); + if (retval) { + DEBUG(1,("ads_krb5_mk_req: krb5_mk_req_extended failed (%s)\n", + error_message(retval))); diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/Makefile.in.patch --- a/components/samba/samba/patches/Makefile.in.patch Mon Jan 23 04:17:30 2012 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ ---- source3/Makefile.in.orig 2009-07-03 04:21:14.000000000 -0700 -+++ source3/Makefile.in 2009-09-01 07:36:38.949874725 -0700 -@@ -663,6 +663,8 @@ - VFS_AIXACL2_OBJ = modules/vfs_aixacl2.o modules/vfs_aixacl_util.o modules/nfs4_acls.o - VFS_SOLARISACL_OBJ = modules/vfs_solarisacl.o - VFS_ZFSACL_OBJ = modules/vfs_zfsacl.o modules/nfs4_acls.o -+VFS_SAMFS_OBJ = modules/vfs_samfs.o -+SAMFS_LIBS = -R/opt/SUNWsamfs/lib -zlazyload -lsam -znolazyload - VFS_HPUXACL_OBJ = modules/vfs_hpuxacl.o - VFS_IRIXACL_OBJ = modules/vfs_irixacl.o - VFS_TRU64ACL_OBJ = modules/vfs_tru64acl.o -@@ -2573,6 +2574,10 @@ - @echo "Building plugin $@" - @$(SHLD_MODULE) $(VFS_ZFSACL_OBJ) - -+bin/samfs.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_SAMFS_OBJ) -+ @echo "Building plugin $@" -+ @$(SHLD_MODULE) $(VFS_SAMFS_OBJ) $(SAMFS_LIBS) -+ - bin/irixacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_IRIXACL_OBJ) - @echo "Building plugin $@" - @$(SHLD_MODULE) $(VFS_IRIXACL_OBJ) diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/ace4-synchronize.patch --- a/components/samba/samba/patches/ace4-synchronize.patch Mon Jan 23 04:17:30 2012 -0800 +++ b/components/samba/samba/patches/ace4-synchronize.patch Mon Jan 30 18:04:00 2012 -0800 @@ -1,7 +1,10 @@ +7011577 Impossible to rename a file on a ZFS filesystem when installing 146364-01 (Samba 3.5.5) +Fix bug #7909 - map SYNCHRONIZE acl permission statically in zfs_acl vfs module. + diff --git a/source3/modules/nfs4_acls.c b/source3/modules/nfs4_acls.c index 1913946..e2f9fe3 100644 ---- source3/modules/nfs4_acls.c -+++ source3/modules/nfs4_acls.c +--- a/source3/modules/nfs4_acls.c ++++ b/source3/modules/nfs4_acls.c @@ -280,7 +280,9 @@ static bool smbacl4_nfs42win(TALLOC_CTX *mem_ctx, SMB4ACL_T *theacl, /* in */ DEBUG(10, ("mapped ace flags: 0x%x => 0x%x\n", ace->aceFlags, mapped_ace_flags)); @@ -15,8 +18,8 @@ mapped_ace_flags); diff --git a/source3/modules/vfs_zfsacl.c b/source3/modules/vfs_zfsacl.c index 98c9bcf..8a2c378 100644 ---- source3/modules/vfs_zfsacl.c -+++ source3/modules/vfs_zfsacl.c +--- a/source3/modules/vfs_zfsacl.c ++++ b/source3/modules/vfs_zfsacl.c @@ -124,6 +124,9 @@ static bool zfs_process_smbacl(files_struct *fsp, SMB4ACL_T *smbacl) acebuf[i].a_type = aceprop->aceType; acebuf[i].a_flags = aceprop->aceFlags; diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/conf.in-nsldap.patch --- a/components/samba/samba/patches/conf.in-nsldap.patch Mon Jan 23 04:17:30 2012 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,56 +0,0 @@ ---- source3/configure.in Mon Jan 18 12:38:09 2010 -+++ source3/configure.in Sat Mar 13 19:19:27 2010 -@@ -3063,6 +3063,20 @@ - with_ldap_support=yes - AC_MSG_CHECKING(whether LDAP support is used) - AC_MSG_RESULT(yes) -+ -+ ################################ -+ # Check if the Netscape LDAP SDK -+ AC_CACHE_CHECK([for LDAP_OPT_SIZELIMIT macro],samba_cv_HAVE_LDAP_NSC,[ -+ AC_TRY_COMPILE([ -+#include -+#include ], -+ [printf("%s\n", LDAP_OPT_SIZELIMIT);], -+ samba_cv_HAVE_LDAP_NSC=yes,samba_cv_HAVE_LDAP_NSC=no)]) -+ if test x"$samba_cv_HAVE_LDAP_NSC" = x"yes"; then -+ AC_DEFINE(HAVE_HAVE_LDAP_NSC,1, -+ [Whether the LDAP API is Netscape SDK]) -+ fi -+ - else - if test x"$with_ldap_support" = x"yes"; then - AC_MSG_ERROR(libldap is needed for LDAP support) -@@ -3125,15 +3139,25 @@ - fi - ;; - *) -- AC_CHECK_FUNC_EXT(ldap_initialize,$LDAP_LIBS) -+ # Omit the ldap_initialize() test if there is a Netscape SDK -+ # (Mozilla Directory server 5) -+ if test x"$samba_cv_HAVE_LDAP_NSC" = x"no"; then - -- if test x"$ac_cv_func_ext_ldap_initialize" != x"yes"; then -- if test x"$with_ads_support" = x"yes"; then -- AC_MSG_ERROR(Active Directory support requires ldap_initialize) -- elif test x"$with_ads_support" = x"auto"; then -- AC_MSG_WARN(Disabling Active Directory support (requires ldap_initialize)) -- with_ads_support=no -+ AC_CHECK_FUNC_EXT(ldap_initialize,$LDAP_LIBS) -+ -+ if test x"$ac_cv_func_ext_ldap_initialize" != x"yes"; then -+ if test x"$with_ads_support" = x"yes"; then -+ AC_MSG_ERROR(Active Directory support requires ldap_initialize) -+ elif test x"$with_ads_support" = x"auto"; then -+ AC_MSG_WARN(Disabling Active Directory support (requires ldap_in -+itialize)) -+ with_ads_support=no -+ fi -+ - fi -+ else -+ AC_MSG_RESULT(Active Directory support on Netscape LDAP SDK - limited fu -+nctionality?) - fi - ;; - esac diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/configure.in.patch --- a/components/samba/samba/patches/configure.in.patch Mon Jan 23 04:17:30 2012 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ ---- source3/configure.in Mon Jan 18 12:38:09 2010 -+++ source3/configure.in Sat Mar 13 19:19:27 2010 -@@ -3282,6 +3360,22 @@ - fi - fi - -+ if test x$FOUND_KRB5 = x"no"; then -+ ################################################# -+ # see if this box has Solaris MIT kerberos implementation -+ AC_MSG_CHECKING(for Solaris MIT kerberos) -+ if test -x "$KRB5CONFIG" && $KRB5CONFIG --version | grep -s Solaris | grep -s MIT > /dev/null ; then -+ FOUND_KRB5=yes -+ KRB5_LIBS="`$KRB5CONFIG --libs | sed s/-lkrb5//`" -+ KRB5_LDFLAGS="-lkrb5 -lgss" -+ KRB5_CFLAGS="`$KRB5CONFIG --cflags`" -+ KRB5_CPPFLAGS="`$KRB5CONFIG --cflags`" -+ AC_MSG_RESULT(yes) -+ else -+ AC_MSG_RESULT(${KRB5CONFIG_VER_S}) -+ fi -+ fi -+ - ac_save_CFLAGS=$CFLAGS - ac_save_CPPFLAGS=$CPPFLAGS - ac_save_LDFLAGS=$LDFLAGS -@@ -6313,6 +6353,7 @@ - SMB_MODULE(vfs_preopen, \$(VFS_PREOPEN_OBJ), "bin/preopen.$SHLIBEXT", VFS) - SMB_MODULE(vfs_syncops, \$(VFS_SYNCOPS_OBJ), "bin/syncops.$SHLIBEXT", VFS) - SMB_MODULE(vfs_zfsacl, \$(VFS_ZFSACL_OBJ), "bin/zfsacl.$SHLIBEXT", VFS) -+SMB_MODULE(vfs_samfs, \$(VFS_SAMFS_OBJ), "bin/samfs.$SHLIBEXT", VFS) - SMB_MODULE(vfs_notify_fam, \$(VFS_NOTIFY_FAM_OBJ), "bin/notify_fam.$SHLIBEXT", VFS) - SMB_MODULE(vfs_acl_xattr, \$(VFS_ACL_XATTR_OBJ), "bin/acl_xattr.$SHLIBEXT", VFS) - SMB_MODULE(vfs_acl_tdb, \$(VFS_ACL_TDB_OBJ), "bin/acl_tdb.$SHLIBEXT", VFS) diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/docs-xml.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/samba/samba/patches/docs-xml.patch Mon Jan 30 18:04:00 2012 -0800 @@ -0,0 +1,108 @@ + swat.c - patch is currently disabled because tme man-section 5 is not converted to 4 +# git-like +#--- a/source3/web/swat.c 2009-07-03 04:21:14.000000000 -0700 +#+++ b/source3/web/swat.c 2009-09-01 07:39:04.758980165 -0700 +#@@ -203,12 +203,12 @@ +# char *output; +# if(strcmp(pLabel, pTranslated) != 0) { +# output = talloc_asprintf(ctx, +#- " %s       %s
%s", +#+ " %s       %s
%s", +# pAnchor, pHelp, pLabel, pTranslated); +# return output; +# } +# output = talloc_asprintf(ctx, +#- " %s       %s", +#+ " %s       %s", +# pAnchor, pHelp, pLabel); +# return output; +# } +#@@ -1257,7 +1257,7 @@ +# printf("

%s

\n", _("Important Note:")); +# printf("%s",_("Printer names marked with [*] in the Choose Printer drop-down box ")); +# printf("%s",_("are autoloaded printers from ")); +#- printf("%s\n", _("Printcap Name")); +#+ printf("%s\n", _("Printcap Name")); +# printf("%s\n", _("Attempting to delete these printers from SWAT will have no effect.")); +# +# if (cgi_variable("Commit") && snum >= 0) { +# git-like +--- a/docs-xml/configure.ac-bkp 2011-05-23 11:40:30.309466703 +0200 ++++ b/docs-xml/configure.ac 2011-05-23 12:18:34.727978926 +0200 +@@ -54,5 +54,8 @@ + fi + + AC_SUBST(TARGETS) ++AC_SUBST(BUILDDIR) ++AC_SUBST(DOCBOOKXSLVER) ++AC_SUBST(DOCBOOKXSLDIR) + + AC_OUTPUT( Makefile.settings build/catalog.xml) +# git-like +--- a/docs-xml/smbdotconf/generate-file-list.sh Sat Feb 20 01:12:25 2010 ++++ b/docs-xml/smbdotconf/generate-file-list.sh Mon Jan 18 03:38:09 2010 +@@ -9,7 +9,10 @@ + cd $DIR + + echo "
" +-for I in `find . -mindepth 2 -type f -name '*.xml' | sort -t/ -k3 | xargs` ++ ++#for I in `find . -mindepth 2 -type f -name '*.xml' | sort -t/ -k3 | xargs` ++# Remove lines containing just one slash ++for I in `find . -type f -name '*.xml' | grep -v '^[^/]*/[^/]*$' | sort -t/ -k3 | xargs` + do + echo "" + done +# git-like +--- a/docs-xml/build/catalog.xml.in-bkp 2011-05-23 11:41:02.207116056 +0200 ++++ b/docs-xml/build/catalog.xml.in 2011-05-23 12:09:22.968664219 +0200 +@@ -2,6 +2,49 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + - - -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ - - - " --for I in `find . -mindepth 2 -type f -name '*.xml' | sort -t/ -k3 | xargs` -+ -+#for I in `find . -mindepth 2 -type f -name '*.xml' | sort -t/ -k3 | xargs` -+# Remove lines containing just one slash -+for I in `find . -type f -name '*.xml' | grep -v '^[^/]*/[^/]*$' | sort -t/ -k3 | xargs` - do - echo "" - done diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/libsmb_clikrb5.c.patch --- a/components/samba/samba/patches/libsmb_clikrb5.c.patch Mon Jan 23 04:17:30 2012 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ ---- source3/libsmb/clikrb5.c-bkp 2010-11-16 06:25:10.974288877 -0800 -+++ source3/libsmb/clikrb5.c 2010-11-16 06:44:09.764248834 -0800 -@@ -912,8 +912,17 @@ - } - #endif - -- retval = krb5_mk_req_extended(context, auth_context, ap_req_options, -- &in_data, credsp, outbuf); -+ retval = krb5_mk_req_extended(context, auth_context, ap_req_options, -+#if defined(HAVE_SHORT_KRB5_MK_ERROR_INTERFACE) -+ /* MIT implementation does not use the -+ * 4-th. parameter (krb5_data *) by the -+ * same way as Heimdal. Set to NULL . -+ */ -+ NULL -+#else -+ &in_data -+#endif -+ , credsp, outbuf); - if (retval) { - DEBUG(1,("ads_krb5_mk_req: krb5_mk_req_extended failed (%s)\n", - error_message(retval))); diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/mozldap.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/samba/samba/patches/mozldap.patch Mon Jan 30 18:04:00 2012 -0800 @@ -0,0 +1,57 @@ +--- a/source3/configure.in 2011-12-12 10:59:00.851079500 -0800 ++++ b/source3/configure.in 2011-12-12 11:29:54.993566333 -0800 +@@ -3368,6 +3368,20 @@ + with_ldap_support=yes + AC_MSG_CHECKING(whether LDAP support is used) + AC_MSG_RESULT(yes) ++ ++ ############################## ++ # Check if LDAP SDK is Mozilla ++ AC_CACHE_CHECK([for LDAP_OPT_SIZELIMIT macro],samba_cv_HAVE_LDAP_MOZ,[ ++ AC_TRY_COMPILE([ ++#include ++#include ], ++ [printf("%s\n", LDAP_OPT_SIZELIMIT);], ++ samba_cv_HAVE_LDAP_MOZ=yes,samba_cv_HAVE_LDAP_MOZ=no)]) ++ if test x"$samba_cv_HAVE_LDAP_MOZ" = x"yes"; then ++ AC_DEFINE(HAVE_HAVE_LDAP_MOZ,1, ++ [Whether the LDAP SDK is Mozilla]) ++ fi ++ + else + if test x"$with_ldap_support" = x"yes"; then + AC_MSG_ERROR(libldap is needed for LDAP support) +@@ -3415,8 +3429,21 @@ + # Check to see whether there is enough LDAP functionality to be able + # to build AD support. + +-# HPUX only has ldap_init; ok, we take care of this in smbldap.c +-case "$host_os" in ++ if test x"$samba_cv_HAVE_LDAP_MOZ" = x"yes"; then ++ # Mozilla LDAP C-SDK has only has ldap_open/ldap_init; ok, we take care of this in smbldap.c ++ AC_CHECK_FUNC_EXT(ldap_open,$LDAP_LIBS) ++ ++ if test x"$ac_cv_func_ext_ldap_open" != x"yes"; then ++ if test x"$with_ads_support" = x"yes"; then ++ AC_MSG_ERROR(Active Directory support with Mozldap C-SDK requires ldap_open) ++ elif test x"$with_ads_support" = x"auto"; then ++ AC_MSG_WARN(Disabling Active Directory support (requires ldap_open with Mozldap C-SDK)) ++ with_ads_support=no ++ fi ++ fi ++ else ++ # HPUX only has ldap_init; ok, we take care of this in smbldap.c ++ case "$host_os" in + *hpux*) + AC_CHECK_FUNC_EXT(ldap_init,$LDAP_LIBS) + +@@ -3441,7 +3468,8 @@ + fi + fi + ;; +-esac ++ esac ++ fi + + + AC_CHECK_FUNC_EXT(ldap_add_result_entry,$LDAP_LIBS) diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/swat.c.patch --- a/components/samba/samba/patches/swat.c.patch Mon Jan 23 04:17:30 2012 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ ---- source3/web/swat.c.orig 2009-07-03 04:21:14.000000000 -0700 -+++ source3/web/swat.c 2009-09-01 07:39:04.758980165 -0700 -@@ -203,12 +203,12 @@ - char *output; - if(strcmp(pLabel, pTranslated) != 0) { - output = talloc_asprintf(ctx, -- " %s       %s
%s", -+ " %s       %s
%s", - pAnchor, pHelp, pLabel, pTranslated); - return output; - } - output = talloc_asprintf(ctx, -- " %s       %s", -+ " %s       %s", - pAnchor, pHelp, pLabel); - return output; - } -@@ -1257,7 +1257,7 @@ - printf("

%s

\n", _("Important Note:")); - printf("%s",_("Printer names marked with [*] in the Choose Printer drop-down box ")); - printf("%s",_("are autoloaded printers from ")); -- printf("%s\n", _("Printcap Name")); -+ printf("%s\n", _("Printcap Name")); - printf("%s\n", _("Attempting to delete these printers from SWAT will have no effect.")); - - if (cgi_variable("Commit") && snum >= 0) { diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/vfs_samfs.c.patch --- a/components/samba/samba/patches/vfs_samfs.c.patch Mon Jan 23 04:17:30 2012 -0800 +++ b/components/samba/samba/patches/vfs_samfs.c.patch Mon Jan 30 18:04:00 2012 -0800 @@ -1,6 +1,47 @@ ---- source3/modules/vfs_samfs.c 2010-07-07 10:22:33.756895700 -0700 -+++ source3/modules/vfs_samfs.c 2010-07-07 07:13:55.603441200 -0700 -@@ -0,0 +1,172 @@ +bug #5780 + +diff --git a/source3/Makefile.in b/source3/Makefile.in +index 425aa2b..db1d809 100644 +--- a/source3/Makefile.in ++++ b/source3/Makefile.in +@@ -715,6 +715,7 @@ VFS_AIXACL_OBJ = modules/vfs_aixacl.o modules/vfs_aixacl_util.o + VFS_AIXACL2_OBJ = modules/vfs_aixacl2.o modules/vfs_aixacl_util.o modules/nfs4_acls.o + VFS_SOLARISACL_OBJ = modules/vfs_solarisacl.o + VFS_ZFSACL_OBJ = modules/vfs_zfsacl.o modules/nfs4_acls.o ++VFS_SAMFS_OBJ = modules/vfs_samfs.o + VFS_HPUXACL_OBJ = modules/vfs_hpuxacl.o + VFS_IRIXACL_OBJ = modules/vfs_irixacl.o + VFS_TRU64ACL_OBJ = modules/vfs_tru64acl.o +@@ -2741,6 +2742,10 @@ bin/zfsacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_ZFSACL_OBJ) + @echo "Building plugin $@" + @$(SHLD_MODULE) $(VFS_ZFSACL_OBJ) + ++bin/samfs.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_SAMFS_OBJ) ++ @echo "Building plugin $@" ++ @$(SHLD_MODULE) $(VFS_SAMFS_OBJ) @SAMFS_LIBS@ ++ + bin/irixacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_IRIXACL_OBJ) + @echo "Building plugin $@" + @$(SHLD_MODULE) $(VFS_IRIXACL_OBJ) +diff --git a/source3/configure.in b/source3/configure.in +index 2494593..8daa53f 100644 +--- a/source3/configure.in ++++ b/source3/configure.in +@@ -6653,6 +6653,8 @@ SMB_MODULE(vfs_aio_fork, \$(VFS_AIO_FORK_OBJ), "bin/aio_fork.$SHLIBEXT", VFS) + SMB_MODULE(vfs_preopen, \$(VFS_PREOPEN_OBJ), "bin/preopen.$SHLIBEXT", VFS) + SMB_MODULE(vfs_syncops, \$(VFS_SYNCOPS_OBJ), "bin/syncops.$SHLIBEXT", VFS) + SMB_MODULE(vfs_zfsacl, \$(VFS_ZFSACL_OBJ), "bin/zfsacl.$SHLIBEXT", VFS) ++AC_SUBST(SAMFS_LIBS) ++SMB_MODULE(vfs_samfs, \$(VFS_SAMFS_OBJ), "bin/samfs.$SHLIBEXT", VFS) + SMB_MODULE(vfs_notify_fam, \$(VFS_NOTIFY_FAM_OBJ), "bin/notify_fam.$SHLIBEXT", VFS) + SMB_MODULE(vfs_acl_xattr, \$(VFS_ACL_XATTR_OBJ), "bin/acl_xattr.$SHLIBEXT", VFS) + SMB_MODULE(vfs_acl_tdb, \$(VFS_ACL_TDB_OBJ), "bin/acl_tdb.$SHLIBEXT", VFS) +diff --git a/source3/modules/vfs_samfs.c b/source3/modules/vfs_samfs.c +new file mode 100644 +index 0000000..9370768 +--- /dev/null ++++ b/source3/modules/vfs_samfs.c +@@ -0,0 +1,166 @@ +/* + * Support for offline files with Sun SAM-QFS + * @@ -76,7 +117,7 @@ + + if (result != 0) { + DEBUG(10,("samfs_is_offline: cannot sam_stat %s, %s\nAssuming file is offline.\n", \ -+ path, strerror(errno))); ++ path, strerror(errno))); + return true; + } + @@ -93,44 +134,39 @@ + */ + if (SS_ISSEGMENT_F(file_info.attr)) { + number_of_segments = NUM_SEGS(&file_info); -+ seg_info_ptr = (struct sam_stat *)malloc(number_of_segments * -+ sizeof(struct sam_stat)); ++ seg_info_ptr = (struct sam_stat *)TALLOC_ZERO_ARRAY(talloc_tos(), ++ struct sam_stat, number_of_segments); + if (seg_info_ptr != NULL) { -+ /* -+ * Initialize seg_info_ptr to be all zero bits -+ */ -+ memset((void *)seg_info_ptr, 0, number_of_segments * -+ sizeof(struct sam_stat)); -+ /* -+ * Stat all segments -+ */ -+ result = sam_segment_stat(path, seg_info_ptr, -+ number_of_segments * sizeof(struct sam_stat)); -+ if (result != 0) { -+ DEBUG(10,("samfs_is_offline: cannot sam_segment_stat %s, %s\nAssuming file is offline.\n", \ -+ path, strerror(errno))); -+ offline = true; ++ DEBUG(10,("samfs_is_offline: cannot talloc for " ++ "segment stat info %s\nAssuming file is offline.\n", ++ path)); ++ return true; ++ } ++ ++ /* ++ * Stat all segments ++ */ ++ result = sam_segment_stat(path, seg_info_ptr, ++ number_of_segments * sizeof(struct sam_stat)); ++ if (result != 0) { ++ DEBUG(10,("samfs_is_offline: cannot sam_segment_stat %s, " ++ "%s\nAssuming file is offline.\n", ++ path, strerror(errno))); ++ TALLOC_FREE(seg_info_ptr); ++ return true; ++ } ++ /* ++ * Loop over segments until we have checked all segments ++ * or found one which is offline. ++ */ ++ for (i = 0; i < number_of_segments; i++) { ++ if (SS_ISOFFLINE(seg_info_ptr[i].attr)) { ++ DEBUG(10,("samfs_is_offline: file %s has offline segment %d\n", ++ path, i+1)); ++ break; + } -+ /* -+ * Loop over segments until we have checked all segments -+ * or found one which is offline. -+ */ -+ i = 0; -+ while (!offline && (i < number_of_segments)) { -+ if (SS_ISOFFLINE(seg_info_ptr[i].attr)) { -+ DEBUG(10,("samfs_is_offline: file %s has offline segment %d\n", \ -+ path, i+1)); -+ offline = true; -+ } -+ i++; -+ } -+ SAFE_FREE(seg_info_ptr); -+ } else { -+ DEBUG(10,("samfs_is_offline: cannot malloc for segment stat info %s\nAssuming file is offline.\n", \ -+ path)); -+ offline = true; -+ } -+ ++ } ++ TALLOC_FREE(seg_info_ptr); + } + return offline; +} @@ -153,8 +189,8 @@ + + result = sam_release(path, "i"); + if (result != 0) { -+ DEBUG(10,("samfs_set_offline: sam_release %s returned %s\n", \ -+ path, strerror(errno))); ++ DEBUG(10,("samfs_set_offline: sam_release %s returned %s\n", ++ path, strerror(errno))); + return -1; + } + return 0; @@ -167,9 +203,8 @@ + .set_offline = samfs_set_offline +}; + -+NTSTATUS vfs_samfs_init(void); +NTSTATUS vfs_samfs_init(void) +{ + return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, SAMFS_MODULE_NAME, -+ &samfs_fns); ++ &samfs_fns); +} diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/vfs_shadow_copy2.c.patch --- a/components/samba/samba/patches/vfs_shadow_copy2.c.patch Mon Jan 23 04:17:30 2012 -0800 +++ b/components/samba/samba/patches/vfs_shadow_copy2.c.patch Mon Jan 30 18:04:00 2012 -0800 @@ -1,9 +1,12 @@ +7011579 Request to add shadow_copy2 in the next Samba patch or Solaris Samba package +s3: Replace shadow_copy2 with a new implementation + X-Git-Url: http://gitweb.samba.org/?p=samba.git;a=blobdiff_plain;f=source3%2Fmodules%2Fvfs_shadow_copy2.c;h=2777907a57da081118e8d11f846f6a33f9095a1d;hp=0393f309692b139f74c2460d2bdc27f8352bf50a;hb=HEAD;hpb=cf74a4857c051b43b1f6a06b714a93a65e8a1f90 diff --git a/source3/modules/vfs_shadow_copy2.c b/source3/modules/vfs_shadow_copy2.c index 0393f30..2777907 100644 ---- source3/modules/vfs_shadow_copy2.c -+++ source3/modules/vfs_shadow_copy2.c +--- a/source3/modules/vfs_shadow_copy2.c ++++ b/source3/modules/vfs_shadow_copy2.c @@ -250,8 +250,8 @@ static const char *shadow_copy2_normalise_path(TALLOC_CTX *mem_ctx, const char * } while (0) diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/patches/xtra-conf.in-liblber-avoid.patch --- a/components/samba/samba/patches/xtra-conf.in-liblber-avoid.patch Mon Jan 23 04:17:30 2012 -0800 +++ b/components/samba/samba/patches/xtra-conf.in-liblber-avoid.patch Mon Jan 30 18:04:00 2012 -0800 @@ -1,5 +1,7 @@ ---- source3/configure.in-bkp 2011-09-19 09:34:22.632025100 -0700 -+++ source3/configure.in 2011-09-19 09:37:16.235176200 -0700 +7092513 Samba links liblber from openldap but should not do it. + +--- a/source3/configure.in-bkp 2011-09-19 09:34:22.632025100 -0700 ++++ b/source3/configure.in 2011-09-19 09:37:16.235176200 -0700 @@ -3285,7 +3285,10 @@ ################################################################## # we might need the lber lib on some systems. To avoid link errors diff -r b4a4c4d7fb32 -r 4307245757f6 components/samba/samba/samba-license --- a/components/samba/samba/samba-license Mon Jan 23 04:17:30 2012 -0800 +++ b/components/samba/samba/samba-license Mon Jan 30 18:04:00 2012 -0800 @@ -1,10 +1,10 @@ -Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. +Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. This package may include technology which may be subject to one or more of the following additional notices: -Samba 3.5.10 -Oracle Internal Tracking Number 5789 +Samba 3.5.12 +Oracle Internal Tracking Number 7077 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007