Commit graph

1507 commits

Author SHA1 Message Date
Richard Hansen
8262f112ea nic_updateable: Read option value after loading config 2024-07-26 23:58:20 -04:00
Richard Hansen
1ad9b565bd nic_updateable: Don't warn about success
Why issue a warning that things have suddenly started going well?
It's bizarre.
2024-07-26 23:58:20 -04:00
Richard Hansen
1054e162fa query_cisco: Use host-specific option value 2024-07-26 23:50:14 -04:00
Richard Hansen
0392c5e725 query_cisco: Delete redundant warning
The same message is already logged in `get_ipv4`.
2024-07-26 23:50:14 -04:00
Richard Hansen
e891f53345 update_nics: Consistently use --opt instead of opt 2024-07-26 23:50:04 -04:00
Richard Hansen
5d68b11d78 get_ipv6: Factor out check for deprecated value 2024-07-26 23:50:04 -04:00
Richard Hansen
2530adb39e get_ip: Log message improvements 2024-07-26 23:50:04 -04:00
Richard Hansen
b9d372c12d get_ip: Allow $arg to be undefined
This is simpler, and makes it possible to distinguish unset from set
to an empty string.
2024-07-26 23:49:48 -04:00
Richard Hansen
0ea2f06513 get_ip: Don't mutate $arg
This makes log messages easier to understand.
2024-07-26 19:05:47 -04:00
Richard Hansen
ccc205301a Delete old test code
It's better to start a test HTTP server or override `@curl` from tests
in `t/*.pl`.
2024-07-26 19:05:47 -04:00
Richard Hansen
6ddecb4ecc Replace use vars with our
From the documentation for `vars`:

> NOTE: For use with variables in the current package for a single
> scope, the functionality provided by this pragma has been superseded
> by "our" declarations, available in Perl v5.6.0 or later, and use of
> this pragma is discouraged.
2024-07-26 19:05:47 -04:00
Richard Hansen
356c3354bd
Merge pull request #718 from rhansen/force_update
Cleanups to forced update logic
2024-07-26 19:04:36 -04:00
Richard Hansen
89d7193f69 nic_updateable: Simplify option changed detection logic 2024-07-26 18:15:21 -04:00
Richard Hansen
38a4e9eeef nic_updateable: Remove unnecessary force_update parameter
`nic_updateable` can look up the host's `force_update` function itself
so there's no need to pass it as an argument.
2024-07-26 17:24:49 -04:00
Richard Hansen
0ffffb1400 Delete unnecessary force_update => undef lines 2024-07-26 17:21:11 -04:00
Richard Hansen
5a8bee1e4d Delete unnecessary nic_dyndns2_force_update
The `nic_updateable` function already checks the variables to see if
they have changed, so this function is redundant.
2024-07-26 17:06:09 -04:00
Richard Hansen
2a9abc9d4c Delete unused nic_easydns_force_update function 2024-07-26 17:04:12 -04:00
Richard Hansen
59ff497c1b
Merge pull request #717 from jameskimmel/patch-1
delete unused zoneedit force update
2024-07-24 13:53:42 -04:00
jameskimmel
bcfdf70c34
delete unused zoneedit force update
I think this sub is never used.
2024-07-23 18:53:27 +02:00
Richard Hansen
482be5ce46
Merge pull request #716 from rhansen/defunct
Delete defunct services
2024-07-23 00:12:49 -04:00
Richard Hansen
9996c1b7d4 googledomains: Remove support for defunct service 2024-07-22 23:28:33 -04:00
Richard Hansen
ddfa8663ad woima: Remove support for defunct service 2024-07-22 23:26:41 -04:00
Richard Hansen
cf078017c2
Merge pull request #713 from rhansen/easydns
easydns: Multiple fixes and cleanups
2024-07-21 23:18:49 -04:00
Richard Hansen
3c68abe551 easydns: Fix incorrect status value on success 2024-07-20 03:44:05 -04:00
Richard Hansen
a7feb95091 easydns: Add missing OK and NO_AUTH result codes 2024-07-20 03:44:05 -04:00
Richard Hansen
d8c74169ee easydns: Include the full ILLEGAL INPUT result code in log messages 2024-07-20 03:44:05 -04:00
Richard Hansen
a724084114 easydns: Fix extraction of result code from response body
The server returns a full HTML document, not just the result code.
Change equality check to a regex match that is resilient to
server-side changes.
2024-07-20 03:44:05 -04:00
Richard Hansen
435357ac50 easydns: Invert condition to improve readability 2024-07-20 03:44:04 -04:00
Richard Hansen
da26fe76e0 easydns: Update IPv4 and IPv6 separately
https://kb.easydns.com/knowledge/dynamic-dns/ doesn't say anything
about repeating the `myip` parameter, or that both IPv4 and IPv6
addresses can be included in the same `myip` parameter.

