Merge pull request #171 from rosshettel/port-forwarding-error-handling
Added more robust error handling around checking for new port from PIA
This commit is contained in:
		| @@ -31,10 +31,28 @@ if [ -z ${pia_client_id} ]; then | ||||
| fi | ||||
|  | ||||
| # Get the port | ||||
| pia_response=$(curl -d "user=$pia_username&pass=$pia_passwd&client_id=$pia_client_id&local_ip=$local_vpn_ip" $port_assignment_url) | ||||
| pia_response=$(curl -s -f -d "user=$pia_username&pass=$pia_passwd&client_id=$pia_client_id&local_ip=$local_vpn_ip" $port_assignment_url) | ||||
|  | ||||
| # Check for curl error (curl will fail on HTTP errors with -f flag) | ||||
| ret=$? | ||||
| if [ $ret -ne 0 ]; then | ||||
|      echo "curl encountered an error looking up new port: $ret" | ||||
| fi | ||||
|  | ||||
| # Check for errors in PIA response | ||||
| error=$(echo $pia_response | grep -oE "\"error\".*\"") | ||||
| if [ ! -z "$error" ]; then | ||||
|      echo "PIA returned an error: $error" | ||||
|      exit | ||||
| fi | ||||
|  | ||||
| # Get new port, check if empty | ||||
| new_port=$(echo $pia_response | grep -oE "[0-9]+") | ||||
| echo "Got new port $new_port from pia" | ||||
| if [ -z "$new_port" ]; then | ||||
|     echo "Could not find new port from PIA" | ||||
|     exit | ||||
| fi | ||||
| echo "Got new port $new_port from PIA" | ||||
|  | ||||
| # | ||||
| # Now, set port in Transmission | ||||
| @@ -61,4 +79,3 @@ if [ "$new_port" != "$transmission_peer_port" ] | ||||
|   else | ||||
|     echo "No action needed, port hasn't changed" | ||||
| fi | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user