From fca9b2149bfa5fdc26b22124a4f34cb7b4b82209 Mon Sep 17 00:00:00 2001 From: Lonnie Abelbeck Date: Fri, 20 Jan 2017 15:05:25 -0600 Subject: [PATCH 1/2] Use JSON::PP instead of the (deprecated) JSON::Any --- ddclient | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/ddclient b/ddclient index 3ff2972..caad74f 100755 --- a/ddclient +++ b/ddclient @@ -1949,13 +1949,13 @@ EOM ## load_json_support ###################################################################### sub load_json_support { - my $json_loaded = eval {require JSON::Any}; + my $json_loaded = eval {require JSON::PP}; unless ($json_loaded) { fatal(<<"EOM"); -Error loading the Perl module JSON::Any needed for cloudflare update. +Error loading the Perl module JSON::PP needed for cloudflare update. EOM } - import JSON::Any; + import JSON::PP (qw/decode_json/); } ###################################################################### ## geturl @@ -4273,9 +4273,9 @@ sub nic_cloudflare_update { # Strip header $reply =~ s/^.*?\n\n//s; - my $response = JSON::Any->jsonToObj($reply); - if ($response->{result} eq 'error') { - failed ("%s", $response->{msg}); + my $response = eval {decode_json($reply)}; + if (!defined $response || !defined $response->{result}) { + failed ("invalid json or result."); next; } @@ -4300,9 +4300,9 @@ sub nic_cloudflare_update { # Strip header $reply =~ s/^.*?\n\n//s; - $response = JSON::Any->jsonToObj($reply); - if ($response->{result} eq 'error') { - failed ("%s", $response->{msg}); + $response = eval {decode_json($reply)}; + if (!defined $response || !defined $response->{result}) { + failed ("invalid json or result."); next; } @@ -4326,9 +4326,9 @@ sub nic_cloudflare_update { # Strip header $reply =~ s/^.*?\n\n//s; - $response = JSON::Any->jsonToObj($reply); - if ($response->{result} eq 'error') { - failed ("%s", $response->{msg}); + $response = eval {decode_json($reply)}; + if (!defined $response || !defined $response->{result}) { + failed ("invalid json or result."); } else { success ("%s -- Updated Successfully to %s", $domain, $ip); From 7321959383e90e22f4932ee559fbc54367e1f882 Mon Sep 17 00:00:00 2001 From: Lonnie Abelbeck Date: Sat, 21 Jan 2017 07:06:13 -0600 Subject: [PATCH 2/2] cosmetic, remove stray space indent --- ddclient | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ddclient b/ddclient index caad74f..6053c1c 100755 --- a/ddclient +++ b/ddclient @@ -4274,7 +4274,7 @@ sub nic_cloudflare_update { # Strip header $reply =~ s/^.*?\n\n//s; my $response = eval {decode_json($reply)}; - if (!defined $response || !defined $response->{result}) { + if (!defined $response || !defined $response->{result}) { failed ("invalid json or result."); next; }