#!/bin/sh
set +x
G_MML_FILE_PATH="/opt/huawei/snas/script/inspect_mml"
source $G_MML_FILE_PATH/CheckItems
CurInspectNum="334"
CurInspectFun="$(GetInspectType $CurInspectNum)"
RESULTFILE="${G_TMP_INSPECT_PATH}tmpResult${CurInspectFun}"
LOG_FILE="/var/log/inspect.log"

>${RESULTFILE}
function LOG
{
    time=$(date)
    echo [${time}][$$][$CurInspectFun]$@ >> $LOG_FILE
}
function testDiff()
{
    local staticFile=$1
    local tarFile=$2
    if [ ! -f "${staticFile}" ]; then
        return 1
    fi
    if [ ! -f "${tarFile}" ]; then
        return 1
    fi
    local srcFileSha256=$(sha256sum "${staticFile}" | awk '{print $1}')
    local tarFileSha256=$(sha256sum "${tarFile}" | awk '{print $1}')
    if [ "is${srcFileSha256}" = "is${tarFileSha256}" ]; then
        return 0
    else
        return 1
    fi
}
function CheckStaticCFG
{
    local isPass=0
    local sha256file="/opt/huawei/snas/script/inspect_mml/sha256_value.txt"
    local changeFile=""

    all_file="$(ls -lt /opt/huawei/snas/static/*.ini | grep -wv "funcver.ini" | awk -F"/" '{print $NF}' | tr "\n" " " 2>&1)"
    for file in ${all_file};do
        originSha256="$(grep -w $file $sha256file | awk -F ':' '{print $2}')"
        targetSha256="$(sha256sum "/opt/huawei/snas/static/${file}" | awk '{print $1}')"
        if [ -n "$originSha256" ];then
            if [ "${originSha256}" != "${targetSha256}" ];then
                isPass=4
                filename=$( echo "${file}" | awk -F/ '{print $NF}' )
                changeFile="${filename} ${changeFile}"
                LOG "[$LINENO]diff:/opt/huawei/snas/static/${file}"
            fi
        elif [ -f "/opt/huawei/deploy/package/snas-public/${file}" ];then
            testDiff /opt/huawei/deploy/package/snas-public/${file} /opt/huawei/snas/static/${file}
            if [ $? -ne 0 ]; then
                isPass=4
                changeFile="${file} ${changeFile}"
                LOG "[$LINENO]diff: /opt/huawei/deploy/package/snas-public/${file} /opt/huawei/snas/static/${file}"
            fi
        fi 
    done

    echo "result:${changeFile:-no change}" >>${RESULTFILE} 2>&1
    echo "${CurInspectFun}_Pass ${isPass}" >>${RESULTFILE} 2>&1
}
CheckStaticCFG



