⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 basicsmb.fns

📁 samba-3.0.22.tar.gz 编译smb服务器的源码
💻 FNS
字号:
#! /bin/sh# Common functions for Samba build scripts.# Copyright (C) 2001 by Martin Pool <mbp@samba.org> and others# The following variables are passed in by the calling script.  They# originate in either the buildfarm scripts or the configured# Makefile.# PREFIX = Installed prefix of samba test installation.  Used to# locate binaries, configuration files, etc.  # XXX: It's pretty bad to clobber the installed configuration file and# other data in $prefix, because somebody might unwittingly run this# with prefix=/usr.  # Really what we want is a consistent way to pass the location of the# configuration and all other files into *all* Samba programs# (smbclient, smd, ...) and be able to set them to a temporary# directory when testing.  Some of them take a -c parameter, but tpot# says it's not done consistently.template_setup() {	cat template/$1 | \              sed "s|PREFIX|$prefix|g" | \	      sed "s|BUILD_FARM|$test_root|g" | \	      sed "s|WHOAMI|$whoami|g" | \	      sed "s|LOGLEVEL|$loglevel|g" \        > $prefix/$2	echo "template_setup: Created $prefix/$2"}template_smb_conf_setup() {    template_setup "basicsmb.smb.conf$1" "lib/smb.conf$1"}test_smb_conf_setup() {    echo "test_smb_conf_setup: Configuring: "    echo "    PREFIX=$prefix"    echo "    BUILD_FARM=$test_root"    echo "    WHOAMI=$whoami"    echo "    LOGLEVEL=$loglevel"    echo "    TREE=$tree"    case "$prefix" in    /usr*|/|//)        echo "** I don't want to clobber your installation in "	echo "**     $prefix"	echo "** by running tests there.  Please reconfigure this source tree to"	echo "** use a different prefix."	exit 1    esac#   Please keep these names under 15 characters,#   so that the final name is 31 characters or fewer.    template_smb_conf_setup     template_smb_conf_setup .hostsequiv    template_smb_conf_setup .validusers    template_smb_conf_setup .invalidusers    template_smb_conf_setup .preexec    template_smb_conf_setup .preexec_close    template_smb_conf_setup .preexec_cl_fl    template_smb_conf_setup .share    template_smb_conf_setup .user    template_smb_conf_setup .server    template_smb_conf_setup .domain    template_setup preexec lib/preexec    touch $prefix/lib/smb.conf.    touch $prefix/lib/smb.conf.localhost	echo "127.0.0.1    localhost">$prefix/lib/lmhosts	echo "127.0.0.2    BUILDFARM">>$prefix/lib/lmhosts    echo "127.0.0.3    SHARE">>$prefix/lib/lmhosts    echo "127.0.0.4    USER">>$prefix/lib/lmhosts    echo "127.0.0.5    SERVER">>$prefix/lib/lmhosts    echo "127.0.0.6    DOMAIN">>$prefix/lib/lmhosts    echo "127.0.0.7    HOSTSEQUIV">>$prefix/lib/lmhosts    echo "127.0.0.7    VALIDUSERS">>$prefix/lib/lmhosts    echo "127.0.0.7    INVALIDUSERS">>$prefix/lib/lmhosts    echo "127.0.0.7    PREEXEC">>$prefix/lib/lmhosts    echo "127.0.0.7    PREEXEC_CLOSE">>$prefix/lib/lmhosts    echo "127.0.0.7    PREEXEC_CL_FL">>$prefix/lib/lmhosts	echo "127.0.0.1" > $prefix/lib/hosts.equiv}test_smbpasswd() {	test_smbpasswd_password="$1"	rm -f $prefix/private/smbpasswd	echo "( echo $test_smbpasswd_password ; echo $test_smbpasswd_password; ) | $prefix/bin/smbpasswd -L -D $loglevel -s -a $whoami"	( echo $test_smbpasswd_password; echo $test_smbpasswd_password; ) | $prefix/bin/smbpasswd -L -D $loglevel -s -a $whoami	status=$?	if [ $status = 0 ]; then	    echo "smbpasswd correctly set initial password ($test_smbpasswd_password)"	else	    echo "smbpasswd failed to set initial password ($test_smbpasswd_password)! (status $status)"	    return 1	fi	return 0}test_smbpasswd_remote() {	test_smbpasswd_rem_password="$1"	test_smbpasswd_rem_newpassword="$2"	echo "( echo $test_smbpasswd_rem_password; echo $test_smbpasswd_rem_newpassword; echo $test_smbpasswd_rem_newpassword; ) | $prefix/bin/smbpasswd -r localhost -s -U $whoami"	( echo $test_smbpasswd_rem_password; echo $test_smbpasswd_rem_newpassword; echo $test_smbpasswd_rem_newpassword; ) | $prefix/bin/smbpasswd -r localhost -s -U $whoami	status=$?	if [ $status = 0 ]; then	    echo "smbpasswd correctly remotely changed password ($test_smbpasswd_rem_password -> $test_smbpasswd_rem_newpassword)"	else	    echo "smbpasswd failed to remotely changed password ($test_smbpasswd_rem_password -> $test_smbpasswd_rem_newpassword)! (status $status)"	    return 1	fi	return 0}test_smbpasswd_local() {	test_smbpasswd_newpassword="$2"	echo "( echo $test_smbpasswd_newpassword ; echo $test_smbpasswd_newpassword; ) | $prefix/bin/smbpasswd -L -s $whoami"	( echo $test_smbpasswd_newpassword ; echo $test_smbpasswd_newpassword; ) | $prefix/bin/smbpasswd -L -s $whoami	status=$?	if [ $status = 0 ]; then	    echo "smbpasswd correctly locally changed password ($test_smbpasswd_password -> $test_smbpasswd_newpassword)"	else	    echo "smbpasswd failed to locallly changed password ($test_smbpasswd_password -> $test_smbpasswd_newpassword)! (status $status)"	    return 1	fi	return 0}test_listfilesauth() {	remote_name="$1"	echo $prefix/bin/smbclient //$remote_name/samba  -n buildclient -U$whoami%$password -c 'ls'	$prefix/bin/smbclient //$remote_name/samba  -n buildclient -U$whoami%$password -c 'ls'	status=$?	if [ $status = 0 ]; then		echo "listed files OK"	else 		echo "listing files with smbd failed with status $status"		return 1	fi	return 0}test_listfilesnpw() {	remote_name="$1"	echo $prefix/bin/smbclient //$remote_name/samba -n buildclient -U$whoami%  -c 'ls'	$prefix/bin/smbclient //$remote_name/samba -n buildclient -U$whoami% -c 'ls'	status=$?	if [ $status = 0 ]; then		echo "smbd listed files with NO PASSWORD on an authenticated share!"		return 1	else 		echo "listing files with smbd failed with status $status (correct)"	fi	return 0}test_listfilesauth_should_deny() {	remote_name="$1"	echo $prefix/bin/smbclient //$remote_name/samba -n buildclient -U$whoami%$password  -c 'ls'	$prefix/bin/smbclient //$remote_name/samba -n buildclient -U$whoami%$password -c 'ls'	status=$?	if [ $status = 0 ]; then		echo "smbd LISTED FILES despite smb.conf entires to the contary!"		return 1	else 		echo "listing files with smbd failed with status $status (correct)"	fi	return 0}echo "LIBSMB_PROG=$LIBSMB_PROG" >&2# Give sensible defaults to some variables.  # "What's my age again?"if [ ! $USER = "" ]; then    whoami=$USERelse     if [ ! $LOGNAME = "" ]; then	whoami=$LOGNAME    else	whoami=build    fifiif test -z "$loglevel"then    loglevel=1fi

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -