summaryrefslogtreecommitdiff
path: root/net/samba3/files
diff options
context:
space:
mode:
Diffstat (limited to 'net/samba3/files')
-rw-r--r--net/samba3/files/README.FreeBSD2
-rw-r--r--net/samba3/files/patch-Makefile.in16
-rw-r--r--net/samba3/files/patch-aclocal.m4104
-rw-r--r--net/samba3/files/patch-configure.in50
-rw-r--r--net/samba3/files/patch-include_includes.h17
-rw-r--r--net/samba3/files/patch-lib_system.c306
-rw-r--r--net/samba3/files/patch-script_installswat.sh4
-rw-r--r--net/samba3/files/samba.sh.sample2
-rw-r--r--net/samba3/files/smb.conf.default14
9 files changed, 22 insertions, 493 deletions
diff --git a/net/samba3/files/README.FreeBSD b/net/samba3/files/README.FreeBSD
index fc1e790897f0..f0957adc703f 100644
--- a/net/samba3/files/README.FreeBSD
+++ b/net/samba3/files/README.FreeBSD
@@ -12,7 +12,7 @@ are encouraged to use 'tdbsam' backend instead:
passdb backend = tdbsam, smbpasswd
You can use pdbedit to migrate accounts from 'smbpasswd' to 'tdbsam',
-see the Samba-HOWTO-Collection.
+see the Samba3-HOWTO-Collection.
You still can create 'smbpasswd' file with the supplied 'make_smbpasswd'
script:
diff --git a/net/samba3/files/patch-Makefile.in b/net/samba3/files/patch-Makefile.in
index 160a940172f8..b91e88f6b97f 100644
--- a/net/samba3/files/patch-Makefile.in
+++ b/net/samba3/files/patch-Makefile.in
@@ -1,14 +1,14 @@
---- Makefile.in.orig Sun Nov 7 21:43:23 2004
-+++ Makefile.in Mon Nov 8 17:40:48 2004
-@@ -99,6 +99,7 @@
+--- Makefile.in.orig Tue Jul 12 18:42:55 2005
++++ Makefile.in Fri Jul 22 04:03:37 2005
+@@ -97,6 +97,7 @@
LIBSMBCLIENT_MAJOR=0
LIBSMBCLIENT_MINOR=1
+NSS_VERSION=1
- FLAGS1 = $(CFLAGS) @FLAGS1@ -Iinclude -I$(srcdir)/include -I$(srcdir)/ubiqx -I$(srcdir)/smbwrapper -I. $(CPPFLAGS) -I$(srcdir)
+ FLAGS1 = $(CFLAGS) @FLAGS1@ -Iinclude -I$(srcdir)/include -I$(srcdir)/ubiqx @SMBWRAP_INC@ -I. $(CPPFLAGS) -I$(srcdir)
FLAGS2 =
-@@ -989,8 +990,8 @@
+@@ -987,8 +988,8 @@
@SONAMEFLAG@`basename $@`
bin/libsmbclient.@SHLIBEXT@: $(LIBSMBCLIENT_PICOBJS)
@@ -19,7 +19,7 @@
$(KRB5LIBS) $(LDAP_LIBS) \
@SONAMEFLAG@`basename $@`.$(LIBSMBCLIENT_MAJOR)
-@@ -1074,13 +1075,13 @@
+@@ -1082,13 +1083,13 @@
@WINBIND_NSS@: $(WINBIND_NSS_PICOBJS)
@echo "Linking $@"
@$(SHLD) $(WINBIND_NSS_LDSHFLAGS) -o $@ $(WINBIND_NSS_PICOBJS) \
@@ -35,10 +35,10 @@
nsswitch/pam_winbind.@SHLIBEXT@: $(PAM_WINBIND_PICOBJ) bin/.dummy
@echo "Linking $@"
-@@ -1276,7 +1277,7 @@
+@@ -1295,7 +1296,7 @@
bin/t_snprintf@EXEEXT@: lib/snprintf.c
- $(CC) $(FLAGS) -o $@ $(DYNEXP) -DTEST_SNPRINTF lib/snprintf.c -lm
+ $(CC) $(FLAGS) @PIE_LDFLAGS@ -o $@ $(DYNEXP) -DTEST_SNPRINTF lib/snprintf.c -lm
-install: installbin installman installscripts installdat installswat installmodules @INSTALLCLIENT@
+install: installbin installscripts installdat installswat installmodules
diff --git a/net/samba3/files/patch-aclocal.m4 b/net/samba3/files/patch-aclocal.m4
deleted file mode 100644
index 36c172411d1e..000000000000
--- a/net/samba3/files/patch-aclocal.m4
+++ /dev/null
@@ -1,104 +0,0 @@
---- aclocal.m4.orig Sat Apr 3 22:30:01 2004
-+++ aclocal.m4 Sat Apr 3 22:33:24 2004
-@@ -564,89 +564,20 @@
- jm_cv_lib_iconv=""
- jm_cv_giconv=no
- jm_save_LIBS="$LIBS"
-- LIBS="$LIBS -lbiconv"
-- AC_TRY_LINK([#include <stdlib.h>
--#include <biconv.h>],
-- [iconv_t cd = iconv_open("","");
-- iconv(cd,NULL,NULL,NULL,NULL);
-- iconv_close(cd);],
-- jm_cv_func_iconv=yes
-- jm_cv_biconv=yes
-- jm_cv_include="biconv.h"
-- jm_cv_lib_iconv="biconv")
-- LIBS="$jm_save_LIBS"
--
-- dnl Check for include in funny place but no lib needed
-- if test "$jm_cv_func_iconv" != yes; then
-- AC_TRY_LINK([#include <stdlib.h>
--#include <giconv.h>],
-- [iconv_t cd = iconv_open("","");
-- iconv(cd,NULL,NULL,NULL,NULL);
-- iconv_close(cd);],
-- jm_cv_func_iconv=yes
-- jm_cv_include="giconv.h"
-- jm_cv_giconv="yes"
-- jm_cv_lib_iconv="")
--
-- dnl Standard iconv.h include, lib in glibc or libc ...
-- if test "$jm_cv_func_iconv" != yes; then
-- AC_TRY_LINK([#include <stdlib.h>
-+ LIBS="$LIBS -liconv"
-+ AC_TRY_LINK([#include <stdlib.h>
- #include <iconv.h>],
-- [iconv_t cd = iconv_open("","");
-- iconv(cd,NULL,NULL,NULL,NULL);
-- iconv_close(cd);],
-- jm_cv_include="iconv.h"
-- jm_cv_func_iconv=yes
-- jm_cv_lib_iconv="")
--
-- if test "$jm_cv_lib_iconv" != yes; then
-- jm_save_LIBS="$LIBS"
-- LIBS="$LIBS -lgiconv"
-- AC_TRY_LINK([#include <stdlib.h>
--#include <giconv.h>],
-- [iconv_t cd = iconv_open("","");
-- iconv(cd,NULL,NULL,NULL,NULL);
-- iconv_close(cd);],
-- jm_cv_lib_iconv=yes
-- jm_cv_func_iconv=yes
-- jm_cv_include="giconv.h"
-- jm_cv_giconv=yes
-- jm_cv_lib_iconv="giconv")
--
-- LIBS="$jm_save_LIBS"
--
-- if test "$jm_cv_func_iconv" != yes; then
-- jm_save_LIBS="$LIBS"
-- LIBS="$LIBS -liconv"
-- AC_TRY_LINK([#include <stdlib.h>
--#include <iconv.h>],
-- [iconv_t cd = iconv_open("","");
-- iconv(cd,NULL,NULL,NULL,NULL);
-- iconv_close(cd);],
-- jm_cv_include="iconv.h"
-- jm_cv_func_iconv=yes
-- jm_cv_lib_iconv="iconv")
-- LIBS="$jm_save_LIBS"
-- fi
-- fi
-- fi
-- fi
-+ [iconv_t cd = iconv_open("","");
-+ iconv(cd,NULL,NULL,NULL,NULL);
-+ iconv_close(cd);],
-+ jm_cv_include="iconv.h"
-+ jm_cv_func_iconv=yes
-+ jm_cv_lib_iconv="iconv")
-+ LIBS="$jm_save_LIBS"
- if test "$jm_cv_func_iconv" = yes; then
-- if test "$jm_cv_giconv" = yes; then
-- AC_DEFINE(HAVE_GICONV, 1, [What header to include for iconv() function: giconv.h])
-- AC_MSG_RESULT(yes)
-- ICONV_FOUND=yes
-- else
-- if test "$jm_cv_biconv" = yes; then
-- AC_DEFINE(HAVE_BICONV, 1, [What header to include for iconv() function: biconv.h])
-- AC_MSG_RESULT(yes)
-- ICONV_FOUND=yes
-- else
-- AC_DEFINE(HAVE_ICONV, 1, [What header to include for iconv() function: iconv.h])
-- AC_MSG_RESULT(yes)
-- ICONV_FOUND=yes
-- fi
-- fi
-+ AC_DEFINE(HAVE_ICONV, 1, [What header to include for iconv() function: iconv.h])
-+ AC_MSG_RESULT(yes)
-+ ICONV_FOUND=yes
- else
- AC_MSG_RESULT(no)
- fi
diff --git a/net/samba3/files/patch-configure.in b/net/samba3/files/patch-configure.in
deleted file mode 100644
index 264d8495296a..000000000000
--- a/net/samba3/files/patch-configure.in
+++ /dev/null
@@ -1,50 +0,0 @@
---- configure.in.orig Thu Apr 14 08:14:26 2005
-+++ configure.in Wed Jul 20 02:42:57 2005
-@@ -727,7 +727,9 @@
- AC_CHECK_HEADERS(nss.h nss_common.h nsswitch.h ns_api.h sys/security.h security/pam_appl.h)
- AC_CHECK_HEADERS(stropts.h poll.h)
- AC_CHECK_HEADERS(sys/capability.h syscall.h sys/syscall.h)
--AC_CHECK_HEADERS(sys/acl.h sys/attributes.h attr/xattr.h sys/xattr.h sys/cdefs.h glob.h)
-+AC_CHECK_HEADERS(sys/acl.h sys/attributes.h attr/xattr.h sys/xattr.h sys/extattr.h sys/uio.h)
-+AC_CHECK_HEADERS(sys/cdefs.h glob.h)
-+
- # These faile to compile on Solaris so just check for their presence
- AC_CHECK_HEADERS(security/pam_modules.h net/if.h netinet/ip.h, [], [], -)
-
-@@ -1162,6 +1164,18 @@
- AC_CHECK_FUNCS(setxattr lsetxattr fsetxattr)
- AC_CHECK_FUNCS(attr_get attr_list attr_set attr_remove)
- AC_CHECK_FUNCS(attr_getf attr_listf attr_setf attr_removef)
-+# Check if we have extattr
-+case "$host_os" in
-+ *freebsd4* | *DragonFly* )
-+ AC_DEFINE(BROKEN_EXTATTR, 1, [Does extattr API work])
-+ ;;
-+ *)
-+ AC_CHECK_FUNCS(extattr_delete_fd extattr_delete_file extattr_delete_link)
-+ AC_CHECK_FUNCS(extattr_get_fd extattr_get_file extattr_get_link)
-+ AC_CHECK_FUNCS(extattr_list_fd extattr_list_file extattr_list_link)
-+ AC_CHECK_FUNCS(extattr_set_fd extattr_set_file extattr_set_link)
-+ ;;
-+esac
-
- # Assume non-shared by default and override below
- BLDSHARED="false"
-@@ -3974,7 +3988,7 @@
- AC_DEFINE(HAVE_TRU64_ACLS,1,[Whether Tru64 ACLs are available])
- ACL_LIBS="$ACL_LIBS -lpacl"
- ;;
-- *freebsd5*|*freebsd6*)
-+ *freebsd[[5-9]]*)
- AC_MSG_RESULT(Using FreeBSD posix ACLs)
- AC_DEFINE(HAVE_POSIX_ACLS,1,[Whether FreeBSD POSIX ACLs are available])
- AC_DEFINE(HAVE_ACL_GET_PERM_NP,1,[Whether acl_get_perm_np() is available])
-@@ -4322,7 +4336,7 @@
- *linux*)
- WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_linux.o"
- ;;
-- *freebsd5*|*freebsd6*)
-+ *freebsd[[5-9]]*)
- # FreeBSD winbind client is implemented as a wrapper around
- # the Linux version.
- WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_freebsd.o \
diff --git a/net/samba3/files/patch-include_includes.h b/net/samba3/files/patch-include_includes.h
deleted file mode 100644
index 0260c58a5b85..000000000000
--- a/net/samba3/files/patch-include_includes.h
+++ /dev/null
@@ -1,17 +0,0 @@
---- include/includes.h.orig Fri Nov 26 00:47:28 2004
-+++ include/includes.h Fri Nov 26 01:59:16 2004
-@@ -476,6 +476,14 @@
- #include <sys/xattr.h>
- #endif
-
-+#ifdef HAVE_SYS_EXTATTR_H
-+#include <sys/extattr.h>
-+#endif
-+
-+#ifdef HAVE_SYS_UIO_H
-+#include <sys/uio.h>
-+#endif
-+
- #if HAVE_LOCALE_H
- #include <locale.h>
- #endif
diff --git a/net/samba3/files/patch-lib_system.c b/net/samba3/files/patch-lib_system.c
deleted file mode 100644
index f67b92a915e8..000000000000
--- a/net/samba3/files/patch-lib_system.c
+++ /dev/null
@@ -1,306 +0,0 @@
---- lib/system.c.orig Fri Feb 25 18:59:32 2005
-+++ lib/system.c Fri Mar 4 02:04:45 2005
-@@ -1373,10 +1373,17 @@
- {
- #if defined(HAVE_GETXATTR)
- return getxattr(path, name, value, size);
-+#elif defined(HAVE_EXTATTR_GET_FILE)
-+ char *s;
-+ int attrnamespace = (strncmp(name, "system", 6) == 0) ?
-+ EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER;
-+ const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1;
-+
-+ return extattr_get_file(path, attrnamespace, attrname, value, size);
- #elif defined(HAVE_ATTR_GET)
- int retval, flags = 0;
- int valuelength = (int)size;
-- char *attrname = strchr(name,'.') +1;
-+ char *attrname = strchr(name,'.') + 1;
-
- if (strncmp(name, "system", 6) == 0) flags |= ATTR_ROOT;
-
-@@ -1393,10 +1400,17 @@
- {
- #if defined(HAVE_LGETXATTR)
- return lgetxattr(path, name, value, size);
-+#elif defined(HAVE_EXTATTR_GET_LINK)
-+ char *s;
-+ int attrnamespace = (strncmp(name, "system", 6) == 0) ?
-+ EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER;
-+ const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1;
-+
-+ return extattr_get_link(path, attrnamespace, attrname, value, size);
- #elif defined(HAVE_ATTR_GET)
- int retval, flags = ATTR_DONTFOLLOW;
- int valuelength = (int)size;
-- char *attrname = strchr(name,'.') +1;
-+ char *attrname = strchr(name,'.') + 1;
-
- if (strncmp(name, "system", 6) == 0) flags |= ATTR_ROOT;
-
-@@ -1413,10 +1427,17 @@
- {
- #if defined(HAVE_FGETXATTR)
- return fgetxattr(filedes, name, value, size);
-+#elif defined(HAVE_EXTATTR_GET_FD)
-+ char *s;
-+ int attrnamespace = (strncmp(name, "system", 6) == 0) ?
-+ EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER;
-+ const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1;
-+
-+ return extattr_get_fd(filedes, attrnamespace, attrname, value, size);
- #elif defined(HAVE_ATTR_GETF)
- int retval, flags = 0;
- int valuelength = (int)size;
-- char *attrname = strchr(name,'.') +1;
-+ char *attrname = strchr(name,'.') + 1;
-
- if (strncmp(name, "system", 6) == 0) flags |= ATTR_ROOT;
-
-@@ -1429,6 +1450,99 @@
- #endif
- }
-
-+#if defined(HAVE_EXTATTR_LIST_FILE)
-+
-+#define EXTATTR_PREFIX(s) (s), (sizeof((s))-1)
-+
-+static struct {
-+ int space;
-+ const char *name;
-+ size_t len;
-+}
-+extattr[] = {
-+ { EXTATTR_NAMESPACE_SYSTEM, EXTATTR_PREFIX("system.") },
-+ { EXTATTR_NAMESPACE_USER, EXTATTR_PREFIX("user.") },
-+};
-+
-+typedef union {
-+ const char *path;
-+ int filedes;
-+} extattr_arg;
-+
-+static ssize_t bsd_attr_list (int type, extattr_arg arg, char *list, size_t size)
-+{
-+ ssize_t list_size, total_size = 0;
-+ int i, t, len;
-+ char *buf;
-+ /* Iterate through extattr(2) namespaces */
-+ for(t = 0; t < (sizeof(extattr)/sizeof(extattr[0])); t++) {
-+ switch(type) {
-+#if defined(HAVE_EXTATTR_LIST_FILE)
-+ case 0:
-+ list_size = extattr_list_file(arg.path, extattr[t].space, list, size);
-+ break;
-+#endif
-+#if defined(HAVE_EXTATTR_LIST_LINK)
-+ case 1:
-+ list_size = extattr_list_link(arg.path, extattr[t].space, list, size);
-+ break;
-+#endif
-+#if defined(HAVE_EXTATTR_LIST_FD)
-+ case 2:
-+ list_size = extattr_list_fd(arg.filedes, extattr[t].space, list, size);
-+ break;
-+#endif
-+ default:
-+ errno = ENOSYS;
-+ return -1;
-+ }
-+ /* Some error happend. Errno should be set by the previous call */
-+ if(list_size < 0)
-+ return -1;
-+ /* No attributes */
-+ if(list_size == 0)
-+ continue;
-+ /* XXX: Call with an empty buffer may be used to calculate
-+ necessary buffer size. Unfortunately, we can't say, how
-+ many attributes were returned, so here is the potential
-+ problem with the emulation.
-+ */
-+ if(list == NULL) {
-+ /* Take the worse case of one char attribute names -
-+ two bytes per name plus one more for sanity.
-+ */
-+ total_size += list_size + (list_size/2 + 1)*extattr[t].len;
-+ continue;
-+ }
-+ /* Count necessary offset to fit namespace prefixes */
-+ len = 0;
-+ for(i = 0; i < list_size; i += list[i] + 1)
-+ len += extattr[t].len;
-+
-+ total_size += list_size + len;
-+ /* Buffer is too small to fit the results */
-+ if(total_size > size) {
-+ errno = ERANGE;
-+ return -1;
-+ }
-+ /* Shift the results back, so we can prepend prefixes */
-+ buf = memmove(list + len, list, list_size);
-+
-+ for(i = 0; i < list_size; i += len + 1) {
-+ len = buf[i];
-+ strncpy(list, extattr[t].name, extattr[t].len + 1);
-+ list += extattr[t].len;
-+ strncpy(list, buf + i + 1, len);
-+ list[len] = '\0';
-+ list += len + 1;
-+ }
-+ size -= total_size;
-+ }
-+ return total_size;
-+}
-+
-+#endif
-+
- #if defined(HAVE_ATTR_LIST) && defined(HAVE_SYS_ATTRIBUTES_H)
- static char attr_buffer[ATTR_MAX_VALUELEN];
-
-@@ -1501,6 +1615,10 @@
- {
- #if defined(HAVE_LISTXATTR)
- return listxattr(path, list, size);
-+#elif defined(HAVE_EXTATTR_LIST_FILE)
-+ extattr_arg arg;
-+ arg.path = path;
-+ return bsd_attr_list(0, arg, list, size);
- #elif defined(HAVE_ATTR_LIST) && defined(HAVE_SYS_ATTRIBUTES_H)
- return irix_attr_list(path, 0, list, size, 0);
- #else
-@@ -1513,6 +1631,10 @@
- {
- #if defined(HAVE_LLISTXATTR)
- return llistxattr(path, list, size);
-+#elif defined(HAVE_EXTATTR_LIST_LINK)
-+ extattr_arg arg;
-+ arg.path = path;
-+ return bsd_attr_list(1, arg, list, size);
- #elif defined(HAVE_ATTR_LIST) && defined(HAVE_SYS_ATTRIBUTES_H)
- return irix_attr_list(path, 0, list, size, ATTR_DONTFOLLOW);
- #else
-@@ -1525,6 +1647,10 @@
- {
- #if defined(HAVE_FLISTXATTR)
- return flistxattr(filedes, list, size);
-+#elif defined(HAVE_EXTATTR_LIST_FD)
-+ extattr_arg arg;
-+ arg.filedes = filedes;
-+ return bsd_attr_list(2, arg, list, size);
- #elif defined(HAVE_ATTR_LISTF)
- return irix_attr_list(NULL, filedes, list, size, 0);
- #else
-@@ -1537,9 +1663,16 @@
- {
- #if defined(HAVE_REMOVEXATTR)
- return removexattr(path, name);
-+#elif defined(HAVE_EXTATTR_DELETE_FILE)
-+ char *s;
-+ int attrnamespace = (strncmp(name, "system", 6) == 0) ?
-+ EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER;
-+ const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1;
-+
-+ return extattr_delete_file(path, attrnamespace, attrname);
- #elif defined(HAVE_ATTR_REMOVE)
- int flags = 0;
-- char *attrname = strchr(name,'.') +1;
-+ char *attrname = strchr(name,'.') + 1;
-
- if (strncmp(name, "system", 6) == 0) flags |= ATTR_ROOT;
-
-@@ -1554,9 +1687,16 @@
- {
- #if defined(HAVE_LREMOVEXATTR)
- return lremovexattr(path, name);
-+#elif defined(HAVE_EXTATTR_DELETE_LINK)
-+ char *s;
-+ int attrnamespace = (strncmp(name, "system", 6) == 0) ?
-+ EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER;
-+ const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1;
-+
-+ return extattr_delete_link(path, attrnamespace, attrname);
- #elif defined(HAVE_ATTR_REMOVE)
- int flags = ATTR_DONTFOLLOW;
-- char *attrname = strchr(name,'.') +1;
-+ char *attrname = strchr(name,'.') + 1;
-
- if (strncmp(name, "system", 6) == 0) flags |= ATTR_ROOT;
-
-@@ -1571,9 +1711,16 @@
- {
- #if defined(HAVE_FREMOVEXATTR)
- return fremovexattr(filedes, name);
-+#elif defined(HAVE_EXTATTR_DELETE_FD)
-+ char *s;
-+ int attrnamespace = (strncmp(name, "system", 6) == 0) ?
-+ EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER;
-+ const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1;
-+
-+ return extattr_delete_fd(filedes, attrnamespace, attrname);
- #elif defined(HAVE_ATTR_REMOVEF)
- int flags = 0;
-- char *attrname = strchr(name,'.') +1;
-+ char *attrname = strchr(name,'.') + 1;
-
- if (strncmp(name, "system", 6) == 0) flags |= ATTR_ROOT;
-
-@@ -1593,9 +1740,18 @@
- {
- #if defined(HAVE_SETXATTR)
- return setxattr(path, name, value, size, flags);
-+#elif defined(HAVE_EXTATTR_SET_FILE)
-+ char *s;
-+ int retval = 0;
-+ int attrnamespace = (strncmp(name, "system", 6) == 0) ?
-+ EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER;
-+ const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1;
-+
-+ retval = extattr_set_file(path, attrnamespace, attrname, value, size);
-+ return (retval < 0) ? -1 : 0;
- #elif defined(HAVE_ATTR_SET)
- int myflags = 0;
-- char *attrname = strchr(name,'.') +1;
-+ char *attrname = strchr(name,'.') + 1;
-
- if (strncmp(name, "system", 6) == 0) myflags |= ATTR_ROOT;
- if (flags & XATTR_CREATE) myflags |= ATTR_CREATE;
-@@ -1612,9 +1768,18 @@
- {
- #if defined(HAVE_LSETXATTR)
- return lsetxattr(path, name, value, size, flags);
-+#elif defined(HAVE_EXTATTR_SET_LINK)
-+ char *s;
-+ int retval = 0;
-+ int attrnamespace = (strncmp(name, "system", 6) == 0) ?
-+ EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER;
-+ const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1;
-+
-+ retval = extattr_set_link(path, attrnamespace, attrname, value, size);
-+ return (retval < 0) ? -1 : 0;
- #elif defined(HAVE_ATTR_SET)
- int myflags = ATTR_DONTFOLLOW;
-- char *attrname = strchr(name,'.') +1;
-+ char *attrname = strchr(name,'.') + 1;
-
- if (strncmp(name, "system", 6) == 0) myflags |= ATTR_ROOT;
- if (flags & XATTR_CREATE) myflags |= ATTR_CREATE;
-@@ -1631,9 +1796,18 @@
- {
- #if defined(HAVE_FSETXATTR)
- return fsetxattr(filedes, name, value, size, flags);
-+#elif defined(HAVE_EXTATTR_SET_FD)
-+ char *s;
-+ int retval = 0;
-+ int attrnamespace = (strncmp(name, "system", 6) == 0) ?
-+ EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER;
-+ const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1;
-+
-+ retval = extattr_set_fd(filedes, attrnamespace, attrname, value, size);
-+ return (retval < 0) ? -1 : 0;
- #elif defined(HAVE_ATTR_SETF)
- int myflags = 0;
-- char *attrname = strchr(name,'.') +1;
-+ char *attrname = strchr(name,'.') + 1;
-
- if (strncmp(name, "system", 6) == 0) myflags |= ATTR_ROOT;
- if (flags & XATTR_CREATE) myflags |= ATTR_CREATE;
diff --git a/net/samba3/files/patch-script_installswat.sh b/net/samba3/files/patch-script_installswat.sh
index 9cbea9ebc612..f2ea5abcaee3 100644
--- a/net/samba3/files/patch-script_installswat.sh
+++ b/net/samba3/files/patch-script_installswat.sh
@@ -1,5 +1,5 @@
---- script/installswat.sh.orig Fri Dec 17 03:59:34 2004
-+++ script/installswat.sh Fri Dec 17 04:01:34 2004
+--- script/installswat.sh.orig Thu Jul 28 19:44:16 2005
++++ script/installswat.sh Wed Aug 3 02:33:04 2005
@@ -8,8 +8,7 @@
echo Installing SWAT in $SWATDIR
echo Installing the Samba Web Administration Tool
diff --git a/net/samba3/files/samba.sh.sample b/net/samba3/files/samba.sh.sample
index 9c154b130fab..26214e3844e3 100644
--- a/net/samba3/files/samba.sh.sample
+++ b/net/samba3/files/samba.sh.sample
@@ -42,7 +42,7 @@ fi
if test -n ${samba_enable:-""} && checkyesno samba_enable; then
nmbd_enable=${nmbd_enable:-"YES"}
smbd_enable=${smbd_enable:-"YES"}
-%%WINBIND%% # Check, that winbind is actally configured
+%%WINBIND%% # Check that winbind is actually configured
%%WINBIND%% if [ "`egrep -i '(idmap.*uid|winbind.*uid)' ${samba_config} 2>/dev/null | egrep -v [\#\;]`" ]; then
%%WINBIND%% winbindd_enable="YES"
%%WINBIND%% fi
diff --git a/net/samba3/files/smb.conf.default b/net/samba3/files/smb.conf.default
index 317d7131a00b..e85a61724d2c 100644
--- a/net/samba3/files/smb.conf.default
+++ b/net/samba3/files/smb.conf.default
@@ -154,10 +154,16 @@
# via DNS nslookups. The default is NO.
dns proxy = no
-# charset settings
-; display charset = ASCII
-; unix charset = ASCII
-; dos charset = ASCII
+# Charset settings
+; display charset = koi8-r
+; unix charset = koi8-r
+; dos charset = cp866
+
+# Use extended attributes to store file modes
+; store dos attributes = yes
+; map hidden = no
+; map system = no
+; map archive = no
# These scripts are used on a domain controller or stand-alone
# machine to add or delete corresponding unix accounts