From 902d4a647a88d1def09d5b1eacb06ab1561f3dec Mon Sep 17 00:00:00 2001 From: Gerald Carter Date: Mon, 2 Feb 2004 01:46:30 +0000 Subject: [PATCH] janitor duty (merges from 3.0) and cleanup compiler warning on SuSE 9 in the end mapper code --- examples/misc/modify_samba_config.pl | 2 +- packaging/Fedora/makerpms.sh.tmpl | 3 +- packaging/Fedora/samba.pamd | 6 +- packaging/Fedora/samba.spec.tmpl | 1376 ++++++++++------------------------ packaging/Fedora/smb.conf | 286 +++++++ packaging/Fedora/smb.init | 8 +- packaging/Fedora/smbusers | 3 + packaging/Fedora/winbind.init | 6 +- packaging/RedHat/samba.spec.tmpl | 201 ++--- packaging/SuSE/samba3.spec | 1 + source/groupdb/mapping.c | 74 +- source/nsswitch/winbind_nss_linux.c | 138 ++++ source/nsswitch/winbindd_group.c | 4 +- source/rpc_parse/parse_epmapper.c | 96 +-- swat/lang/ja/help/welcome.html | 155 ++-- 15 files changed, 1106 insertions(+), 1253 deletions(-) rewrite packaging/Fedora/samba.spec.tmpl (69%) create mode 100644 packaging/Fedora/smb.conf create mode 100644 packaging/Fedora/smbusers rewrite swat/lang/ja/help/welcome.html (99%) diff --git a/examples/misc/modify_samba_config.pl b/examples/misc/modify_samba_config.pl index eb997f9b0c8..ad958625d66 100755 --- a/examples/misc/modify_samba_config.pl +++ b/examples/misc/modify_samba_config.pl @@ -66,7 +66,7 @@ while () { ## check for a param = value if ($_ =~ /=/) { - ($param, $value) = split (/=/, $_); + ($param, $value) = split (/=/, $_,2); $param =~ s/./\l$&/g; $param =~ s/\s+//g; $value =~ s/^\s+//; diff --git a/packaging/Fedora/makerpms.sh.tmpl b/packaging/Fedora/makerpms.sh.tmpl index 46ef4b63537..361d8418761 100644 --- a/packaging/Fedora/makerpms.sh.tmpl +++ b/packaging/Fedora/makerpms.sh.tmpl @@ -46,7 +46,8 @@ esac ## for file in samba.pamd samba.sysconfig samba.spec \ smb.init swat.desktop filter-requires-samba.sh \ - samba.log samba.xinetd smbprint winbind.init + samba.log samba.xinetd smbprint winbind.init \ + smb.conf smbusers do cp -p $file ${SRCDIR} diff --git a/packaging/Fedora/samba.pamd b/packaging/Fedora/samba.pamd index d8a27ff08f9..f88aae628c2 100644 --- a/packaging/Fedora/samba.pamd +++ b/packaging/Fedora/samba.pamd @@ -1,2 +1,4 @@ -auth required /lib/security/pam_stack.so service=system-auth -account required /lib/security/pam_stack.so service=system-auth +auth required /lib/security/pam_stack.so service=system-auth +session required /lib/security/pam_stack.so service=system-auth +account required /lib/security/pam_stack.so service=system-auth +password required /lib/security/pam_stack.so service=system-auth diff --git a/packaging/Fedora/samba.spec.tmpl b/packaging/Fedora/samba.spec.tmpl dissimilarity index 69% index 51e68dfea2d..ae6f95c9005 100644 --- a/packaging/Fedora/samba.spec.tmpl +++ b/packaging/Fedora/samba.spec.tmpl @@ -1,978 +1,398 @@ -%define initdir %{_sysconfdir}/rc.d/init.d -%define auth %(test -f /etc/pam.d/system-auth && echo /etc/pam.d/system-auth || echo) - -Summary: The Samba SMB server. -Name: samba -Version: PVERSION -Release: PRELEASE -License: GNU GPL Version 2 -Group: System Environment/Daemons -URL: http://www.samba.org/ - -Source: ftp://www.samba.org/pub/samba/%{name}-%{version}.tar.bz2 - -# Red Hat specific replacement-files -Source1: samba.log -Source2: samba.xinetd -Source3: swat.desktop -Source4: samba.sysconfig -Source5: smb.init -Source6: samba.pamd -Source7: smbprint -Source8: winbind.init - -# Don't depend on Net::LDAP -Source999: filter-requires-samba.sh - -# generic patches - -Requires: pam >= 0.64 %{auth} samba-common = %{version} -Requires: logrotate >= 3.4 initscripts >= 5.54-1 -BuildRoot: %{_tmppath}/%{name}-%{version}-root -Prereq: /sbin/chkconfig /bin/mktemp /usr/bin/killall -Prereq: fileutils sed /etc/init.d -BuildRequires: pam-devel, readline-devel, ncurses-devel, fileutils, libacl-devel, openldap-devel, krb5-devel - - -# Working around perl dependency problem from docs -%define __perl_requires %{SOURCE999} - -%description -Samba is the protocol by which a lot of PC-related machines share -files, printers, and other information (such as lists of available -files and printers). The Windows NT, OS/2, and Linux operating systems -support this natively, and add-on packages can enable the same thing -for DOS, Windows, VMS, UNIX of all kinds, MVS, and more. This package -provides an SMB server that can be used to provide network services to -SMB (sometimes called "Lan Manager") clients. Samba uses NetBIOS over -TCP/IP (NetBT) protocols and does NOT need the NetBEUI (Microsoft Raw -NetBIOS frame) protocol. - -%package client -Summary: Samba (SMB) client programs. -Group: Applications/System -Requires: samba-common = %{version} -Obsoletes: smbfs - -%description client -The samba-client package provides some SMB clients to compliment the -built-in SMB filesystem in Linux. These clients allow access of SMB -shares and printing to SMB printers. - -%package common -Summary: Files used by both Samba servers and clients. -Group: Applications/System - -%description common -Samba-common provides files necessary for both the server and client -packages of Samba. - -%package swat -Summary: The Samba SMB server configuration program. -Group: Applications/System -Requires: samba = %{version} xinetd - -%description swat -The samba-swat package includes the new SWAT (Samba Web Administration -Tool), for remotely managing Samba's smb.conf file using your favorite -Web browser. - -%prep -%setup -q - -# copy Red Hat specific scripts -cp %{SOURCE5} packaging/Fedora/ -cp %{SOURCE6} packaging/Fedora/ -cp %{SOURCE7} packaging/Fedora/ -cp %{SOURCE8} packaging/Fedora/winbind.init - -%build - -cd source -%ifarch i386 sparc -RPM_OPT_FLAGS="$RPM_OPT_FLAGS -D_FILE_OFFSET_BITS=64" -%endif -%ifarch ia64 -libtoolize --copy --force # get it to recognize IA-64 -autoheader -autoconf -EXTRA="-D_LARGEFILE64_SOURCE" -%endif - -## run autogen if missing the configure script -if [ ! -f "configure" ]; then - ./autogen.sh -fi - -CFLAGS="$RPM_OPT_FLAGS" ./configure \ - --prefix=%{_prefix} \ - --localstatedir=/var \ - --sysconfdir=/etc \ - --with-privatedir=%{_sysconfdir}/samba \ - --with-fhs \ - --with-quotas \ - --with-smbmount \ - --with-pam \ - --with-pam_smbpass \ - --with-syslog \ - --with-utmp \ - --with-sambabook=%{_datadir}/swat/using_samba \ - --with-swatdir=%{_datadir}/swat \ - --with-libsmbclient \ - --with-acl-support -make showlayout -make proto -make %{?_smp_mflags} all nsswitch/libnss_wins.so debug2html - - -%install -rm -rf $RPM_BUILD_ROOT - -mkdir -p $RPM_BUILD_ROOT/sbin -mkdir -p $RPM_BUILD_ROOT/usr/{sbin,bin} -mkdir -p $RPM_BUILD_ROOT/%{initdir} -mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/{pam.d,logrotate.d} -mkdir -p $RPM_BUILD_ROOT/var/{log,spool,lib}/samba -mkdir -p $RPM_BUILD_ROOT/%{_datadir}/swat/using_samba -mkdir -p $RPM_BUILD_ROOT/%{_datadir}/samba/codepages - -cd source - -make DESTDIR=$RPM_BUILD_ROOT \ - install - -cd .. - -# Install other stuff -install -m644 packaging/RedHat/smb.conf $RPM_BUILD_ROOT%{_sysconfdir}/samba/smb.conf -install -m755 source/script/mksmbpasswd.sh $RPM_BUILD_ROOT%{_bindir} -install -m644 packaging/RedHat/smbusers $RPM_BUILD_ROOT/etc/samba/smbusers -install -m755 packaging/RedHat/smbprint $RPM_BUILD_ROOT%{_bindir} -install -m755 packaging/RedHat/smb.init $RPM_BUILD_ROOT%{initdir}/smb -install -m755 packaging/RedHat/winbind.init $RPM_BUILD_ROOT%{initdir}/winbind -ln -s ../..%{initdir}/smb $RPM_BUILD_ROOT%{_sbindir}/samba -install -m644 packaging/RedHat/samba.pamd.stack $RPM_BUILD_ROOT/etc/pam.d/samba -install -m644 $RPM_SOURCE_DIR/samba.log $RPM_BUILD_ROOT/etc/logrotate.d/samba -ln -s ../usr/bin/smbmount $RPM_BUILD_ROOT/sbin/mount.smb -## mount.smbfs is installed by Samba's Makefile -## ln -s ../usr/bin/smbmount $RPM_BUILD_ROOT/sbin/mount.smbfs -echo 127.0.0.1 localhost > $RPM_BUILD_ROOT%{_sysconfdir}/samba/lmhosts - -# pam_smbpass -mkdir -p $RPM_BUILD_ROOT/%{_lib}/security -mv source/bin/pam_smbpass.so $RPM_BUILD_ROOT/%{_lib}/security/pam_smbpass.so - -# winbind -mkdir -p $RPM_BUILD_ROOT/%{_lib}/security -install -m 755 source/nsswitch/pam_winbind.so $RPM_BUILD_ROOT/%{_lib}/security/pam_winbind.so -mkdir -p $RPM_BUILD_ROOT%{_libdir} -install -m 755 source/nsswitch/libnss_winbind.so $RPM_BUILD_ROOT/%{_lib}/libnss_winbind.so -ln -sf /%{_lib}/libnss_winbind.so $RPM_BUILD_ROOT%{_libdir}/libnss_winbind.so.2 -install -m 755 source/nsswitch/libnss_wins.so $RPM_BUILD_ROOT/%{_lib}/libnss_wins.so -ln -sf /%{_lib}/libnss_wins.so $RPM_BUILD_ROOT%{_libdir}/libnss_wins.so.2 - -# libsmbclient - -# make install puts libsmbclient.so in the wrong place on x86_64 -rm -f $RPM_BUILD_ROOT/usr/lib || true -mkdir -p $RPM_BUILD_ROOT%{_libdir} $RPM_BUILD_ROOT%{_includedir} -install -m 644 source/bin/libsmbclient.so $RPM_BUILD_ROOT%{_libdir}/libsmbclient.so -install -m 644 source/bin/libsmbclient.a $RPM_BUILD_ROOT%{_libdir}/libsmbclient.a -install -m 644 source/include/libsmbclient.h $RPM_BUILD_ROOT%{_includedir} - -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d -install -m644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d/swat - -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig -install -m644 %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/samba - -## -## Clean out man pages for tools not installed here -## -rm -f $RPM_BUILD_ROOT/%{_mandir}/man1/editreg.1* -rm -f $RPM_BUILD_ROOT%{_mandir}/man1/log2pcap.1* -rm -f $RPM_BUILD_ROOT%{_mandir}/man1/smbsh.1* -rm -f $RPM_BUILD_ROOT/%{_mandir}/man8/mount.cifs.8* - -%clean -rm -rf $RPM_BUILD_ROOT - -%post -/sbin/chkconfig --add smb - -%preun -if [ $1 = 0 ] ; then - /sbin/chkconfig --del smb - rm -rf /var/log/samba/* /var/cache/samba/* - /sbin/service smb stop >/dev/null 2>&1 -fi -exit 0 - -%postun -if [ "$1" -ge "1" ]; then - %{initdir}/smb condrestart >/dev/null 2>&1 -fi - -%post common -/sbin/chkconfig --add winbind -/sbin/ldconfig - -%preun common -if [ $1 = 0 ] ; then - /sbin/chkconfig --del winbind - /sbin/service winbind stop >/dev/null 2>&1 -fi -exit 0 - -%postun common -p /sbin/ldconfig - -%triggerpostun -- samba < 1.9.18p7 -if [ $1 != 0 ]; then - /sbin/chkconfig --add smb -fi - -%triggerpostun -- samba < 2.0.5a-3 -if [ $1 != 0 ]; then - [ ! -d /var/lock/samba ] && mkdir -m 0755 /var/lock/samba - [ ! -d /var/spool/samba ] && mkdir -m 1777 /var/spool/samba - chmod 644 /etc/services - [ -f /etc/inetd.conf ] && chmod 644 /etc/inetd.conf -fi - -%files -%defattr(-,root,root) -%doc README COPYING Manifest -%doc WHATSNEW.txt Roadmap -%doc docs -%doc examples/autofs examples/LDAP examples/libsmbclient examples/misc examples/printer-accounting -%doc examples/printing - -%attr(755,root,root) /%{_lib}/security/pam_smbpass.so -%{_sbindir}/smbd -%{_sbindir}/nmbd -# %{_bindir}/make_unicodemap -%{_bindir}/mksmbpasswd.sh -%{_bindir}/smbcontrol -%{_bindir}/smbstatus -# %{_bindir}/smbadduser -%{_bindir}/tdbbackup -%config(noreplace) %{_sysconfdir}/sysconfig/samba -%config(noreplace) %{_sysconfdir}/samba/smbusers -%attr(755,root,root) %config %{initdir}/smb -%config(noreplace) %{_sysconfdir}/logrotate.d/samba -%config(noreplace) %{_sysconfdir}/pam.d/samba -# %{_mandir}/man1/make_unicodemap.1* -%{_mandir}/man1/smbcontrol.1* -%{_mandir}/man1/smbstatus.1* -%{_mandir}/man5/smbpasswd.5* -%{_mandir}/man7/samba.7* -%{_mandir}/man7/Samba.7* -%{_mandir}/man8/nmbd.8* -%{_mandir}/man8/pdbedit.8* -%{_mandir}/man8/smbd.8* -%{_mandir}/man8/tdbbackup.8* -#%{_mandir}/ja/man1/smbstatus.1* -#%{_mandir}/ja/man5/smbpasswd.5* -#%{_mandir}/ja/man7/samba.7* -#%{_mandir}/ja/man8/smbd.8* -#%{_mandir}/ja/man8/nmbd.8* -%{_libdir}/samba/vfs - -%attr(0700,root,root) %dir /var/log/samba -%attr(1777,root,root) %dir /var/spool/samba - -%files swat -%defattr(-,root,root) -%config(noreplace) %{_sysconfdir}/xinetd.d/swat -%{_datadir}/swat -%{_sbindir}/swat -%{_mandir}/man8/swat.8* -#%{_mandir}/ja/man8/swat.8* -%attr(755,root,root) %{_libdir}/samba/*.msg - -%files client -%defattr(-,root,root) -/sbin/mount.smb -/sbin/mount.smbfs -%{_libdir}/samba/lowcase.dat -%{_libdir}/samba/upcase.dat -%{_libdir}/samba/valid.dat -%{_bindir}/rpcclient -%{_bindir}/smbcacls -%{_bindir}/smbmount -%{_bindir}/smbmnt -%{_bindir}/smbumount -%{_bindir}/findsmb -%{_mandir}/man8/smbmnt.8* -%{_mandir}/man8/smbmount.8* -%{_mandir}/man8/smbumount.8* -%{_mandir}/man8/smbspool.8* -%{_bindir}/nmblookup -%{_bindir}/smbclient -%{_bindir}/smbprint -%{_bindir}/smbspool -%{_bindir}/smbtar -%{_bindir}/net -%{_bindir}/smbtree -%{_mandir}/man1/findsmb.1* -%{_mandir}/man1/nmblookup.1* -%{_mandir}/man1/rpcclient.1* -%{_mandir}/man1/smbcacls.1* -%{_mandir}/man1/smbclient.1* -%{_mandir}/man1/smbtar.1* -%{_mandir}/man1/smbtree.1* -%{_mandir}/man8/net.8* -#%{_mandir}/ja/man1/smbtar.1* -#%{_mandir}/ja/man1/smbclient.1* -#%{_mandir}/ja/man1/nmblookup.1* - -%files common -%defattr(-,root,root) -/%{_lib}/libnss_wins.so.* -/%{_lib}/libnss_winbind.so.* -/%{_lib}/security/pam_winbind.so -%{_libdir}/libsmbclient.a -%{_libdir}/libsmbclient.so -%{_libdir}/samba/charset/CP*.so -%{_includedir}/libsmbclient.h -%{_bindir}/testparm -%{_bindir}/testprns -%{_bindir}/smbpasswd -# %{_bindir}/make_printerdef -%{_bindir}/wbinfo -# %{_bindir}/editreg -%{_bindir}/ntlm_auth -%{_bindir}/pdbedit -%{_bindir}/profiles -%{_bindir}/smbcquotas -#%{_bindir}/vfstest -%{_sbindir}/winbindd -%dir /var/cache/samba -%attr(750,root,root) %dir /var/cache/samba/winbindd_privileged -%config(noreplace) %{_sysconfdir}/samba/smb.conf -%config(noreplace) %{_sysconfdir}/samba/lmhosts -%dir %{_datadir}/samba -%dir %{_datadir}/samba/codepages -%dir %{_sysconfdir}/samba -%{initdir}/winbind -# %{_datadir}/samba/codepages/* -# %{_mandir}/man1/make_smbcodepage.1* -%{_mandir}/man1/ntlm_auth.1* -%{_mandir}/man1/profiles.1* -%{_mandir}/man1/smbcquotas.1* -%{_mandir}/man1/testparm.1* -%{_mandir}/man1/testprns.1* -%{_mandir}/man5/smb.conf.5* -%{_mandir}/man5/lmhosts.5* -%{_mandir}/man8/smbpasswd.8* -%{_mandir}/man1/wbinfo.1* -%{_mandir}/man8/winbindd.8* -%{_mandir}/man1/vfstest.1* - -# #%lang(ja) %{_mandir}/ja/man1/make_smbcodepage.1* -#%lang(ja) %{_mandir}/ja/man1/testparm.1* -#%lang(ja) %{_mandir}/ja/man1/testprns.1* -#%lang(ja) %{_mandir}/ja/man5/smb.conf.5* -#%lang(ja) %{_mandir}/ja/man5/lmhosts.5* -#%lang(ja) %{_mandir}/ja/man8/smbpasswd.8* - -%changelog -* Thu Sep 25 2003 Jay Fenlason 3.0.0-15 -- New 3.0.0 final release -- merge nmbd-netbiosname and testparm patches from 3E branch -- updated the -logfiles patch to work against 3.0.0 -- updated the pie patch -- update the VERSION file during build -- use make -j if avaliable -- merge the winbindd_privileged change from 3E -- merge the "rm /usr/lib" patch that allows Samba to build on 64-bit - platforms despite the broken Makefile - -* Mon Aug 18 2003 Jay Fenlason -- Merge from samba-3E-branch after samba-3.0.0rc1 was released - -* Wed Jul 23 2003 Jay Fenlason 3.0.0-3beta3 -- Merge from 3.0.0-2beta3.3E -- (Correct log file names (#100981).) -- (Fix pidfile directory in samab.log) -- (Remove obsolete samba-3.0.0beta2.tar.bz2.md5 file) -- (Move libsmbclient to the -common package (#99449)) - -* Tue Jun 22 2003 Nalin Dahyabhai 2.2.8a-4 -- rebuild - -* Wed Jun 04 2003 Elliot Lee -- rebuilt - -* Wed May 28 2003 Jay Fenlason 2.2.8a-2 -- add libsmbclient.so for gnome-vfs-extras -- Edit specfile to specify /var/run for pid files -- Move /tmp/.winbindd/socket to /var/run/winbindd/socket - -* Wed May 14 2003 Florian La Roche -- add proper ldconfig calls - -* Thu Apr 24 2003 Jay Fenlason 2.2.8a-1 -- upgrade to 2.2.8a -- remove old .md5 files -- add "pid directory = /var/run" to the smb.conf file. Fixes #88495 -- Patch from jra@dp.samba.org to fix a delete-on-close regression - -* Mon Mar 24 2003 Jay Fenlason 2.2.8-0 -- Upgrade to 2.2.8 -- removed commented out patches. -- removed old patches and .md5 files from the repository. -- remove duplicate /sbin/chkconfig --del winbind which causes - warnings when removing samba. -- Fixed minor bug in smbprint that causes it to fail when called with - more than 10 parameters: the accounting file (and spool directory - derived from it) were being set wrong due to missing {}. This closes - bug #86473. -- updated smb.conf patch, includes new defaults to close bug #84822. - -* Mon Feb 24 2003 Elliot Lee -- rebuilt - -* Thu Feb 20 2003 Jonathan Blandford 2.2.7a-5 -- remove swat.desktop file - -* Thu Feb 20 2003 Nalin Dahyabhai 2.2.7a-4 -- relink libnss_wins.so with SHLD="%{__cc} -lnsl" to force libnss_wins.so to - link with libnsl, avoiding unresolved symbol errors on functions in libnsl - -* Mon Feb 10 2003 Jay Fenlason 2.2.7a-3 -- edited spec file to put .so files in the correct directories - on 64-bit platforms that have 32-bit compatability issues - (sparc64, x86_64, etc). This fixes bugzilla #83782. -- Added samba-2.2.7a-error.patch from twaugh. This fixes - bugzilla #82454. - -* Wed Jan 22 2003 Tim Powers -- rebuilt - -* Thu Jan 9 2003 Jay Fenlason 2.2.7a-1 -- Update to 2.2.7a -- Change default printing system to CUPS -- Turn on pam_smbpass -- Turn on msdfs - -* Sat Jan 4 2003 Jeff Johnson 2.2.7-5 -- use internal dep generator. - -* Sat Dec 14 2002 Tim Powers 2.2.7-4 -- don't use rpms internal dep generator - -* Mon Dec 02 2002 Elliot Lee 2.2.7-3 -- Fix missing doc files. -- Fix multilib issues - -* Wed Nov 20 2002 Bill Nottingham 2.2.7-2 -- update to 2.2.7 -- add patch for LFS in smbclient () - -* Wed Aug 28 2002 Trond Eivind Glomsrød 2.2.5-10 -- logrotate fixes (#65007) - -* Mon Aug 26 2002 Trond Eivind Glomsrød 2.2.5-9 -- /usr/lib was used in place of %%{_libdir} in three locations (#72554) - -* Mon Aug 5 2002 Trond Eivind Glomsrød 2.2.5-8 -- Initscript fix (#70720) - -* Fri Jul 26 2002 Trond Eivind Glomsrød 2.2.5-7 -- Enable VFS support and compile the "recycling" module (#69796) -- more selective includes of the examples dir - -* Tue Jul 23 2002 Trond Eivind Glomsrød 2.2.5-6 -- Fix the lpq parser for better handling of LPRng systems (#69352) - -* Tue Jul 23 2002 Trond Eivind Glomsrød 2.2.5-5 -- desktop file fixes (#69505) - -* Wed Jun 26 2002 Trond Eivind Glomsrød 2.2.5-4 -- Enable ACLs - -* Tue Jun 25 2002 Trond Eivind Glomsrød 2.2.5-3 -- Make it not depend on Net::LDAP - those are doc files and examples - -* Fri Jun 21 2002 Tim Powers -- automated rebuild - -* Thu Jun 20 2002 Trond Eivind Glomsrød 2.2.5-1 -- 2.2.5 - -* Fri Jun 14 2002 Trond Eivind Glomsrød 2.2.4-5 -- Move the post/preun of winbind into the -common subpackage, - where the script is (#66128) - -* Tue Jun 4 2002 Trond Eivind Glomsrød 2.2.4-4 -- Fix pidfile locations so it runs properly again (2.2.4 - added a new directtive - #65007) - -* Thu May 23 2002 Tim Powers -- automated rebuild - -* Tue May 14 2002 Trond Eivind Glomsrød 2.2.4-2 -- Fix #64804 - -* Thu May 9 2002 Trond Eivind Glomsrød 2.2.4-1 -- 2.2.4 -- Removed some zero-length and CVS internal files -- Make it build - -* Wed Apr 10 2002 Trond Eivind Glomsrød 2.2.3a-6 -- Don't use /etc/samba.d in smbadduser, it should be /etc/samba - -* Thu Apr 4 2002 Trond Eivind Glomsrød 2.2.3a-5 -- Add libsmbclient.a w/headerfile for KDE (#62202) - -* Tue Mar 26 2002 Trond Eivind Glomsrød 2.2.3a-4 -- Make the logrotate script look the correct place for the pid files - -* Thu Mar 14 2002 Nalin Dahyabhai 2.2.3a-3 -- include interfaces.o in pam_smbpass.so, which needs symbols from interfaces.o - (patch posted to samba-list by Ilia Chipitsine) - -* Thu Feb 21 2002 Trond Eivind Glomsrød 2.2.3a-2 -- Rebuild - -* Thu Feb 7 2002 Trond Eivind Glomsrød 2.2.3a-1 -- 2.2.3a - -* Mon Feb 4 2002 Trond Eivind Glomsrød 2.2.3-1 -- 2.2.3 - -* Thu Nov 29 2001 Trond Eivind Glomsrød 2.2.2-8 -- New pam configuration file for samba - -* Tue Nov 27 2001 Trond Eivind Glomsrød 2.2.2-7 -- Enable PAM session controll and password sync - -* Tue Nov 13 2001 Trond Eivind Glomsrød 2.2.2-6 -- Move winbind files to samba-common. Add separate initscript for - winbind -- Fixes for winbind - protect global variables with mutex, use - more secure getenv - -* Thu Nov 8 2001 Trond Eivind Glomsrød 2.2.2-5 -- Teach smbadduser about "getent passwd" -- Fix more pid-file references -- Add (conditional) winbindd startup to the initscript, configured in - /etc/sysconfig/samba - -* Wed Nov 7 2001 Trond Eivind Glomsrød 2.2.2-4 -- Fix pid-file reference in logrotate script -- include pam and nss modules for winbind - -* Mon Nov 5 2001 Trond Eivind Glomsrød 2.2.2-3 -- Add "--with-utmp" to configure options (#55372) -- Include winbind, pam_smbpass.so, rpcclient and smbcacls -- start using /var/cache/samba, we need to keep state and there is - more than just locks involved - -* Sat Nov 03 2001 Florian La Roche 2.2.2-2 -- add "reload" to the usage string in the startup script - -* Mon Oct 15 2001 Trond Eivind Glomsrød 2.2.2-1 -- 2.2.2 - -* Tue Sep 18 2001 Trond Eivind Glomsrød 2.2.1a-5 -- Add patch from Jeremy Allison to fix IA64 alignment problems (#51497) - -* Mon Aug 13 2001 Trond Eivind Glomsrød -- Don't include smbpasswd in samba, it's in samba-common (#51598) -- Add a disabled "obey pam restrictions" statement - it's not - active, as we use encrypted passwords, but if the admin turns - encrypted passwords off the choice is available. (#31351) - -* Wed Aug 8 2001 Trond Eivind Glomsrød -- Use /var/cache/samba instead of /var/lock/samba -- Remove "domain controller" keyword from smb.conf, it's - deprecated (from #13704) -- Sync some examples with smb.conf.default -- Fix password synchronization (#16987) - -* Fri Jul 20 2001 Trond Eivind Glomsrød -- Tweaks of BuildRequires (#49581) - -* Wed Jul 11 2001 Trond Eivind Glomsrød -- 2.2.1a bugfix release - -* Tue Jul 10 2001 Trond Eivind Glomsrød -- 2.2.1, which should work better for XP - -* Sat Jun 23 2001 Trond Eivind Glomsrød -- 2.2.0a security fix -- Mark lograte and pam configuration files as noreplace - -* Fri Jun 22 2001 Trond Eivind Glomsrød -- Add the /etc/samba directory to samba-common - -* Thu Jun 21 2001 Trond Eivind Glomsrød -- Add improvements to the smb.conf as suggested in #16931 - -* Tue Jun 19 2001 Trond Eivind Glomsrød - (these changes are from the non-head version) -- Don't include /usr/sbin/samba, it's the same as the initscript -- unset TMPDIR, as samba can't write into a TMPDIR owned - by root (#41193) -- Add pidfile: lines for smbd and nmbd and a config: line - in the initscript (#15343) -- don't use make -j -- explicitly include /usr/share/samba, not just the files in it - -* Tue Jun 19 2001 Bill Nottingham -- mount.smb/mount.smbfs go in /sbin, *not* %%{_sbindir} - -* Fri Jun 8 2001 Preston Brown -- enable encypted passwords by default - -* Thu Jun 7 2001 Helge Deller -- build as 2.2.0-1 release -- skip the documentation-directories docbook, manpages and yodldocs -- don't include *.sgml documentation in package -- moved codepage-directory to /usr/share/samba/codepages -- make it compile with glibc-2.2.3-10 and kernel-headers-2.4.2-2 - -* Mon May 21 2001 Helge Deller -- updated to samba 2.2.0 -- moved codepages to %{_datadir}/samba/codepages -- use all available CPUs for building rpm packages -- use %{_xxx} defines at most places in spec-file -- "License:" replaces "Copyright:" -- dropped excludearch sparc -- de-activated japanese patches 100 and 200 for now - (they need to be fixed and tested wth 2.2.0) -- separated swat.desktop file from spec-file and added - german translations -- moved /etc/sysconfig/samba to a separate source-file -- use htmlview instead of direct call to netscape in - swat.desktop-file - -* Mon May 7 2001 Bill Nottingham -- device-remove security fix again () - -* Fri Apr 20 2001 Bill Nottingham -- fix tempfile security problems, officially () -- update to 2.0.8 - -* Sun Apr 8 2001 Bill Nottingham -- turn of SSL, kerberos - -* Thu Apr 5 2001 Bill Nottingham -- fix tempfile security problems (patch from ) - -* Thu Mar 29 2001 Bill Nottingham -- fix quota support, and quotas with the 2.4 kernel (#31362, #33915) - -* Mon Mar 26 2001 Nalin Dahyabhai -- tweak the PAM code some more to try to do a setcred() after initgroups() -- pull in all of the optflags on i386 and sparc -- don't explicitly enable Kerberos support -- it's only used for password - checking, and if PAM is enabled it's a no-op anyway - -* Mon Mar 5 2001 Tim Waugh -- exit successfully from preun script (bug #30644). - -* Fri Mar 2 2001 Nalin Dahyabhai -- rebuild in new environment - -* Wed Feb 14 2001 Bill Nottingham -- updated japanese stuff (#27683) - -* Fri Feb 9 2001 Bill Nottingham -- fix trigger (#26859) - -* Wed Feb 7 2001 Bill Nottingham -- add i18n support, japanese patch (#26253) - -* Wed Feb 7 2001 Trond Eivind Glomsrød -- i18n improvements in initscript (#26537) - -* Wed Jan 31 2001 Bill Nottingham -- put smbpasswd in samba-common (#25429) - -* Wed Jan 24 2001 Bill Nottingham -- new i18n stuff - -* Sun Jan 21 2001 Bill Nottingham -- rebuild - -* Thu Jan 18 2001 Bill Nottingham -- i18n-ize initscript -- add a sysconfig file for daemon options (#23550) -- clarify smbpasswd man page (#23370) -- build with LFS support (#22388) -- avoid extraneous pam error messages (#10666) -- add Urban Widmark's bug fixes for smbmount (#19623) -- fix setgid directory modes (#11911) -- split swat into subpackage (#19706) - -* Wed Oct 25 2000 Nalin Dahyabhai -- set a default CA certificate path in smb.conf (#19010) -- require openssl >= 0.9.5a-20 to make sure we have a ca-bundle.crt file - -* Mon Oct 16 2000 Bill Nottingham -- fix swat only_from line (#18726, others) -- fix attempt to write outside buildroot on install (#17943) - -* Mon Aug 14 2000 Bill Nottingham -- add smbspool back in (#15827) -- fix absolute symlinks (#16125) - -* Sun Aug 6 2000 Philipp Knirsch -- bugfix for smbadduser script (#15148) - -* Mon Jul 31 2000 Matt Wilson -- patch configure.ing (patch11) to disable cups test -- turn off swat by default - -* Fri Jul 28 2000 Bill Nottingham -- fix condrestart stuff - -* Fri Jul 21 2000 Bill Nottingham -- add copytruncate to logrotate file (#14360) -- fix init script (#13708) - -* Sat Jul 15 2000 Bill Nottingham -- move initscript back -- remove 'Using Samba' book from %%doc -- move stuff to /etc/samba (#13708) -- default configuration tweaks (#13704) -- some logrotate tweaks - -* Wed Jul 12 2000 Prospector -- automatic rebuild - -* Tue Jul 11 2000 Bill Nottingham -- fix logrotate script (#13698) - -* Thu Jul 6 2000 Bill Nottingham -- fix initscripts req (prereq /etc/init.d) - -* Wed Jul 5 2000 Than Ngo -- add initdir macro to handle the initscript directory -- add a new macro to handle /etc/pam.d/system-auth - -* Thu Jun 29 2000 Nalin Dahyabhai -- enable Kerberos 5 and SSL support -- patch for duplicate profile.h headers - -* Thu Jun 29 2000 Bill Nottingham -- fix init script - -* Tue Jun 27 2000 Bill Nottingham -- rename samba logs (#11606) - -* Mon Jun 26 2000 Bill Nottingham -- initscript munging - -* Fri Jun 16 2000 Bill Nottingham -- configure the swat stuff usefully -- re-integrate some specfile tweaks that got lost somewhere - -* Thu Jun 15 2000 Bill Nottingham -- rebuild to get rid of cups dependency - -* Wed Jun 14 2000 Nalin Dahyabhai -- tweak logrotate configurations to use the PID file in /var/lock/samba - -* Sun Jun 11 2000 Bill Nottingham -- rebuild in new environment - -* Thu Jun 1 2000 Nalin Dahyabhai -- change PAM setup to use system-auth - -* Mon May 8 2000 Bill Nottingham -- fixes for ia64 - -* Sat May 6 2000 Bill Nottingham -- switch to %%configure - -* Wed Apr 26 2000 Nils Philippsen -- version 2.0.7 - -* Sun Mar 26 2000 Florian La Roche -- simplify preun - -* Thu Mar 16 2000 Bill Nottingham -- fix yp_get_default_domain in autoconf -- only link against readline for smbclient -- fix log rotation (#9909) - -* Fri Feb 25 2000 Bill Nottingham -- fix trigger, again. - -* Mon Feb 7 2000 Bill Nottingham -- fix trigger. - -* Fri Feb 4 2000 Bill Nottingham -- turn on quota support - -* Mon Jan 31 2000 Cristian Gafton -- rebuild to fox dependencies -- man pages are compressed - -* Fri Jan 21 2000 Bill Nottingham -- munge post scripts slightly - -* Wed Jan 19 2000 Bill Nottingham -- turn on mmap again. Wheee. -- ship smbmount on alpha - -* Mon Dec 6 1999 Bill Nottingham -- turn off mmap. ;) - -* Wed Dec 1 1999 Bill Nottingham -- change /var/log/samba to 0700 -- turn on mmap support - -* Thu Nov 11 1999 Bill Nottingham -- update to 2.0.6 - -* Fri Oct 29 1999 Bill Nottingham -- add a %defattr for -common - -* Tue Oct 5 1999 Bill Nottingham -- shift some files into -client -- remove /home/samba from package. - -* Tue Sep 28 1999 Bill Nottingham -- initscript oopsie. killproc -HUP, not other way around. - -* Sat Sep 26 1999 Bill Nottingham -- script cleanups. Again. - -* Wed Sep 22 1999 Bill Nottingham -- add a patch to fix dropped reconnection attempts - -* Mon Sep 6 1999 Jeff Johnson -- use cp rather than mv to preserve /etc/services perms (#4938 et al). -- use mktemp to generate /etc/tmp.XXXXXX file name. -- add prereqs on sed/mktemp/killall (need to move killall to /bin). -- fix trigger syntax (i.e. "samba < 1.9.18p7" not "samba < samba-1.9.18p7") - -* Mon Aug 30 1999 Bill Nottingham -- sed "s|nawk|gawk|" /usr/bin/convert_smbpasswd - -* Sat Aug 21 1999 Bill Nottingham -- fix typo in mount.smb - -* Fri Aug 20 1999 Bill Nottingham -- add a %trigger to work around (sort of) broken scripts in - previous releases - -* Mon Aug 16 1999 Bill Nottingham -- initscript munging - -* Mon Aug 9 1999 Bill Nottingham -- add domain parsing to mount.smb - -* Fri Aug 6 1999 Bill Nottingham -- add a -common package, shuffle files around. - -* Fri Jul 23 1999 Bill Nottingham -- add a chmod in %postun so /etc/services & inetd.conf don't become unreadable - -* Wed Jul 21 1999 Bill Nottingham -- update to 2.0.5 -- fix mount.smb - smbmount options changed again......... -- fix postun. oops. -- update some stuff from the samba team's spec file. - -* Fri Jun 18 1999 Bill Nottingham -- split off clients into separate package -- don't run samba by default - -* Mon Jun 14 1999 Bill Nottingham -- fix one problem with mount.smb script -- fix smbpasswd on sparc with a really ugly kludge - -* Thu Jun 10 1999 Dale Lovelace -- fixed logrotate script - -* Tue May 25 1999 Bill Nottingham -- turn of 64-bit locking on 32-bit platforms - -* Thu May 20 1999 Bill Nottingham -- so many releases, so little time -- explicitly uncomment 'printing = bsd' in sample config - -* Tue May 18 1999 Bill Nottingham -- update to 2.0.4a -- fix mount.smb arg ordering - -* Fri Apr 16 1999 Bill Nottingham -- go back to stop/start for restart (-HUP didn't work in testing) - -* Fri Mar 26 1999 Bill Nottingham -- add a mount.smb to make smb mounting a little easier. -- smb filesystems apparently don't work on alpha. Oops. - -* Thu Mar 25 1999 Bill Nottingham -- always create codepages - -* Tue Mar 23 1999 Bill Nottingham -- logrotate changes - -* Sun Mar 21 1999 Cristian Gafton -- auto rebuild in the new build environment (release 3) - -* Fri Mar 19 1999 Preston Brown -- updated init script to use graceful restart (not stop/start) - -* Tue Mar 9 1999 Bill Nottingham -- update to 2.0.3 - -* Thu Feb 18 1999 Bill Nottingham -- update to 2.0.2 - -* Mon Feb 15 1999 Bill Nottingham -- swat swat - -* Tue Feb 9 1999 Bill Nottingham -- fix bash2 breakage in post script - -* Fri Feb 5 1999 Bill Nottingham -- update to 2.0.0 - -* Mon Oct 12 1998 Cristian Gafton -- make sure all binaries are stripped - -* Thu Sep 17 1998 Jeff Johnson -- update to 1.9.18p10. -- fix %triggerpostun. - -* Tue Jul 07 1998 Erik Troan -- updated postun triggerscript to check $0 -- clear /etc/codepages from %preun instead of %postun - -* Mon Jun 08 1998 Erik Troan -- made the %postun script a tad less agressive; no reason to remove - the logs or lock file (after all, if the lock file is still there, - samba is still running) -- the %postun and %preun should only exectute if this is the final - removal -- migrated %triggerpostun from Red Hat's samba package to work around - packaging problems in some Red Hat samba releases - -* Sun Apr 26 1998 John H Terpstra -- minor tidy up in preparation for release of 1.9.18p5 -- added findsmb utility from SGI package - -* Wed Mar 18 1998 John H Terpstra -- Updated version and codepage info. -- Release to test name resolve order - -* Sat Jan 24 1998 John H Terpstra -- Many optimisations (some suggested by Manoj Kasichainula -- Use of chkconfig in place of individual symlinks to /etc/rc.d/init/smb -- Compounded make line -- Updated smb.init restart mechanism -- Use compound mkdir -p line instead of individual calls to mkdir -- Fixed smb.conf file path for log files -- Fixed smb.conf file path for incoming smb print spool directory -- Added a number of options to smb.conf file -- Added smbadduser command (missed from all previous RPMs) - Doooh! -- Added smbuser file and smb.conf file updates for username map - +%define initdir %{_sysconfdir}/rc.d/init.d +%define auth %(test -f /etc/pam.d/system-auth && echo /etc/pam.d/system-auth || echo) + +Summary: The Samba SMB server. +Name: samba +Version: PVERSION +Release: PRELEASE +License: GNU GPL Version 2 +Group: System Environment/Daemons +URL: http://www.samba.org/ + +Source: ftp://www.samba.org/pub/samba/%{name}-%{version}.tar.bz2 + +# Red Hat specific replacement-files +Source1: samba.log +Source2: samba.xinetd +Source4: samba.sysconfig +Source5: smb.init +Source6: winbind.init +Source7: samba.pamd +Source8: smbprint +Source9: smbusers +Source10: smb.conf + +# Don't depend on Net::LDAP +Source999: filter-requires-samba.sh + +# generic patches + +Requires: pam >= 0.64 %{auth} samba-common = %{version} +Requires: logrotate >= 3.4 initscripts >= 5.54-1 +BuildRoot: %{_tmppath}/%{name}-%{version}-root +Prereq: /sbin/chkconfig /bin/mktemp /usr/bin/killall +Prereq: fileutils sed /etc/init.d +BuildRequires: pam-devel, readline-devel, ncurses-devel, fileutils, libacl-devel, openldap-devel, krb5-devel + + +# Working around perl dependency problem from docs +%define __perl_requires %{SOURCE999} + +%description +Samba is the protocol by which a lot of PC-related machines share +files, printers, and other information (such as lists of available +files and printers). The Windows NT, OS/2, and Linux operating systems +support this natively, and add-on packages can enable the same thing +for DOS, Windows, VMS, UNIX of all kinds, MVS, and more. This package +provides an SMB server that can be used to provide network services to +SMB (sometimes called "Lan Manager") clients. Samba uses NetBIOS over +TCP/IP (NetBT) protocols and does NOT need the NetBEUI (Microsoft Raw +NetBIOS frame) protocol. + +%package client +Summary: Samba (SMB) client programs. +Group: Applications/System +Requires: samba-common = %{version} +Obsoletes: smbfs + +%description client +The samba-client package provides some SMB clients to compliment the +built-in SMB filesystem in Linux. These clients allow access of SMB +shares and printing to SMB printers. + +%package common +Summary: Files used by both Samba servers and clients. +Group: Applications/System + +%description common +Samba-common provides files necessary for both the server and client +packages of Samba. + +%package swat +Summary: The Samba SMB server configuration program. +Group: Applications/System +Requires: samba = %{version} xinetd + +%description swat +The samba-swat package includes the new SWAT (Samba Web Administration +Tool), for remotely managing Samba's smb.conf file using your favorite +Web browser. + +%prep +%setup -q + +# copy Red Hat specific scripts +cp %{SOURCE5} packaging/Fedora/ +cp %{SOURCE6} packaging/Fedora/ +cp %{SOURCE7} packaging/Fedora/ +cp %{SOURCE8} packaging/Fedora/winbind.init + +%build + +cd source +%ifarch i386 sparc +RPM_OPT_FLAGS="$RPM_OPT_FLAGS -D_FILE_OFFSET_BITS=64" +%endif +%ifarch ia64 +libtoolize --copy --force # get it to recognize IA-64 +autoheader +autoconf +EXTRA="-D_LARGEFILE64_SOURCE" +%endif + +## run autogen if missing the configure script +if [ ! -f "configure" ]; then + ./autogen.sh +fi + +CFLAGS="$RPM_OPT_FLAGS" ./configure \ + --prefix=%{_prefix} \ + --localstatedir=/var \ + --sysconfdir=/etc \ + --with-privatedir=%{_sysconfdir}/samba \ + --with-fhs \ + --with-quotas \ + --with-smbmount \ + --with-pam \ + --with-pam_smbpass \ + --with-syslog \ + --with-utmp \ + --with-sambabook=%{_datadir}/swat/using_samba \ + --with-swatdir=%{_datadir}/swat \ + --with-libsmbclient \ + --with-acl-support +make showlayout +make proto +make %{?_smp_mflags} all nsswitch/libnss_wins.so debug2html + + +%install +rm -rf $RPM_BUILD_ROOT + +mkdir -p $RPM_BUILD_ROOT/sbin +mkdir -p $RPM_BUILD_ROOT/usr/{sbin,bin} +mkdir -p $RPM_BUILD_ROOT/%{initdir} +mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/{pam.d,logrotate.d} +mkdir -p $RPM_BUILD_ROOT/var/{log,spool,lib}/samba +mkdir -p $RPM_BUILD_ROOT/%{_datadir}/swat/using_samba +mkdir -p $RPM_BUILD_ROOT/%{_datadir}/samba/codepages + +cd source + +make DESTDIR=$RPM_BUILD_ROOT \ + install + +cd .. + +# Install other stuff +install -m644 %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/samba/smb.conf +install -m644 %{SOURCE8} $RPM_BUILD_ROOT/etc/samba/smbusers +install -m755 %{SOURCE8} $RPM_BUILD_ROOT%{_bindir} +install -m644 %{SOURCE7} $RPM_BUILD_ROOT/etc/pam.d/samba +install -m644 %{SOURCE1} $RPM_BUILD_ROOT/etc/logrotate.d/samba +install -m755 source/script/mksmbpasswd.sh $RPM_BUILD_ROOT%{_bindir} + +install -m755 %{SOURCE5} $RPM_BUILD_ROOT%{initdir}/smb +install -m755 %{SOURCE6} $RPM_BUILD_ROOT%{initdir}/winbind +ln -s ../..%{initdir}/smb $RPM_BUILD_ROOT%{_sbindir}/samba +ln -s ../..%{initdir}/winbind $RPM_BUILD_ROOT%{_sbindir}/winbind + +ln -s ../usr/bin/smbmount $RPM_BUILD_ROOT/sbin/mount.smb +## Samba's Makefile is breaking this currently. Remove it and set our own +/bin/rm -f $RPM_BUILD_ROOT/sbin/mount.smbfs +ln -s ../usr/bin/smbmount $RPM_BUILD_ROOT/sbin/mount.smbfs + +echo 127.0.0.1 localhost > $RPM_BUILD_ROOT%{_sysconfdir}/samba/lmhosts + + +# pam_smbpass +mkdir -p $RPM_BUILD_ROOT/%{_lib}/security +mv source/bin/pam_smbpass.so $RPM_BUILD_ROOT/%{_lib}/security/pam_smbpass.so + +# winbind +mkdir -p $RPM_BUILD_ROOT/%{_lib}/security +install -m 755 source/nsswitch/pam_winbind.so $RPM_BUILD_ROOT/%{_lib}/security/pam_winbind.so +install -m 755 source/nsswitch/libnss_winbind.so $RPM_BUILD_ROOT/%{_lib}/libnss_winbind.so +install -m 755 source/nsswitch/libnss_wins.so $RPM_BUILD_ROOT/%{_lib}/libnss_wins.so +( cd $RPM_BUILD_ROOT/%{_lib}; + ln -sf libnss_winbind.so libnss_winbind.so.2; + ln -sf libnss_wins.so libnss_wins.so.2 ) + +# libsmbclient + +# make install puts libsmbclient.so in the wrong place on x86_64 +rm -f $RPM_BUILD_ROOT/usr/lib || true +mkdir -p $RPM_BUILD_ROOT%{_libdir} $RPM_BUILD_ROOT%{_includedir} +install -m 644 source/bin/libsmbclient.so $RPM_BUILD_ROOT%{_libdir}/libsmbclient.so +install -m 644 source/bin/libsmbclient.a $RPM_BUILD_ROOT%{_libdir}/libsmbclient.a +install -m 644 source/include/libsmbclient.h $RPM_BUILD_ROOT%{_includedir} + +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d +install -m644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d/swat + +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig +install -m644 %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/samba + +## +## Clean out man pages for tools not installed here +## +rm -f $RPM_BUILD_ROOT/%{_mandir}/man1/editreg.1* +rm -f $RPM_BUILD_ROOT%{_mandir}/man1/log2pcap.1* +rm -f $RPM_BUILD_ROOT%{_mandir}/man1/smbsh.1* +rm -f $RPM_BUILD_ROOT%{_mandir}/man1/smbget.1* +rm -f $RPM_BUILD_ROOT/%{_mandir}/man8/mount.cifs.8* + +%clean +rm -rf $RPM_BUILD_ROOT + +%post +/sbin/chkconfig --add smb + +%preun +if [ $1 = 0 ] ; then + /sbin/chkconfig --del smb + rm -rf /var/log/samba/* /var/cache/samba/* + /sbin/service smb stop >/dev/null 2>&1 +fi +exit 0 + +%postun +if [ "$1" -ge "1" ]; then + %{initdir}/smb condrestart >/dev/null 2>&1 +fi + + +%post swat +# Add swat entry to /etc/services if not already there. +if [ ! "`grep ^\s**swat /etc/services`" ]; then + echo 'swat 901/tcp # Add swat service used via inetd' >> /etc/services +fi + +%post common +/sbin/chkconfig --add winbind +/sbin/ldconfig + +%preun common +if [ $1 = 0 ] ; then + /sbin/chkconfig --del winbind + /sbin/service winbind stop >/dev/null 2>&1 +fi +exit 0 + +%postun common -p /sbin/ldconfig + +%triggerpostun -- samba < 1.9.18p7 +if [ $1 != 0 ]; then + /sbin/chkconfig --add smb +fi + +%triggerpostun -- samba < 2.0.5a-3 +if [ $1 != 0 ]; then + [ ! -d /var/lock/samba ] && mkdir -m 0755 /var/lock/samba + [ ! -d /var/spool/samba ] && mkdir -m 1777 /var/spool/samba + chmod 644 /etc/services + [ -f /etc/inetd.conf ] && chmod 644 /etc/inetd.conf +fi + +%files +%defattr(-,root,root) +%doc README COPYING Manifest +%doc WHATSNEW.txt Roadmap +%doc docs +%doc examples/autofs examples/LDAP examples/libsmbclient examples/misc examples/printer-accounting +%doc examples/printing + +%attr(755,root,root) /%{_lib}/security/pam_smbpass.so +%{_sbindir}/smbd +%{_sbindir}/nmbd +# %{_bindir}/make_unicodemap +%{_bindir}/mksmbpasswd.sh +%{_bindir}/smbcontrol +%{_bindir}/smbstatus +# %{_bindir}/smbadduser +%{_bindir}/tdbbackup +%config(noreplace) %{_sysconfdir}/sysconfig/samba +%config(noreplace) %{_sysconfdir}/samba/smbusers +%attr(755,root,root) %config %{initdir}/smb +%config(noreplace) %{_sysconfdir}/logrotate.d/samba +%config(noreplace) %{_sysconfdir}/pam.d/samba +# %{_mandir}/man1/make_unicodemap.1* +%{_mandir}/man1/smbcontrol.1* +%{_mandir}/man1/smbstatus.1* +%{_mandir}/man5/smbpasswd.5* +%{_mandir}/man7/samba.7* +%{_mandir}/man8/nmbd.8* +%{_mandir}/man8/pdbedit.8* +%{_mandir}/man8/smbd.8* +%{_mandir}/man8/tdbbackup.8* +#%{_mandir}/ja/man1/smbstatus.1* +#%{_mandir}/ja/man5/smbpasswd.5* +#%{_mandir}/ja/man7/samba.7* +#%{_mandir}/ja/man8/smbd.8* +#%{_mandir}/ja/man8/nmbd.8* +%{_libdir}/samba/vfs + +%attr(0700,root,root) %dir /var/log/samba +%attr(1777,root,root) %dir /var/spool/samba + +%files swat +%defattr(-,root,root) +%config(noreplace) %{_sysconfdir}/xinetd.d/swat +%{_datadir}/swat +%{_sbindir}/swat +%{_mandir}/man8/swat.8* +#%{_mandir}/ja/man8/swat.8* +%attr(755,root,root) %{_libdir}/samba/*.msg + +%files client +%defattr(-,root,root) +/sbin/mount.smb +/sbin/mount.smbfs +%{_libdir}/samba/lowcase.dat +%{_libdir}/samba/upcase.dat +%{_libdir}/samba/valid.dat +%{_bindir}/rpcclient +%{_bindir}/smbcacls +%{_bindir}/smbmount +%{_bindir}/smbmnt +%{_bindir}/smbumount +%{_bindir}/findsmb +%{_bindir}/tdbdump +%{_mandir}/man8/tdbdump.8* +%{_mandir}/man8/smbmnt.8* +%{_mandir}/man8/smbmount.8* +%{_mandir}/man8/smbumount.8* +%{_mandir}/man8/smbspool.8* +%{_bindir}/nmblookup +%{_bindir}/smbclient +%{_bindir}/smbprint +%{_bindir}/smbspool +%{_bindir}/smbtar +%{_bindir}/net +%{_bindir}/smbtree +%{_mandir}/man1/findsmb.1* +%{_mandir}/man1/nmblookup.1* +%{_mandir}/man1/rpcclient.1* +%{_mandir}/man1/smbcacls.1* +%{_mandir}/man1/smbclient.1* +%{_mandir}/man1/smbtar.1* +%{_mandir}/man1/smbtree.1* +%{_mandir}/man8/net.8* +#%{_mandir}/ja/man1/smbtar.1* +#%{_mandir}/ja/man1/smbclient.1* +#%{_mandir}/ja/man1/nmblookup.1* + +%files common +%defattr(-,root,root) +/%{_lib}/libnss_wins.so* +/%{_lib}/libnss_winbind.so* +/%{_lib}/security/pam_winbind.so +%{_libdir}/libsmbclient.a +%{_libdir}/libsmbclient.so +%{_libdir}/samba/charset/CP*.so +%{_includedir}/libsmbclient.h +%{_bindir}/testparm +%{_bindir}/testprns +%{_bindir}/smbpasswd +# %{_bindir}/make_printerdef +%{_bindir}/wbinfo +# %{_bindir}/editreg +%{_bindir}/ntlm_auth +%{_bindir}/pdbedit +%{_bindir}/profiles +%{_bindir}/smbcquotas +#%{_bindir}/vfstest +%{_sbindir}/winbindd +%config(noreplace) %{_sysconfdir}/samba/smb.conf +%config(noreplace) %{_sysconfdir}/samba/lmhosts +%dir %{_datadir}/samba +%dir %{_datadir}/samba/codepages +%dir %{_sysconfdir}/samba +%{initdir}/winbind +# %{_datadir}/samba/codepages/* +# %{_mandir}/man1/make_smbcodepage.1* +%{_mandir}/man1/ntlm_auth.1* +%{_mandir}/man1/profiles.1* +%{_mandir}/man1/smbcquotas.1* +%{_mandir}/man1/testparm.1* +%{_mandir}/man1/testprns.1* +%{_mandir}/man5/smb.conf.5* +%{_mandir}/man5/lmhosts.5* +%{_mandir}/man8/smbpasswd.8* +%{_mandir}/man1/wbinfo.1* +%{_mandir}/man8/winbindd.8* +%{_mandir}/man1/vfstest.1* + +# #%lang(ja) %{_mandir}/ja/man1/make_smbcodepage.1* +#%lang(ja) %{_mandir}/ja/man1/testparm.1* +#%lang(ja) %{_mandir}/ja/man1/testprns.1* +#%lang(ja) %{_mandir}/ja/man5/smb.conf.5* +#%lang(ja) %{_mandir}/ja/man5/lmhosts.5* +#%lang(ja) %{_mandir}/ja/man8/smbpasswd.8* + +%changelog +* Fri Jan 16 2004 Gerald (Jerry) Carter +- Removed ChangeLog entries since they are kept in CVS + + + diff --git a/packaging/Fedora/smb.conf b/packaging/Fedora/smb.conf new file mode 100644 index 00000000000..74806da16bb --- /dev/null +++ b/packaging/Fedora/smb.conf @@ -0,0 +1,286 @@ +# This is the main Samba configuration file. You should read the +# smb.conf(5) manual page in order to understand the options listed +# here. Samba has a huge number of configurable options (perhaps too +# many!) most of which are not shown in this example +# +# Any line which starts with a ; (semi-colon) or a # (hash) +# is a comment and is ignored. In this example we will use a # +# for commentry and a ; for parts of the config file that you +# may wish to enable +# +# NOTE: Whenever you modify this file you should run the command "testparm" +# to check that you have not made any basic syntactic errors. +# +#======================= Global Settings ===================================== +[global] + +# workgroup = NT-Domain-Name or Workgroup-Name + workgroup = MYGROUP + +# server string is the equivalent of the NT Description field + server string = Samba Server + +# This option is important for security. It allows you to restrict +# connections to machines which are on your local network. The +# following example restricts access to two C class networks and +# the "loopback" interface. For more examples of the syntax see +# the smb.conf man page +; hosts allow = 192.168.1. 192.168.2. 127. + +# if you want to automatically load your printer list rather +# than setting them up individually then you'll need this + printcap name = /etc/printcap + load printers = yes + +# It should not be necessary to spell out the print system type unless +# yours is non-standard. Currently supported print systems include: +# bsd, sysv, plp, lprng, aix, hpux, qnx +; printing = bsd + +# Uncomment this if you want a guest account, you must add this to /etc/passwd +# otherwise the user "nobody" is used +; guest account = pcguest + +# this tells Samba to use a separate log file for each machine +# that connects + log file = /var/log/samba/log.%m + +# Put a capping on the size of the log files (in Kb). + max log size = 50 + +# Security mode. Most people will want user level security. See +# security_level.txt for details. + security = user +# Use password server option only with security = server +; password server = + +# Password Level allows matching of _n_ characters of the password for +# all combinations of upper and lower case. +; password level = 8 +; username level = 8 + +# You may wish to use password encryption. Please read +# ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba documentation. +# Do not enable this option unless you have read those documents +; encrypt passwords = yes +; smb passwd file = /etc/samba/smbpasswd + +# The following are needed to allow password changing from Windows to +# update the Linux system password also. +# NOTE: Use these with 'encrypt passwords' and 'smb passwd file' above. +# NOTE2: You do NOT need these to allow workstations to change only +# the encrypted SMB passwords. They allow the Unix password +# to be kept in sync with the SMB password. +; unix password sync = Yes +; passwd program = /usr/bin/passwd %u +; passwd chat = *New*UNIX*password* %n\n *ReType*new*UNIX*password* %n\n *passwd:*all*authentication*tokens*updated*successfully* + +# Unix users can map to different SMB User names +; username map = /etc/samba/smbusers + +# Using the following line enables you to customise your configuration +# on a per machine basis. The %m gets replaced with the netbios name +# of the machine that is connecting +; include = /etc/samba/smb.conf.%m + +# Most people will find that this option gives better performance. +# See speed.txt and the manual pages for details + socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 + +# Configure Samba to use multiple interfaces +# If you have multiple network interfaces then you must list them +# here. See the man page for details. +; interfaces = 192.168.12.2/24 192.168.13.2/24 + +# Configure remote browse list synchronisation here +# request announcement to, or browse list sync from: +# a specific host or from / to a whole subnet (see below) +; remote browse sync = 192.168.3.25 192.168.5.255 +# Cause this host to announce itself to local subnets here +; remote announce = 192.168.1.255 192.168.2.44 + +# Browser Control Options: +# set local master to no if you don't want Samba to become a master +# browser on your network. Otherwise the normal election rules apply +; local master = no + +# OS Level determines the precedence of this server in master browser +# elections. The default value should be reasonable +; os level = 33 + +# Domain Master specifies Samba to be the Domain Master Browser. This +# allows Samba to collate browse lists between subnets. Don't use this +# if you already have a Windows NT domain controller doing this job +; domain master = yes + +# Preferred Master causes Samba to force a local browser election on startup +# and gives it a slightly higher chance of winning the election +; preferred master = yes + +# Enable this if you want Samba to be a domain logon server for +# Windows95 workstations. +; domain logons = yes + +# if you enable domain logons then you may want a per-machine or +# per user logon script +# run a specific logon batch file per workstation (machine) +; logon script = %m.bat +# run a specific logon batch file per username +; logon script = %U.bat + +# Where to store roving profiles (only for Win95 and WinNT) +# %L substitutes for this servers netbios name, %U is username +# You must uncomment the [Profiles] share below +; logon path = \\%L\Profiles\%U + +# All NetBIOS names must be resolved to IP Addresses +# 'Name Resolve Order' allows the named resolution mechanism to be specified +# the default order is "host lmhosts wins bcast". "host" means use the unix +# system gethostbyname() function call that will use either /etc/hosts OR +# DNS or NIS depending on the settings of /etc/host.config, /etc/nsswitch.conf +# and the /etc/resolv.conf file. "host" therefore is system configuration +# dependant. This parameter is most often of use to prevent DNS lookups +# in order to resolve NetBIOS names to IP Addresses. Use with care! +# The example below excludes use of name resolution for machines that are NOT +# on the local network segment +# - OR - are not deliberately to be known via lmhosts or via WINS. +; name resolve order = wins lmhosts bcast + +# Windows Internet Name Serving Support Section: +# WINS Support - Tells the NMBD component of Samba to enable it's WINS Server +; wins support = yes + +# WINS Server - Tells the NMBD components of Samba to be a WINS Client +# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both +; wins server = w.x.y.z + +# WINS Proxy - Tells Samba to answer name resolution queries on +# behalf of a non WINS capable client, for this to work there must be +# at least one WINS Server on the network. The default is NO. +; wins proxy = yes + +# DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names +# via DNS nslookups. The built-in default for versions 1.9.17 is yes, +# this has been changed in version 1.9.18 to no. + dns proxy = no + +# Case Preservation can be handy - system default is _no_ +# NOTE: These can be set on a per share basis +; preserve case = no +; short preserve case = no +# Default case is normally upper case for all DOS files +; default case = lower +# Be very careful with case sensitivity - it can break things! +; case sensitive = no + +#============================ Share Definitions ============================== +[homes] + comment = Home Directories + browseable = no + writable = yes + +# Un-comment the following and create the netlogon directory for Domain Logons +; [netlogon] +; comment = Network Logon Service +; path = /home/netlogon +; guest ok = yes +; writable = no +; share modes = no + + +# Un-comment the following to provide a specific roving profile share +# the default is to use the user's home directory +;[Profiles] +; path = /home/profiles +; browseable = no +; guest ok = yes + + +# NOTE: If you have a BSD-style print system there is no need to +# specifically define each individual printer +[printers] + comment = All Printers + path = /var/spool/samba + browseable = no +# Set public = yes to allow user 'guest account' to print + guest ok = no + writable = no + printable = yes + +# This one is useful for people to share files +;[tmp] +; comment = Temporary file space +; path = /tmp +; read only = no +; public = yes + +# A publicly accessible directory, but read only, except for people in +# the "staff" group +;[public] +; comment = Public Stuff +; path = /home/samba +; public = yes +; read only = yes +; write list = @staff + +# Other examples. +# +# A private printer, usable only by fred. Spool data will be placed in fred's +# home directory. Note that fred must have write access to the spool directory, +# wherever it is. +;[fredsprn] +; comment = Fred's Printer +; valid users = fred +; path = /homes/fred +; printer = freds_printer +; public = no +; writable = no +; printable = yes + +# A private directory, usable only by fred. Note that fred requires write +# access to the directory. +;[fredsdir] +; comment = Fred's Service +; path = /usr/somewhere/private +; valid users = fred +; public = no +; writable = yes +; printable = no + +# a service which has a different directory for each machine that connects +# this allows you to tailor configurations to incoming machines. You could +# also use the %u option to tailor it by user name. +# The %m gets replaced with the machine name that is connecting. +;[pchome] +; comment = PC Directories +; path = /usr/pc/%m +; public = no +; writable = yes + +# A publicly accessible directory, read/write to all users. Note that all files +# created in the directory by users will be owned by the default user, so +# any user with access can delete any other user's files. Obviously this +# directory must be writable by the default user. Another user could of course +# be specified, in which case all files would be owned by that user instead. +;[public] +; path = /usr/somewhere/else/public +; public = yes +; only guest = yes +; writable = yes +; printable = no + +# The following two entries demonstrate how to share a directory so that two +# users can place files there that will be owned by the specific users. In this +# setup, the directory should be writable by both users and should have the +# sticky bit set on it to prevent abuse. Obviously this could be extended to +# as many users as required. +;[myshare] +; comment = Mary's and Fred's stuff +; path = /usr/somewhere/shared +; valid users = mary fred +; public = no +; writable = yes +; printable = no +; create mask = 0765 + + diff --git a/packaging/Fedora/smb.init b/packaging/Fedora/smb.init index fca823a0642..11a011883f9 100644 --- a/packaging/Fedora/smb.init +++ b/packaging/Fedora/smb.init @@ -60,14 +60,16 @@ start() { stop() { KIND="SMB" echo -n $"Shutting down $KIND services: " - killproc smbd + killproc smbd -TERM RETVAL=$? + [ $RETVAL -eq 0 ] && rm -f /var/run/smbd.pid echo KIND="NMB" echo -n $"Shutting down $KIND services: " - killproc nmbd + killproc nmbd -TERM RETVAL2=$? - [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && rm -f /var/lock/subsys/smb + [ $RETVAL2 -eq 0 ] && rm -f /var/run/nmbd.pid + [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && rm -f /var/lock/subsys/smb echo "" return $RETVAL } diff --git a/packaging/Fedora/smbusers b/packaging/Fedora/smbusers new file mode 100644 index 00000000000..ae3389f53f8 --- /dev/null +++ b/packaging/Fedora/smbusers @@ -0,0 +1,3 @@ +# Unix_name = SMB_name1 SMB_name2 ... +root = administrator admin +nobody = guest pcguest smbguest diff --git a/packaging/Fedora/winbind.init b/packaging/Fedora/winbind.init index ced81135b27..05e0eb4d006 100644 --- a/packaging/Fedora/winbind.init +++ b/packaging/Fedora/winbind.init @@ -49,9 +49,11 @@ stop() { echo KIND="Winbind" echo -n $"Shutting down $KIND services: " - killproc winbindd + killproc winbindd -TERM RETVAL=$? - [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/winbindd + [ $RETVAL -eq 0 ] \ + && && rm -f /var/run/nmbd.pid \ + && rm -f /var/lock/subsys/winbindd echo "" return $RETVAL } diff --git a/packaging/RedHat/samba.spec.tmpl b/packaging/RedHat/samba.spec.tmpl index ee0b43c0170..787fe87d4ae 100644 --- a/packaging/RedHat/samba.spec.tmpl +++ b/packaging/RedHat/samba.spec.tmpl @@ -2,6 +2,7 @@ %define rpm_version `rpm --version | awk '{print $3}' | awk -F. '{print $1$2}'` Summary: Samba SMB client and server +Vendor: Samba Team Name: samba Version: PVERSION Release: PRELEASE @@ -113,7 +114,7 @@ mkdir -p $RPM_BUILD_ROOT%{prefix}/{bin,sbin} mkdir -p $RPM_BUILD_ROOT%{prefix}/share/swat/{images,help,include,using_samba} mkdir -p $RPM_BUILD_ROOT%{prefix}/share/swat/using_samba/{figs,gifs} mkdir -p $RPM_BUILD_ROOTMANDIR_MACRO -mkdir -p $RPM_BUILD_ROOT/var/cache/samba +mkdir -p $RPM_BUILD_ROOT/var/lib/samba mkdir -p $RPM_BUILD_ROOT/var/{log,run}/samba mkdir -p $RPM_BUILD_ROOT/var/spool/samba mkdir -p $RPM_BUILD_ROOT/lib/security @@ -192,10 +193,23 @@ echo 127.0.0.1 localhost > $RPM_BUILD_ROOT/etc/samba/lmhosts # Remove "*.old" files find $RPM_BUILD_ROOT -name "*.old" -exec rm -f {} \; +## +## Clean out man pages for tools not installed here +## +rm -f $RPM_BUILD_ROOT/%{_mandir}/man1/editreg.1* +rm -f $RPM_BUILD_ROOT%{_mandir}/man1/log2pcap.1* +rm -f $RPM_BUILD_ROOT%{_mandir}/man1/smbsh.1* +rm -f $RPM_BUILD_ROOT%{_mandir}/man1/smbget.1* +rm -f $RPM_BUILD_ROOT/%{_mandir}/man8/mount.cifs.8* + + %clean rm -rf $RPM_BUILD_ROOT %post +## +## only needed if this is a new install (not an upgrade) +## if [ "$1" -eq "1" ]; then /sbin/chkconfig --add smb /sbin/chkconfig --add winbind @@ -203,96 +217,85 @@ if [ "$1" -eq "1" ]; then /sbin/chkconfig winbind off fi -echo "Looking for old /etc/smb.conf..." -if [ -f /etc/smb.conf -a ! -f /etc/samba/smb.conf ]; then - echo "Moving old /etc/smb.conf to /etc/samba/smb.conf" - mv /etc/smb.conf /etc/samba/smb.conf -fi - -echo "Looking for old /etc/smbusers..." -if [ -f /etc/smbusers -a ! -f /etc/samba/smbusers ]; then - echo "Moving old /etc/smbusers to /etc/samba/smbusers" - mv /etc/smbusers /etc/samba/smbusers -fi - -echo "Looking for old /etc/lmhosts..." -if [ -f /etc/lmhosts -a ! -f /etc/samba/lmhosts ]; then - echo "Moving old /etc/lmhosts to /etc/samba/lmhosts" - mv /etc/lmhosts /etc/samba/lmhosts -fi - -echo "Looking for old /etc/MACHINE.SID..." -if [ -f /etc/MACHINE.SID -a ! -f /etc/samba/MACHINE.SID ]; then - echo "Moving old /etc/MACHINE.SID to /etc/samba/MACHINE.SID" - mv /etc/MACHINE.SID /etc/samba/MACHINE.SID -fi - -echo "Looking for old /etc/smbpasswd..." -if [ -f /etc/smbpasswd -a ! -f /etc/samba/smbpasswd ]; then - echo "Moving old /etc/smbpasswd to /etc/samba/smbpasswd" - mv /etc/smbpasswd /etc/samba/smbpasswd -fi - -# -# For 2.2.1 we move the tdb files from /var/lock/samba to /var/cache/samba -# to preserve across reboots. -# -echo "Moving tdb files in /var/lock/samba/*.tdb to /var/cache/samba/*.tdb" -for i in /var/lock/samba/*.tdb -do -if [ -f $i ]; then - newname=`echo $i | sed -e's|var\/lock\/samba|var\/cache\/samba|'` - echo "Moving $i to $newname" - mv $i $newname -fi -done +## +## we only have to wory about this if we are upgrading +## +if [ "$1" -eq "2" ]; then + if [ -f /etc/smb.conf -a ! -f /etc/samba/smb.conf ]; then + echo "Moving old /etc/smb.conf to /etc/samba/smb.conf" + mv /etc/smb.conf /etc/samba/smb.conf + fi -# Remove the transient tdb files. -if [ -e /var/cache/samba/brlock.tdb ]; then - rm -f /var/cache/samba/brlock.tdb -fi + if [ -f /etc/smbusers -a ! -f /etc/samba/smbusers ]; then + echo "Moving old /etc/smbusers to /etc/samba/smbusers" + mv /etc/smbusers /etc/samba/smbusers + fi -if [ -e /var/cache/samba/unexpected.tdb ]; then - rm -f /var/cache/samba/unexpected.tdb -fi + if [ -f /etc/lmhosts -a ! -f /etc/samba/lmhosts ]; then + echo "Moving old /etc/lmhosts to /etc/samba/lmhosts" + mv /etc/lmhosts /etc/samba/lmhosts + fi -if [ -e /var/cache/samba/connections.tdb ]; then - rm -f /var/cache/samba/connections.tdb -fi + if [ -f /etc/MACHINE.SID -a ! -f /etc/samba/MACHINE.SID ]; then + echo "Moving old /etc/MACHINE.SID to /etc/samba/MACHINE.SID" + mv /etc/MACHINE.SID /etc/samba/MACHINE.SID + fi -if [ -e /var/cache/samba/locking.tdb ]; then - rm -f /var/cache/samba/locking.tdb -fi + if [ -f /etc/smbpasswd -a ! -f /etc/samba/smbpasswd ]; then + echo "Moving old /etc/smbpasswd to /etc/samba/smbpasswd" + mv /etc/smbpasswd /etc/samba/smbpasswd + fi -if [ -e /var/cache/samba/messages.tdb ]; then - rm -f /var/cache/samba/messages.tdb + # + # For 2.2.1 we move the tdb files from /var/lock/samba to /var/cache/samba + # to preserve across reboots. + # + for i in /var/lock/samba/*.tdb; do + if [ -f $i ]; then + newname="/var/lib/samba/`basename $i`" + echo "Moving $i to $newname" + mv $i $newname + fi + done + + # + # For 3.0.1 we move the tdb files from /var/cache/samba to /var/lib/samba + # + echo "Moving tdb files in /var/cache/samba/*.tdb to /var/lib/samba/*.tdb" + for i in /var/cache/samba/*.tdb; do + if [ -f $i ]; then + newname="/var/lib/samba/`basename $i`" + echo "Moving $i to $newname" + mv $i $newname + fi + done fi -if [ -d /var/lock/samba ]; then - rm -rf /var/lock/samba -fi +## +## New things +## # Add swat entry to /etc/services if not already there. -if !( grep ^[:space:]*swat /etc/services > /dev/null ) then +if [ ! "`grep ^\s**swat /etc/services`" ]; then echo 'swat 901/tcp # Add swat service used via inetd' >> /etc/services fi # Add swat entry to /etc/inetd.conf if needed. if [ -f /etc/inetd.conf ]; then - if !( grep ^[:space:]*swat /etc/inetd.conf > /dev/null ) then + if [ ! "`grep ^\s*swat /etc/inetd.conf`" ]; then echo 'swat stream tcp nowait.400 root %{prefix}/sbin/swat swat' >> /etc/inetd.conf - killall -1 inetd || : + killall -HUP inetd || : fi fi # Add swat entry to xinetd.d if needed. -if [ -d $RPM_BUILD_ROOT/etc/xinetd.d -a ! -f /etc/xinetd.d/swat ]; then +if [ -d /etc/xinetd.d -a ! -f /etc/xinetd.d/swat ]; then mv /etc/samba/samba.xinetd /etc/xinetd.d/swat else rm -f /etc/samba/samba.xinetd fi -# Install the correct version of the samba pam file, depending on pam version. +# Install the correct version of the samba pam file if [ -f /lib/security/pam_stack.so ]; then echo "Installing stack version of /etc/pam.d/samba..." mv /etc/samba/samba.stack /etc/pam.d/samba @@ -305,77 +308,75 @@ fi /sbin/ldconfig %preun -if [ $1 = 0 ] ; then +if [ "$1" -eq "0" ] ; then /sbin/chkconfig --del smb /sbin/chkconfig --del winbind - # We want to remove the browse.dat and wins.dat files so they can not interfer with a new version of samba! - if [ -e /var/cache/samba/browse.dat ]; then - rm -f /var/cache/samba/browse.dat + # We want to remove the browse.dat and wins.dat files + # so they can not interfer with a new version of samba! + if [ -e /var/lib/samba/browse.dat ]; then + rm -f /var/lib/samba/browse.dat fi - if [ -e /var/cache/samba/wins.dat ]; then - rm -f /var/cache/samba/wins.dat + if [ -e /var/lib/samba/wins.dat ]; then + rm -f /var/lib/samba/wins.dat fi # Remove the transient tdb files. - if [ -e /var/cache/samba/brlock.tdb ]; then - rm -f /var/cache/samba/brlock.tdb - fi - - if [ -e /var/cache/samba/unexpected.tdb ]; then - rm -f /var/cache/samba/unexpected.tdb + if [ -e /var/lib/samba/brlock.tdb ]; then + rm -f /var/lib/samba/brlock.tdb fi - if [ -e /var/cache/samba/connections.tdb ]; then - rm -f /var/cache/samba/connections.tdb + if [ -e /var/lib/samba/unexpected.tdb ]; then + rm -f /var/lib/samba/unexpected.tdb fi - if [ -e /var/cache/samba/locking.tdb ]; then - rm -f /var/cache/samba/locking.tdb + if [ -e /var/lib/samba/connections.tdb ]; then + rm -f /var/lib/samba/connections.tdb fi - if [ -e /var/cache/samba/messages.tdb ]; then - rm -f /var/cache/samba/messages.tdb + if [ -e /var/lib/samba/locking.tdb ]; then + rm -f /var/lib/samba/locking.tdb fi - # Remove winbind nss client symlink - - if [ -L /lib/libnss_winbind.so.2 ]; then - rm -f /lib/libnss_winbind.so.2 + if [ -e /var/lib/samba/messages.tdb ]; then + rm -f /var/lib/samba/messages.tdb fi fi %postun # Only delete remnants of samba if this is the final deletion. -if [ $1 = 0 ] ; then +if [ "$1" -eq "0" ] ; then if [ -x /etc/pam.d/samba ]; then rm -f /etc/pam.d/samba fi + if [ -e /var/log/samba ]; then rm -rf /var/log/samba fi - if [ -e /var/cache/samba ]; then - rm -rf /var/cache/samba - fi + + if [ -e /var/lib/samba ]; then + rm -rf /var/lib/samba + fi # Remove swat entries from /etc/inetd.conf and /etc/services cd /etc tmpfile=/etc/tmp.$$ - if [ -f /etc/inetd.conf ]; then + if [ -f /etc/inetd.conf ]; then # preserve inetd.conf permissions. cp -p /etc/inetd.conf $tmpfile sed -e '/^[:space:]*swat.*$/d' /etc/inetd.conf > $tmpfile mv $tmpfile inetd.conf - fi + fi + # preserve services permissions. cp -p /etc/services $tmpfile sed -e '/^[:space:]*swat.*$/d' /etc/services > $tmpfile mv $tmpfile /etc/services - # Remove swat entry from /etc/xinetd.d - if [ -f /etc/xinetd.d/swat ]; then - rm -r /etc/xinetd.d/swat - fi + # Remove swat entry from /etc/xinetd.d + if [ -f /etc/xinetd.d/swat ]; then + rm -r /etc/xinetd.d/swat + fi fi /sbin/ldconfig @@ -447,7 +448,7 @@ MANDIR_MACRO/man1/* MANDIR_MACRO/man5/* MANDIR_MACRO/man7/* MANDIR_MACRO/man8/* -%attr(755,root,root) %dir /var/cache/samba +%attr(755,root,root) %dir /var/lib/samba %dir /var/log/samba %dir /var/run/samba %attr(1777,root,root) %dir /var/spool/samba diff --git a/packaging/SuSE/samba3.spec b/packaging/SuSE/samba3.spec index 1b620e60c25..37d8a4d36f8 100644 --- a/packaging/SuSE/samba3.spec +++ b/packaging/SuSE/samba3.spec @@ -14,6 +14,7 @@ # usedforbuild aaa_base acl attr bash bind9-utils bison coreutils cpio cpp cvs cyrus-sasl2 db devs diffutils e2fsprogs file filesystem fillup findutils flex gawk gdbm-devel glibc glibc-devel glibc-locale gpm grep groff gzip info insserv kbd less libacl libattr libgcc libstdc++ libxcrypt m4 make man mktemp modutils ncurses ncurses-devel net-tools netcfg pam pam-devel pam-modules patch permissions ps rcs readline sed sendmail shadow strace syslogd sysvinit tar texinfo timezone unzip util-linux vim zlib zlib-devel XFree86-libs autoconf automake binutils bzip2 cracklib cups-devel cups-libs dialog docbook-utils docbook-xsl-stylesheets docbook_4 ed freetype2 gcc gdbm gettext ghostscript-fonts-std ghostscript-library ghostscript-x11 glib heimdal heimdal-devel heimdal-lib iso_ent libacl-devel libattr-devel libgimpprint libpng libtiff libtool libxml2 libxml2-devel libxslt mysql-devel mysql-shared openldap2 openldap2-client openldap2-devel openssl openssl-devel perl popt popt-devel python python-devel readline-devel rpm te_ams te_etex te_latex te_pdf tetex xmlcharent Name: samba3 +Vendor: Samba Team License: GPL Group: Productivity/Networking/Samba Url: http://www.samba.org diff --git a/source/groupdb/mapping.c b/source/groupdb/mapping.c index 97abbd46e31..048a6c5db05 100644 --- a/source/groupdb/mapping.c +++ b/source/groupdb/mapping.c @@ -701,10 +701,12 @@ BOOL get_group_from_gid(gid_t gid, GROUP_MAP *map) BOOL get_sid_list_of_group(gid_t gid, DOM_SID **sids, int *num_sids) { struct group *grp; - struct passwd *pwd; int i=0; char *gr; DOM_SID *s; + + struct sys_pwent *userlist; + struct sys_pwent *user; if(!init_group_mapping()) { DEBUG(0,("failed to initialize group mapping")); @@ -751,41 +753,53 @@ BOOL get_sid_list_of_group(gid_t gid, DOM_SID **sids, int *num_sids) winbind_off(); - setpwent(); - while ((pwd=getpwent()) != NULL) { - if (pwd->pw_gid==gid) { - SAM_ACCOUNT *group_member_acct = NULL; - BOOL found_user; - s = Realloc((*sids), sizeof(**sids)*(*num_sids+1)); - if (!s) { - DEBUG(0,("get_sid_list_of_group: unable to enlarge SID list!\n")); - winbind_on(); - return False; - } - else (*sids) = s; + user = userlist = getpwent_list(); + + while (user != NULL) { + + SAM_ACCOUNT *group_member_acct = NULL; + BOOL found_user; + + if (user->pw_gid != gid) { + user = user->next; + continue; + } + + s = Realloc((*sids), sizeof(**sids)*(*num_sids+1)); + if (!s) { + DEBUG(0,("get_sid_list_of_group: unable to enlarge " + "SID list!\n")); + pwent_free(userlist); + winbind_on(); + return False; + } + else (*sids) = s; - if (!NT_STATUS_IS_OK(pdb_init_sam(&group_member_acct))) { - continue; - } + if (!NT_STATUS_IS_OK(pdb_init_sam(&group_member_acct))) { + continue; + } - become_root(); - found_user = pdb_getsampwnam(group_member_acct, pwd->pw_name); - unbecome_root(); + become_root(); + found_user = pdb_getsampwnam(group_member_acct, user->pw_name); + unbecome_root(); - if (found_user) { - sid_copy(&(*sids)[*num_sids], pdb_get_user_sid(group_member_acct)); + if (found_user) { + sid_copy(&(*sids)[*num_sids], + pdb_get_user_sid(group_member_acct)); + (*num_sids)++; + } else { + DEBUG(4,("get_sid_list_of_group: User %s [uid == %lu] " + "has no samba account\n", + user->pw_name, (unsigned long)user->pw_uid)); + if (algorithmic_uid_to_sid(&(*sids)[*num_sids], + user->pw_uid)) (*num_sids)++; - } else { - DEBUG(4,("get_sid_list_of_group: User %s [uid == %lu] has no samba account\n", - pwd->pw_name, (unsigned long)pwd->pw_uid)); - if (algorithmic_uid_to_sid(&(*sids)[*num_sids], pwd->pw_uid)) - (*num_sids)++; - } - - pdb_free_sam(&group_member_acct); } + pdb_free_sam(&group_member_acct); + + user = user->next; } - endpwent(); + pwent_free(userlist); DEBUG(10, ("got primary groups, members: [%d]\n", *num_sids)); winbind_on(); diff --git a/source/nsswitch/winbind_nss_linux.c b/source/nsswitch/winbind_nss_linux.c index ac4a861ff1b..362047f62b1 100644 --- a/source/nsswitch/winbind_nss_linux.c +++ b/source/nsswitch/winbind_nss_linux.c @@ -1009,3 +1009,141 @@ failed: free_response(&response); return ret; } + +/* map a sid to a uid */ +NSS_STATUS +_nss_winbind_sidtouid(const char *sid, uid_t *uid, int *errnop) +{ + NSS_STATUS ret; + struct winbindd_response response; + struct winbindd_request request; + +#ifdef DEBUG_NSS + fprintf(stderr, "[%5d]: sidtouid %s\n", getpid(), sid); +#endif + + ZERO_STRUCT(request); + ZERO_STRUCT(response); + + strncpy(request.data.sid, sid, sizeof(request.data.sid) - 1); + request.data.sid[sizeof(request.data.sid) - 1] = '\0'; + + ret = winbindd_request(WINBINDD_SID_TO_UID, &request, &response); + if (ret != NSS_STATUS_SUCCESS) { + *errnop = errno = EINVAL; + goto failed; + } + + *uid = response.data.uid; + +failed: + return ret; +} + +/* map a sid to a gid */ +NSS_STATUS +_nss_winbind_sidtogid(const char *sid, gid_t *gid, int *errnop) +{ + NSS_STATUS ret; + struct winbindd_response response; + struct winbindd_request request; + +#ifdef DEBUG_NSS + fprintf(stderr, "[%5d]: sidtogid %s\n", getpid(), sid); +#endif + + ZERO_STRUCT(request); + ZERO_STRUCT(response); + + strncpy(request.data.sid, sid, sizeof(request.data.sid) - 1); + request.data.sid[sizeof(request.data.sid) - 1] = '\0'; + + ret = winbindd_request(WINBINDD_SID_TO_GID, &request, &response); + if (ret != NSS_STATUS_SUCCESS) { + *errnop = errno = EINVAL; + goto failed; + } + + *gid = response.data.gid; + +failed: + return ret; +} + +/* map a uid to a SID string */ +NSS_STATUS +_nss_winbind_uidtosid(uid_t uid, char **sid, char *buffer, + size_t buflen, int *errnop) +{ + NSS_STATUS ret; + struct winbindd_response response; + struct winbindd_request request; + +#ifdef DEBUG_NSS + fprintf(stderr, "[%5d]: uidtosid %s\n", getpid(), name); +#endif + + ZERO_STRUCT(response); + ZERO_STRUCT(request); + + request.data.uid = uid; + + ret = winbindd_request(WINBINDD_UID_TO_SID, &request, &response); + if (ret != NSS_STATUS_SUCCESS) { + *errnop = errno = EINVAL; + goto failed; + } + + if (buflen < strlen(response.data.sid.sid)+1) { + ret = NSS_STATUS_TRYAGAIN; + *errnop = errno = ERANGE; + goto failed; + } + + *errnop = errno = 0; + *sid = buffer; + strcpy(*sid, response.data.sid.sid); + +failed: + free_response(&response); + return ret; +} + +/* map a gid to a SID string */ +NSS_STATUS +_nss_winbind_gidtosid(gid_t gid, char **sid, char *buffer, + size_t buflen, int *errnop) +{ + NSS_STATUS ret; + struct winbindd_response response; + struct winbindd_request request; + +#ifdef DEBUG_NSS + fprintf(stderr, "[%5d]: gidtosid %s\n", getpid(), name); +#endif + + ZERO_STRUCT(response); + ZERO_STRUCT(request); + + request.data.gid = gid; + + ret = winbindd_request(WINBINDD_GID_TO_SID, &request, &response); + if (ret != NSS_STATUS_SUCCESS) { + *errnop = errno = EINVAL; + goto failed; + } + + if (buflen < strlen(response.data.sid.sid)+1) { + ret = NSS_STATUS_TRYAGAIN; + *errnop = errno = ERANGE; + goto failed; + } + + *errnop = errno = 0; + *sid = buffer; + strcpy(*sid, response.data.sid.sid); + +failed: + free_response(&response); + return ret; +} diff --git a/source/nsswitch/winbindd_group.c b/source/nsswitch/winbindd_group.c index b31dc92b38c..4805e628dd8 100644 --- a/source/nsswitch/winbindd_group.c +++ b/source/nsswitch/winbindd_group.c @@ -1098,7 +1098,7 @@ enum winbindd_result winbindd_getusersids(struct winbindd_cli_state *state) enum winbindd_result result = WINBINDD_ERROR; unsigned int i; TALLOC_CTX *mem_ctx; - char *ret; + char *ret = NULL; uint32 num_groups; unsigned ofs, ret_size = 0; @@ -1144,7 +1144,7 @@ enum winbindd_result winbindd_getusersids(struct winbindd_cli_state *state) ofs = 0; for (i = 0; i < num_groups; i++) { const char *s = sid_string_static(user_grpsids[i]); - safe_strcpy(ret + ofs, s, ret_size - ofs); + safe_strcpy(ret + ofs, s, ret_size - ofs - 1); ofs += strlen(ret+ofs) + 1; } diff --git a/source/rpc_parse/parse_epmapper.c b/source/rpc_parse/parse_epmapper.c index 89dc0994c61..bc2cd175034 100644 --- a/source/rpc_parse/parse_epmapper.c +++ b/source/rpc_parse/parse_epmapper.c @@ -45,37 +45,37 @@ BOOL epm_io_handle(const char *desc, EPM_HANDLE *handle, prs_struct *ps, /******************************************************************* inits an EPM_FLOOR structure. ********************************************************************/ -NTSTATUS init_epm_floor(EPM_FLOOR *floor, uint8 protocol) +NTSTATUS init_epm_floor(EPM_FLOOR *efloor, uint8 protocol) { /* handle lhs */ - floor->lhs.protocol = protocol; - floor->lhs.length = sizeof(floor->lhs.protocol); + efloor->lhs.protocol = protocol; + efloor->lhs.length = sizeof(efloor->lhs.protocol); - switch(floor->lhs.protocol) { + switch(efloor->lhs.protocol) { case EPM_FLOOR_UUID: - floor->lhs.length += sizeof(floor->lhs.uuid.uuid); - floor->lhs.length += sizeof(floor->lhs.uuid.version); + efloor->lhs.length += sizeof(efloor->lhs.uuid.uuid); + efloor->lhs.length += sizeof(efloor->lhs.uuid.version); break; default: break; } /* handle rhs */ - switch(floor->lhs.protocol) { + switch(efloor->lhs.protocol) { case EPM_FLOOR_RPC: case EPM_FLOOR_UUID: - floor->rhs.length = sizeof(floor->rhs.unknown); + efloor->rhs.length = sizeof(efloor->rhs.unknown); break; case EPM_FLOOR_TCP: - floor->rhs.length = sizeof(floor->rhs.tcp.port); + efloor->rhs.length = sizeof(efloor->rhs.tcp.port); break; case EPM_FLOOR_IP: - floor->rhs.length = sizeof(floor->rhs.ip.addr); + efloor->rhs.length = sizeof(efloor->rhs.ip.addr); break; case EPM_FLOOR_NMPIPES: case EPM_FLOOR_LRPC: case EPM_FLOOR_NETBIOS: - floor->rhs.length = strlen(floor->rhs.string) + 1; + efloor->rhs.length = strlen(efloor->rhs.string) + 1; break; default: break; @@ -87,118 +87,118 @@ NTSTATUS init_epm_floor(EPM_FLOOR *floor, uint8 protocol) /******************************************************************* inits an EPM_FLOOR structure with a UUID ********************************************************************/ -NTSTATUS init_epm_floor_uuid(EPM_FLOOR *floor, +NTSTATUS init_epm_floor_uuid(EPM_FLOOR *efloor, const struct uuid uuid, uint16 version) { - memcpy(&floor->lhs.uuid.uuid, &uuid, sizeof(uuid)); - floor->lhs.uuid.version = version; - floor->rhs.unknown = 0; - return init_epm_floor(floor, EPM_FLOOR_UUID); + memcpy(&efloor->lhs.uuid.uuid, &uuid, sizeof(uuid)); + efloor->lhs.uuid.version = version; + efloor->rhs.unknown = 0; + return init_epm_floor(efloor, EPM_FLOOR_UUID); } /******************************************************************* inits an EPM_FLOOR structure for RPC ********************************************************************/ -NTSTATUS init_epm_floor_rpc(EPM_FLOOR *floor) +NTSTATUS init_epm_floor_rpc(EPM_FLOOR *efloor) { - floor->rhs.unknown = 0; - return init_epm_floor(floor, EPM_FLOOR_RPC); + efloor->rhs.unknown = 0; + return init_epm_floor(efloor, EPM_FLOOR_RPC); } /******************************************************************* inits an EPM_FLOOR structure for TCP ********************************************************************/ -NTSTATUS init_epm_floor_tcp(EPM_FLOOR *floor, uint16 port) +NTSTATUS init_epm_floor_tcp(EPM_FLOOR *efloor, uint16 port) { - floor->rhs.tcp.port = htons(port); - return init_epm_floor(floor, EPM_FLOOR_TCP); + efloor->rhs.tcp.port = htons(port); + return init_epm_floor(efloor, EPM_FLOOR_TCP); } /******************************************************************* inits an EPM_FLOOR structure for IP ********************************************************************/ -NTSTATUS init_epm_floor_ip(EPM_FLOOR *floor, uint8 addr[4]) +NTSTATUS init_epm_floor_ip(EPM_FLOOR *efloor, uint8 addr[4]) { - memcpy(&floor->rhs.ip.addr, addr, sizeof(addr)); - return init_epm_floor(floor, EPM_FLOOR_IP); + memcpy(&efloor->rhs.ip.addr, addr, sizeof(addr)); + return init_epm_floor(efloor, EPM_FLOOR_IP); } /******************************************************************* inits an EPM_FLOOR structure for named pipe ********************************************************************/ -NTSTATUS init_epm_floor_np(EPM_FLOOR *floor, const char *pipe_name) +NTSTATUS init_epm_floor_np(EPM_FLOOR *efloor, const char *pipe_name) { - safe_strcpy(floor->rhs.string, pipe_name, sizeof(floor->rhs.string)-1); - return init_epm_floor(floor, EPM_FLOOR_NMPIPES); + safe_strcpy(efloor->rhs.string, pipe_name, sizeof(efloor->rhs.string)-1); + return init_epm_floor(efloor, EPM_FLOOR_NMPIPES); } /******************************************************************* inits an EPM_FLOOR structure for named pipe ********************************************************************/ -NTSTATUS init_epm_floor_lrpc(EPM_FLOOR *floor, const char *pipe_name) +NTSTATUS init_epm_floor_lrpc(EPM_FLOOR *efloor, const char *pipe_name) { - safe_strcpy(floor->rhs.string, pipe_name, sizeof(floor->rhs.string)-1); - return init_epm_floor(floor, EPM_FLOOR_LRPC); + safe_strcpy(efloor->rhs.string, pipe_name, sizeof(efloor->rhs.string)-1); + return init_epm_floor(efloor, EPM_FLOOR_LRPC); } /******************************************************************* inits an EPM_FLOOR structure for named pipe ********************************************************************/ -NTSTATUS init_epm_floor_nb(EPM_FLOOR *floor, char *host_name) +NTSTATUS init_epm_floor_nb(EPM_FLOOR *efloor, char *host_name) { - safe_strcpy(floor->rhs.string, host_name, sizeof(floor->rhs.string)-1); - return init_epm_floor(floor, EPM_FLOOR_NETBIOS); + safe_strcpy(efloor->rhs.string, host_name, sizeof(efloor->rhs.string)-1); + return init_epm_floor(efloor, EPM_FLOOR_NETBIOS); } /******************************************************************* reads and writes EPM_FLOOR. ********************************************************************/ -BOOL epm_io_floor(const char *desc, EPM_FLOOR *floor, +BOOL epm_io_floor(const char *desc, EPM_FLOOR *efloor, prs_struct *ps, int depth) { prs_debug(ps, depth, desc, "epm_io_floor"); depth++; - if (!prs_uint16("lhs_length", ps, depth, &floor->lhs.length)) + if (!prs_uint16("lhs_length", ps, depth, &efloor->lhs.length)) return False; - if (!prs_uint8("protocol", ps, depth, &floor->lhs.protocol)) + if (!prs_uint8("protocol", ps, depth, &efloor->lhs.protocol)) return False; - switch (floor->lhs.protocol) { + switch (efloor->lhs.protocol) { case EPM_FLOOR_UUID: - if (!smb_io_uuid("uuid", &floor->lhs.uuid.uuid, ps, depth)) + if (!smb_io_uuid("uuid", &efloor->lhs.uuid.uuid, ps, depth)) return False; if (!prs_uint16("version", ps, depth, - &floor->lhs.uuid.version)) + &efloor->lhs.uuid.version)) return False; break; } - if (!prs_uint16("rhs_length", ps, depth, &floor->rhs.length)) + if (!prs_uint16("rhs_length", ps, depth, &efloor->rhs.length)) return False; - switch (floor->lhs.protocol) { + switch (efloor->lhs.protocol) { case EPM_FLOOR_UUID: case EPM_FLOOR_RPC: - if (!prs_uint16("unknown", ps, depth, &floor->rhs.unknown)) + if (!prs_uint16("unknown", ps, depth, &efloor->rhs.unknown)) return False; break; case EPM_FLOOR_TCP: - if (!prs_uint16("tcp_port", ps, depth, &floor->rhs.tcp.port)) + if (!prs_uint16("tcp_port", ps, depth, &efloor->rhs.tcp.port)) return False; break; case EPM_FLOOR_IP: if (!prs_uint8s(False, "ip_addr", ps, depth, - floor->rhs.ip.addr, - sizeof(floor->rhs.ip.addr))) + efloor->rhs.ip.addr, + sizeof(efloor->rhs.ip.addr))) return False; break; case EPM_FLOOR_NMPIPES: case EPM_FLOOR_LRPC: case EPM_FLOOR_NETBIOS: if (!prs_uint8s(False, "string", ps, depth, - floor->rhs.string, - floor->rhs.length)) + efloor->rhs.string, + efloor->rhs.length)) return False; break; default: diff --git a/swat/lang/ja/help/welcome.html b/swat/lang/ja/help/welcome.html dissimilarity index 99% index fee6d2084ae..240ad22ceff 100644 --- a/swat/lang/ja/help/welcome.html +++ b/swat/lang/ja/help/welcome.html @@ -1,86 +1,69 @@ -

SWAT : Samba Web Administration Tool !

- -

Samba‚Ì�Ý’è‚Í�ã‚̃{ƒ^ƒ“‚ðƒNƒŠƒbƒN‚µ‚Ä�s‚¢‚Ü‚·�B

- -

ƒhƒLƒ…ƒ�ƒ“ƒg

- - - -

ƒtƒB�[ƒhƒoƒbƒN

- -

“ú–{Œê‰»‚ÉŠÖ‚·‚邱‚Æ‚Í�A SambaƒeƒNƒjƒJƒ‹ƒ��[ƒŠƒ“ƒOƒŠƒXƒg‚Ü‚Å‚¨Šè‚¢‚µ‚Ü‚·�B

+

SWAT ‚ւ悤‚±‚»!

+ +�ã‚̃{ƒ^ƒ“‚ðƒNƒŠƒbƒN‚µ‚Ä�Ý’è‚ð�s‚Á‚Ä‚­‚¾‚³‚¢�B + +

Samba ƒhƒLƒ…ƒ�ƒ“ƒg

+ +
    +
  • ƒf�[ƒ‚ƒ“ +
      +
    • smbd - SMB ƒf�[ƒ‚ƒ“ +
    • nmbd - NetBIOS ƒl�[ƒ€ƒT�[ƒo +
    • winbindd - winbind ƒf�[ƒ‚ƒ“ +
    +
  • �Ý’èƒtƒ@ƒCƒ‹ +
      +
    • smb.conf - Samba �Ý’èƒtƒ@ƒCƒ‹ +
    • lmhosts - NetBIOS ‚Ì hosts ƒtƒ@ƒCƒ‹ +
    • smbpasswd - SMB ƒpƒXƒ��[ƒhƒtƒ@ƒCƒ‹ +
    +
  • ŠÇ—�ƒ†�[ƒeƒBƒŠƒeƒB +
      +
    • smbcontrol - Samba ƒf�[ƒ‚ƒ“‚ւ̃Rƒ“ƒgƒ��[ƒ‹ƒ�ƒbƒZ�[ƒW‚Ì‘—�o +
    • smbpasswd - SMB ƒpƒXƒ��[ƒh‚ÌŠÇ—� +
    • SWAT - Web �Ý’èƒc�[ƒ‹ +
    • net - Samba ‚¨‚æ‚уŠƒ‚�[ƒg‚Ì CIFS ƒT�[ƒo‚ÌŠÇ—�ƒc�[ƒ‹ +
    • pdbedit - Samba ‚̃†�[ƒUƒAƒJƒEƒ“ƒgŠÇ—�ƒc�[ƒ‹ +
    • tdbbackup - TDB ƒf�[ƒ^ƒx�[ƒX‚̃oƒbƒNƒAƒbƒvƒc�[ƒ‹ +
    +
  • ƒNƒ‰ƒCƒAƒ“ƒgƒc�[ƒ‹ +
      +
    • rpcclient - ƒRƒ}ƒ“ƒhƒ‰ƒCƒ“‚Ì MS-RPC ƒNƒ‰ƒCƒAƒ“ƒg +
    • smbtar - SMB ƒoƒbƒNƒAƒbƒvƒc�[ƒ‹ +
    • smbclient - ƒRƒ}ƒ“ƒhƒ‰ƒCƒ“‚Ì SMB ƒNƒ‰ƒCƒAƒ“ƒg +
    • smbmnt - Linux �ã‚Ì SMB ƒtƒ@ƒCƒ‹ƒVƒXƒeƒ€‚ðƒ}ƒEƒ“ƒg‚·‚é�Û‚Ì•â�•ƒc�[ƒ‹ +
    • smbmount - Linux ‚É‚¨‚¯‚é SMB ƒtƒ@ƒCƒ‹ƒVƒXƒeƒ€‚̃}ƒEƒ“ƒg‚ðŽÀŒ»‚·‚郆�[ƒU‹óŠÔ‚̃c�[ƒ‹ +
    • smbspool - ƒRƒ}ƒ“ƒhƒ‰ƒCƒ“‚Ì SMB ˆó�üƒNƒ‰ƒCƒAƒ“ƒg +
    • smbumount - Linux ‚É‚¨‚¯‚é SMB ƒtƒ@ƒCƒ‹ƒVƒXƒeƒ€‚̃Aƒ“ƒ}ƒEƒ“ƒg‚ðŽÀŒ»‚·‚郆�[ƒU‹óŠÔ‚̃c�[ƒ‹ +
    • ntlm_auth - •Êƒvƒ�ƒOƒ‰ƒ€‚©‚ç‚Ì NTLM ”F�Ø‚ÌŽg—p‚ðŽÀŒ» +
    • smbcquotas - NTFS 5 ‹¤—L‚̃NƒH�[ƒ^�î•ñ‚Ì�Ý’è‚Ǝ擾 +
    • smbsh - UNIX ƒVƒFƒ‹‚ð—p‚¢‚½ƒŠƒ‚�[ƒg SMB ‹¤—L‚ւ̃AƒNƒZƒX‚ðŽÀŒ» +
    • smbtree - ƒeƒLƒXƒgƒx�[ƒX‚Ì SMB ƒlƒbƒgƒ��[ƒNƒuƒ‰ƒEƒWƒ“ƒO +
    • smbspool - ˆó�üƒWƒ‡ƒu‚ð SMB ƒvƒŠƒ“ƒ^‚É‘—�M +
    +
  • �f’fƒ†�[ƒeƒBƒŠƒeƒB +
      +
    • smbstatus - Samba ‚ÌŠÄŽ‹ +
    • testparm - �Ý’èƒtƒ@ƒCƒ‹‚Ì�®�‡�«‚ÌŒŸ�¸ +
    • testprns - ƒvƒŠƒ“ƒ^�Ý’è‚ÌŒŸ�¸ +
    • nmblookup - NetBIOS –¼‚ÌŒŸ�õƒc�[ƒ‹ +
    • wbinfo - winbind �î•ñ‚̎擾ƒc�[ƒ‹ +
    +
  • ‚»‚Ì‘¼‚̃†�[ƒeƒBƒŠƒeƒB +
      +
    • profiles - •Êƒhƒ�ƒCƒ“‚ւ̃vƒ�ƒtƒ@ƒCƒ‹‚̈Ú�s +
    • editreg - Windows ƒŒƒWƒXƒgƒŠƒtƒ@ƒCƒ‹‚Ì•Ò�W +
    • log2pcap - Samba ‚̃�ƒOƒtƒ@ƒCƒ‹‚©‚ç pcap ƒtƒ@ƒCƒ‹‚Ì�¶�¬ +
    +
  • �‘�Ð + +
+ +

ƒtƒB�[ƒhƒoƒbƒN

+ + ‚±‚̃o�[ƒWƒ‡ƒ“‚Ì SWAT ‚ÉŠÖ‚·‚é–â‘è‚ɂ‚¢‚Ä‚Ì‹c˜_‚ð�s‚È‚¢‚½‚¢•û‚Í�A + samba ƒ��[ƒŠƒ“ƒOƒŠƒXƒg‚Ö‚ÌŽQ‰Á‚ð‚¨Šè‚¢‚µ‚Ü‚·�B +(‚à‚µ‚­‚Í sugj-tech ƒ��[ƒŠƒ“ƒOƒŠƒXƒg‚É“ú–{Œê‚Å‚¨Šè‚¢‚µ‚Ü‚·) -- 2.11.4.GIT