# mounting-var - Populate /var filesystem
#
# Populates a separate /var filesystem (if any), creating run and lock links

description	"Populate /var filesystem"

start on mounted MOUNTPOINT=/var

task

script
    # Duplicated from mounted-run to handle the case of a separate /var.

    run_migrate () {
	OLD="$1"
	RUN="$2"

	if [ -L "$OLD" ]; then
	    if [ "$(readlink "$OLD")" != "$RUN" ]; then
		# Remove any old (relative?) symlinks.
		rm -f "$OLD"
	    fi
	elif [ -d "$OLD" ]; then
	    # Remove old directories.  This is safe because they are
	    # explicitly ephemeral, and nothing is allowed to use them yet
	    # at this point in the boot.
	    rm -rf "$OLD" 2>/dev/null || true
	fi

	if [ ! -L "$OLD" ]; then
	    ln -fs "$RUN" "$OLD"
	    [ -x /sbin/restorecon ] && /sbin/restorecon "$OLD"
	fi

	return 0
    }

    run_migrate /var/run /run
    run_migrate /var/lock /run/lock
end script
