protocol_fetch() { local url file RETVAL i server remote_file url="$1" file="$2" server="$(echo $url | cut -d/ -f 3)" remote_file="/$(echo $url | cut -d/ -f 4-)" RETVAL=0 for i in 1 2; do tftp -g -l "$file" -r "$remote_file" "$server" || RETVAL=$? [ $RETVAL = 1 ] || return $RETVAL [ "$TRY_REPEAT" ] || break done return $RETVAL }