#!/bin/sh -efu

check_systemd()
{
	local f="$1"; shift || return

	local bad_files
	if bad_files=$(printf '%s\n' "$rpm_filenames" |
			grep -E '/systemd/(system|user)/.*\.(target|service|socket|device|path|mount|automount|swap|timer|slice|scope)$' |
			grep -Ev '^/(usr/share/doc|lib/systemd/system|usr/lib/systemd/(system|user))/'); then
		FileError "invalid systemd unit path: $(oneliner "$bad_files")" "$f"
		return 1
	fi
}

run_check()
{
	if ! check_systemd "$1"; then
		CheckError 'systemd unit path violation'
		return 1
	fi
}
