1*aca3beaaSApple OSS Distributions#!/bin/bash 2*aca3beaaSApple OSS Distributions 3*aca3beaaSApple OSS Distributions# Ensure all blacklisted files exist. Paths with wildcards are ignored. 4*aca3beaaSApple OSS Distributions# Run against a blacklist with fully-qualified paths. 5*aca3beaaSApple OSS Distributions 6*aca3beaaSApple OSS DistributionsIFS=$'\n' 7*aca3beaaSApple OSS Distributions 8*aca3beaaSApple OSS Distributionsblacklist_files=`sed -n -e ' 9*aca3beaaSApple OSS Distributions # ignore paths with wildcards 10*aca3beaaSApple OSS Distributions /\*/ d 11*aca3beaaSApple OSS Distributions 12*aca3beaaSApple OSS Distributions # strip leading 'src:' 13*aca3beaaSApple OSS Distributions /^src/ { 14*aca3beaaSApple OSS Distributions s/^src:// 15*aca3beaaSApple OSS Distributions p 16*aca3beaaSApple OSS Distributions } 17*aca3beaaSApple OSS Distributions' $1` 18*aca3beaaSApple OSS Distributions 19*aca3beaaSApple OSS Distributionsret=0 20*aca3beaaSApple OSS Distributions 21*aca3beaaSApple OSS Distributionsfor f in $blacklist_files ; do 22*aca3beaaSApple OSS Distributions if ! [[ -e $f ]] ; then 23*aca3beaaSApple OSS Distributions echo "KASan: blacklisted file $f not found" >&2 24*aca3beaaSApple OSS Distributions ret=1 25*aca3beaaSApple OSS Distributions fi 26*aca3beaaSApple OSS Distributionsdone 27*aca3beaaSApple OSS Distributions 28*aca3beaaSApple OSS Distributionsexit $ret 29