xref: /illumos-gate/usr/src/cmd/smbsrv/fksmbd/Run.sh (revision 4f0ce1da)
1b819cea2SGordon Ross#!/bin/sh
2b819cea2SGordon Ross
3b819cea2SGordon Ross#
4b819cea2SGordon Ross# This file and its contents are supplied under the terms of the
5b819cea2SGordon Ross# Common Development and Distribution License ("CDDL"), version 1.0.
6b819cea2SGordon Ross# You may only use this file in accordance with the terms of version
7b819cea2SGordon Ross# 1.0 of the CDDL.
8b819cea2SGordon Ross#
9b819cea2SGordon Ross# A full copy of the text of the CDDL should have accompanied this
10b819cea2SGordon Ross# source.  A copy of the CDDL is also available via the Internet at
11b819cea2SGordon Ross# http://www.illumos.org/license/CDDL.
12b819cea2SGordon Ross#
13b819cea2SGordon Ross
14b819cea2SGordon Ross#
15*4f0ce1daSGordon Ross# Copyright 2013-2021 Tintri by DDN, Inc. All rights reserved.
16b819cea2SGordon Ross#
17b819cea2SGordon Ross
18b819cea2SGordon Ross# Helper program to run fksmbd (user-space smbd for debugging)
19b819cea2SGordon Ross# using binaries from the proto area.
20b819cea2SGordon Ross
21b819cea2SGordon Ross[ -n "$ROOT" ] || {
22b819cea2SGordon Ross  echo "Need a bldenv to set ROOT=..."
23b819cea2SGordon Ross  exit 1;
24b819cea2SGordon Ross}
25b819cea2SGordon Ross
26b819cea2SGordon Rossif [[ ! -w /var/smb || ! -w /var/run/smb ]]
27b819cea2SGordon Rossthen
28b819cea2SGordon Ross  echo "Need to create/chown/chmod /var/smb /var/run/smb"
29b819cea2SGordon Ross  echo "mkdir -p /var/run/smb"
30b819cea2SGordon Ross  echo "chown -R $USER /var/smb /var/run/smb"
31b819cea2SGordon Ross  echo "chmod -R a+rw  /var/smb /var/run/smb"
32b819cea2SGordon Ross  exit 1;
33b819cea2SGordon Rossfi
34b819cea2SGordon Ross
3512b65585SGordon Rossif [[ ! -r /var/smb/smbpasswd ]]
3612b65585SGordon Rossthen
3712b65585SGordon Ross  echo "Need readable /var/smb/smbpasswd, i.e."
3812b65585SGordon Ross  echo 'chgrp staff /var/smb/smbpasswd'
3912b65585SGordon Ross  echo 'chmod 440   /var/smb/smbpasswd'
4012b65585SGordon Ross  exit 1;
4112b65585SGordon Rossfi
4212b65585SGordon Ross
4312b65585SGordon Rossif [[ -e /var/smb/.pwd.lock && ! -w /var/smb/.pwd.lock ]]
4412b65585SGordon Rossthen
4512b65585SGordon Ross  echo "Need to cleanup /var/smb/.pwd.lock, i.e."
4612b65585SGordon Ross  echo "rm -f /var/smb/.pwd.lock"
4712b65585SGordon Ross  exit 1;
4812b65585SGordon Rossfi
4912b65585SGordon Ross
5012b65585SGordon Ross# OK, setup env. to run it.
5112b65585SGordon Ross
52b819cea2SGordon Rossexport SMBD_DOOR_NAME="/tmp/fksmbd_door"
53b819cea2SGordon Rossexport SMB_SHARE_DNAME="/tmp/fksmbshare_door"
54b819cea2SGordon Ross
55*4f0ce1daSGordon Rossexport PATH_PKCS11_CONF=$ROOT/etc/crypto/pkcs11.conf
56*4f0ce1daSGordon Ross
57*4f0ce1daSGordon RossLD_LIBRARY_PATH=$ROOT/usr/lib/smbsrv:$ROOT/usr/lib:$ROOT/usr/lib:$ROOT/lib
58b819cea2SGordon Rossexport LD_LIBRARY_PATH
59b819cea2SGordon Ross
60c51c88bdSMatt Barden# Enable everything, for debugging
61e472a1cdSGordon Rossexport SMB_MAX_PROTOCOL=311
62c51c88bdSMatt Bardenexport SMB_SIGNING=require
63c51c88bdSMatt Barden
64b819cea2SGordon Ross# normally runs with cwd=/ but this is more careful
65b819cea2SGordon Rosscd /var/smb
66b819cea2SGordon Ross
67b819cea2SGordon Ross# run with the passed options
68b819cea2SGordon Rossexec $ROOT/usr/lib/smbsrv/fksmbd "$@"
69