#!/usr/local/bin/cbsd
#v10.2.3
MYARG="root"
MYOPTARG="jname"
MYDESC="Make jail from specified root path"
CBSDMODULE="jail"

. ${subrdir}/nc.subr

. ${cbsdinit}

[ ! -r "${root}" ] && err 1 "${N1_COLOR}No jconf: ${N2_COLOR}${root}${N0_COLOR}"

if [ -z "${jname}" ]; then
	jname=$( freejname default_jailname=${default_jailname} )
fi

[ -z "${jname}" ] && err 1 "${N1_COLOR}Empty jname${N0_COLOR}"

JAILRCCONF="${jailrcconfdir}/rc.conf_${jname}"

${CAT_CMD} > ${JAILRCCONF} << EOF
#  DO NOT EDIT THIS FILE. PLEASE USE INSTEAD:
# cbsd jconfig jname=${jname}

relative_path="0";
path="${root}";
host_hostname="${jname}.my.domain";
ip4_addr="0";
mount_devfs="1";
allow_mount="1";
allow_devfs="1";
allow_nullfs="1";
allow_fusefs="1";
allow_linprocfs="0";
allow_linsysfs="0";
mount_fstab="";
mkhostsfile="1";
devfs_ruleset="4";
baserw="1";
basename="0";
mount_src="0";
mount_obj="0";
mount_ports="0";
mount_kernel="0";
astart="0";
data="${root}";
vnet="0";
applytpl="0";
rcconf="";
floatresolv="0";
exec_start="/bin/sh /etc/rc";
exec_stop="/bin/sh /etc/rc.shutdown";
exec_poststart="0";
exec_poststop="0";
exec_prestart="0";
exec_prestop="0";
exec_master_poststart="0";
exec_master_poststop="0";
exec_master_prestart="0";
exec_master_prestop="0";
interface="0";
slavenode="0";
ver="11";
arch="amd64";
masterhost="0";
exec_timeout="180";
exec_fib="0";
stop_timeout="900";
mount_fdescfs="1";
allow_dying="1";
allow_procfs="1";
allow_reserved_port="1";
allow_tmpfs="1";
allow_read_msgbuf="0";
allow_vmm="0";
sysvsem="new";
sysvshm="new";
sysvmsg="new";
allow_zfs="0";
cpuset="0";
emulator="jail";
emulator_flags="0";
allow_kmem="0";
mdsize="0";
exec_consolelog="0";
jdomain="0";
b_order="10";
jname="${jname}"
EOF

_res=$( jregister jname=${jname} )

if [ $? -eq 1 ]; then
	err 1 "${_res}"
else
	err 0 "${jname}"
fi
