diff options
author | P. J. McDermott <pj@pehjota.net> | 2015-12-06 23:58:44 (EST) |
---|---|---|
committer | P. J. McDermott <pj@pehjota.net> | 2015-12-06 23:58:44 (EST) |
commit | 778eac65d35163a2c25b2c3fbacffd7ee724e58d (patch) | |
tree | d7bb69d53d9cdc3925ce76fb85587dd60858ffd4 /lib/block.sh | |
parent | 21316880285d9d406e7732b393a13a95329dee15 (diff) |
Move lib/*.sh to src/
Diffstat (limited to 'lib/block.sh')
-rw-r--r-- | lib/block.sh | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/lib/block.sh b/lib/block.sh deleted file mode 100644 index f056305..0000000 --- a/lib/block.sh +++ /dev/null @@ -1,86 +0,0 @@ -# Functions for mounting and unmounting block devices -# -# Copyright (C) 2015 Patrick "P. J." McDermott -# -# This file is part of the ProteanOS Development Kit. -# -# The ProteanOS Development Kit is free software: you can redistribute -# it and/or modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# The ProteanOS Development Kit is distributed in the hope that it -# will be useful, but WITHOUT ANY WARRANTY; without even the implied -# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with the ProteanOS Development Kit. If not, see -# <http://www.gnu.org/licenses/>. - -is_block() -{ - local dev="${1}" - - [ -b "${dev}" ] - return ${?} -} - -check_block() -{ - local dev="${1}" - - if ! [ -b "${dev}" ]; then - error 2 "$(get_msg 'block_device_invalid')" "${dev}" - fi -} - -block_mount() -{ - local dev="${1}" - local dir= - - check_block "${dev}" - - rand - dir="$(get_vardata_dir 'mount')/block-$(printf '%010d' ${rand_x})" - if ! mkdir "${dir}"; then - error 2 "$(get_msg 'block_mkdir_fail')" "${dir}" - fi - - if ! mount "${dev}" "${dir}"; then - rmdir "${dir}" - error 2 "$(get_msg 'block_mount_fail')" "${dev}" - fi - - printf '%s' "${dir}" - return 0 -} - -block_umount() -{ - local dir="${1}" - local i= - local timed_out= - - i=0 - timed_out=false - while ! umount "${dir}"; do - i=$(($i + 1)) - if [ ${i} -eq 10 ]; then - timed_out=true - break - fi - sleep 1 - done - - if ${timed_out}; then - error 2 "$(get_msg 'block_umount_fail')" "${dir}" - fi - - if ! rmdir "${dir}"; then - error 2 "$(get_msg 'block_rmdir_fail')" "${dir}" - fi - - return 0 -} |