Mercurial > hgrepos > FreeBSD > ports > sysutils > local-bsdtools
comparison sbin/ftjail @ 254:39268cba8c46
FIX: Error handling
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Sun, 11 Sep 2022 21:40:57 +0200 |
| parents | 590007b0e902 |
| children | 68f091c9524a |
comparison
equal
deleted
inserted
replaced
| 253:590007b0e902 | 254:39268cba8c46 |
|---|---|
| 656 local _ds _snap_name | 656 local _ds _snap_name |
| 657 | 657 |
| 658 _ds="${1}" | 658 _ds="${1}" |
| 659 _snap_name="${2}" | 659 _snap_name="${2}" |
| 660 | 660 |
| 661 [ -z "${_ds}" ] && { echo "ERROR: no dataset given" 1>&2; return 2; } | |
| 662 [ -z "${_snap_name}" ] && { echo "ERROR: no snapshot name given" 1>&2; return 2; } | |
| 663 | |
| 661 if ! zfs list -H -o name -t filesystem "${_ds}" 1> /dev/null 2> /dev/null ; then | 664 if ! zfs list -H -o name -t filesystem "${_ds}" 1> /dev/null 2> /dev/null ; then |
| 662 echo "ERROR: parent dataset \`${_ds}' does not exist" 1>&2 | 665 echo "ERROR: parent dataset \`${_ds}' does not exist or is not available" 1>&2 |
| 663 return 1 | 666 return 1 |
| 664 fi | 667 fi |
| 665 | 668 |
| 666 zfs snapshot -r "${_ds}@${_snap_name}" || return | 669 zfs snapshot -r "${_ds}@${_snap_name}" || return |
| 667 } | 670 } |
| 677 | 680 |
| 678 _ds_base="${1-}" | 681 _ds_base="${1-}" |
| 679 _ds_skel="${2-}" | 682 _ds_skel="${2-}" |
| 680 _snap_name="${3-}" | 683 _snap_name="${3-}" |
| 681 | 684 |
| 682 [ -z "${_ds_base}" ] && echo "ERROR: no RO base dataset name given" 1>&2 | 685 # Here extra checks because of better error messages possible |
| 683 [ -z "${_ds_skel}" ] && echo "ERROR: no RW skeleton dataset name given" 1>&2 | 686 [ -z "${_ds_base}" ] && { echo "ERROR: no RO base dataset name given" 1>&2; return 2; } |
| 684 [ -z "${_snap_name}" ] && echo "ERROR: no snapshot name given" 1>&2 | 687 [ -z "${_ds_skel}" ] && { echo "ERROR: no RW skeleton dataset name given" 1>&2; return 2; } |
| 685 | 688 |
| 686 _do_snapshot "${_ds_base}" "${_snap_name}" || return | 689 _do_snapshot "${_ds_base}" "${_snap_name}" || return |
| 687 _do_snapshot "${_ds_skel}" "${_snap_name}" || return | 690 _do_snapshot "${_ds_skel}" "${_snap_name}" || return |
| 688 return 0 | 691 return 0 |
| 689 } | 692 } |
