#!/bin/bash x=$1 if [ ! -f "$x" ]; then exit fi for i in `cat $x | sed 's;\(</*\)[a-z0-9]*:;\1;g' | sed 's/xmlns="[^"]*"//' | xmllint --xpath /EntityDescriptor//Extensions/UIInfo - 2>/dev/null |grep -E "https?://" | awk -F'[><]' '{print $3}' | sort -u`; do code=`curl -L --connect-timeout 5 --retry 2 -o /dev/null --silent --head --write-out '%{http_code}\n' $i` if [ $code -eq 405 ]; then code=`curl -L --connect-timeout 5 --retry 2 -o /dev/null --silent --write-out '%{http_code}\n' $i` fi if [ $code -ne 200 ]; then echo " Code $code: $x: $i" | sed 's/.*/[1;31m&[0m/' fi done