mc/vfs/extfs/uar.in
Roland Illig de3bc90f37 * audio.in (audiofs_list): Fixed quoting issue.
(audiofs_copyout): Likewise.
	* uar.in (mcarfs_copyin): Likewise.
	* uha.in (mchafs_copyout): Likewise.
	* ulha.in (mc_lha_fs_run): Likewise.
2004-11-10 16:08:00 +00:00

55 lines
979 B
Bash

#!/bin/sh
#
# Written by Alex Kuchma <ask@bcs.zp.ua>
# Alex Tkachenko <alex@bcs.zp.ua>
# Updated by Vitezslav Samel <xsamel00@dcse.fee.vutbr.cz>
#
# (C) 1997, 1998 The Free Software Foundation.
#
#
XAR=ar
mcarfs_list ()
{
$XAR tv "$1" | sed 's,^,-,;s, , 1 ,;s,/, ,'
}
mcarfs_copyout ()
{
$XAR p "$1" "$2" > "$3"
}
mcarfs_copyin ()
{
TMPDIR=`mktemp -d "${MC_TMPDIR:-/tmp}/mctmpdir-uar.XXXXXX"` || exit 1
name=`basename "$2"`
(cd "$TMPDIR" && cp -fp "$3" "$name" && $XAR r "$1" "$name")
rm -rf "$TMPDIR"
}
mcarfs_rm ()
{
$XAR d "$1" "$2"
}
# override any locale for dates
LC_ALL=C
export LC_ALL
umask 077
case "$1" in
list) mcarfs_list "$2" ;;
copyout) shift; mcarfs_copyout "$@" ;;
copyin) shift; mcarfs_copyin "$@" ;;
rm) shift; mcarfs_rm "$@" ;;
mkdir|rmdir)
echo "mcarfs: ar archives cannot contain directories." 1>&2
exit 1;;
*)
echo "mcarfs: unknown command: \"$1\"." 1>&2
exit 1;;
esac
exit 0