#!/bin/sh if [ $# -lt 3 ]; then echo "Too few arguments" echo "Usage: `basename $0` " exit 1 fi ossec_type="$1" ossec_prefix="$2" ossec_file="$3" if [ ! -f "${ossec_file}" ]; then echo "File \"${ossec_file}\" does not exist" exit 1 fi ossec_syscheck_bin_dirs="${ossec_prefix}/bin,${ossec_prefix}/active-response" ossec_syscheck_etc_dirs="${ossec_prefix}/etc" if [ "${ossec_type}" != "agent" ]; then ossec_syscheck_bin_dirs="${ossec_syscheck_bin_dirs},${ossec_prefix}/agentless" ossec_syscheck_etc_dirs="${ossec_syscheck_etc_dirs},${ossec_prefix}/rules" fi replace() { if grep -q "" "${ossec_file}"; then sed -E \ -e 's|||' \ -e 's|||' \ -e "s|%%OSSEC_SYSCHECK_BIN_DIRS%%|${ossec_syscheck_bin_dirs}|" \ -e "s|%%OSSEC_SYSCHECK_ETC_DIRS%%|${ossec_syscheck_etc_dirs}|" \ "${ossec_file}" else sed -E \ -e 's|||' \ -e 's|||' \ -e "s|%%OSSEC_SYSCHECK_BIN_DIRS%%|${ossec_syscheck_bin_dirs}|" \ -e "s|%%OSSEC_SYSCHECK_ETC_DIRS%%|${ossec_syscheck_etc_dirs}|" \ "${ossec_file}" fi } extract() { sed -En '/^$/,/^<\/ossec_config>$/p' } replace | extract