Unfortunately it also doesn't say whether updating the IPv4 address
alone will nuke the IPv6 AAAA record, or whether updating the IPv6
address alone will nuke the IPv4 A record (like Google Domains used to
do).  Here's hoping that the A and AAAA records are truly independent.
2024-07-20 03:44:04 -04:00
Richard Hansen
7a4b96e04e easydns: Delete incorrect handling of TOOSOON error
Before:
  * `$scale` was ignored causing it to set `wtime` to 5s in the
    future, which is too brief.  Fortunately, `min-error-interval`
    applied which prevented overly aggressive retries.
  * The lack of call to `failed` meant that `$result` was not set to
    "FAILED" and thus `mail-failure` recipients were not emailed.

Now `TOOSOON` is treated like any other error and will result in a
retry after `min-error-interval` (default: 5m).
2024-07-20 03:35:56 -04:00
Richard Hansen
fb990208b3 easydns: Consolidate lines for readability 2024-07-20 03:35:56 -04:00
Richard Hansen
6992a34028 easydns: Simplify response processing 2024-07-20 03:35:56 -04:00
Richard Hansen
7a2625b7a7 easydns: Refine log messages
* Consistently use just the hostname as the log message prefix.
  * Delete redundant verbose log message.
  * Log IPv4 and IPv6 separately in case `$ipv4` or `$ipv6` is
    `undef`.
  * Don't log the full line when a known error result is returned.
  * For unknown results, don't wrap the line in parentheses.
  * Use string interpolation for readability.
2024-07-20 03:35:56 -04:00
Richard Hansen
94c304601e easydns: Increase default min-interval to 10m 2024-07-20 03:35:56 -04:00
Richard Hansen
e7ad0e8e6e easydns: Whitespace fixes 2024-07-20 03:35:46 -04:00
Richard Hansen
c57f4b0d56 ChangeLog.md: Fix PR URL 2024-07-20 03:35:45 -04:00
Richard Hansen
2792689c35 ChangeLog.md: Fix PR URLs 2024-07-20 03:06:52 -04:00
Richard Hansen
e142d6a5ac
Merge pull request #712 from rhansen/geturl
Delete `--geturl` command-line argument and `geturl` option
2024-07-19 18:10:19 -04:00
Richard Hansen
3a57ca1374 Delete --geturl command-line argument and geturl option
They are not used in any tests, and `curl` is a better choice anyway.
2024-07-19 18:06:28 -04:00
Richard Hansen
dab67eae69 README.md: Revise troubleshooting section
* Use a bulleted list instead of a numbered list
  * Fix indentation
  * Fix formatting
  * Replace `fw` with `fwv4`
  * Suggest `curl` instead of `ddclient --geturl`
  * etc.
2024-07-19 18:06:28 -04:00
Richard Hansen
dfef6b2e99
Merge pull request #711 from rhansen/godaddy
godaddy: readability improvements
2024-07-19 16:36:24 -04:00
Richard Hansen
12b2c0d03d godaddy: Inline some unnecessary variables 2024-07-19 16:21:37 -04:00
Richard Hansen
bdc69d879f geturl: Accept an arrayref for headers 2024-07-19 16:21:37 -04:00
Richard Hansen
b9144c01c2 godaddy: Use eq for string equality
`==` is for numeric equality.
2024-07-19 16:21:37 -04:00
Richard Hansen
4b2155a43c godaddy: Combine URL lines to improve readability
Also drop unnecessary curly braces for consistency.
2024-07-19 16:18:14 -04:00
Richard Hansen
6e98c0cdb2 godaddy: Invert conditional to improve readability 2024-07-19 16:17:50 -04:00
Richard Hansen
b1c0029604 godaddy: Simplify for loop 2024-07-19 16:17:49 -04:00
Richard Hansen
3258ea34c0 godaddy: Shorten variables for brevity and consistency 2024-07-19 16:17:19 -04:00
Richard Hansen
56f4a2afe2 godaddy: Don't bother setting status on error
It's initialized to a non-'good' value before the function is called,
and ddclient doesn't distinguish between different non-good values, so
it is sufficient to leave it alone.
2024-07-19 16:16:44 -04:00
Richard Hansen
e01ed55a58 godaddy: Simplify and improve error messages 2024-07-19 16:16:21 -04:00