Commit graph

1507 commits

Author SHA1 Message Date
Richard Hansen
b4c4b5dc54 Move usage generation to a separate function 2024-08-18 00:41:28 -04:00
Richard Hansen
bd688e9750 Add TODO comments for problematic bits of code 2024-08-18 00:41:28 -04:00
Richard Hansen
ab2e0d7999 hetzner: Quote interpolated value in regex
to prevent metacharacter issues.
2024-08-18 00:41:28 -04:00
Richard Hansen
0b79e3bc95 godaddy: Delete redundant condition 2024-08-18 00:41:27 -04:00
Richard Hansen
0c094f6ee8 tests: Fix verbose option for dnsexit2 protocol tests
The `verbose` option is a global option, not a per-host option.
2024-08-18 00:35:44 -04:00
Richard Hansen
a136ba4cdc tests: Fix ssl option for dnsexit2 protocol tests
The `ssl` option is a global option, not a per-host option.  This
commit could instead do:

    local $ddclient::globals{ssl} = 0;

but it's more straightforward to include `http://` in the `server`
option, and it tests that `server` supports the inclusion of the
scheme.
2024-08-18 00:35:44 -04:00
Richard Hansen
598dee50ca
Merge pull request #726 from jeffrego/feature_provider_directnic
Added support for provider Directnic
2024-08-07 00:06:46 -04:00
Jeff Rego
959b5ddc37 Add support for Directnic provider 2024-08-07 00:06:25 -04:00
Jeff Rego
d497422bf9 Add T_URL type for config properties 2024-08-07 00:06:25 -04:00
Richard Hansen
2330543cc8 dyndns2: Add comment explaining why keys are listed in test 2024-08-05 19:57:18 -04:00
Richard Hansen
13a66c79bb
Merge pull request #729 from tamasbakos/master
Removed 5m min-interval from changeip protocol
2024-08-03 18:15:24 -04:00
Tamás
e4d43f0292
Removed min-interval from changeip protocol
Removed the min-interval set to 5 minutes in changeip, because according to my tests, changeip has no problem updating every 30 seconds, which is the default min-interval value in ddclient
2024-08-03 11:11:16 +03:00
Richard Hansen
ab27df6f79
Merge pull request #728 from rhansen/dyndns2
dyndns2: Fix handling of multi-host response, add tests
2024-08-03 03:36:45 -04:00
Richard Hansen
eb281ea47b dnsexit2: Rename test file for consistency 2024-08-03 03:32:35 -04:00
Richard Hansen
3d345ff08b dyndns2: Add tests 2024-08-03 03:32:35 -04:00
Richard Hansen
622abfca2c repr: New utility function to make it easier to dump values
I find Data::Dumper to be awkward to use.  This function wraps it so
that I don't have to keep looking up the perldoc.
2024-08-03 03:25:11 -04:00
Richard Hansen
4f369a3b0b geturl: Simplify headers logic 2024-08-03 03:25:11 -04:00
Richard Hansen
2239b57101 dyndns2: Fix handling of multi-host response 2024-08-03 03:25:11 -04:00
Richard Hansen
7bee2d7c82 dyndns2: Log message improvements 2024-08-03 03:17:52 -04:00
Richard Hansen
143630c7fd dyndns2: Delete rogue comma 2024-08-03 03:17:52 -04:00
Richard Hansen
a99d093eca dyndns2: Whitespace fixes 2024-08-03 03:17:52 -04:00
Richard Hansen
60d1c53a36
Merge pull request #727 from rhansen/logger
Improvements to the new Logger class
2024-08-03 02:44:54 -04:00
Richard Hansen
43ea691e0c Logger: Move log output to parentmost Logger
This makes it possible for tests to redirect log output so that they
can ensure that certain log messages are generated.
2024-08-02 21:37:14 -04:00
Richard Hansen
f4248d0617 Logger: Separate implementation from interface
This makes it easier to override the implementation for testing
purposes.
2024-08-02 21:14:37 -04:00
Richard Hansen
56f8c83d3a Logger: Check label for emptiness, not truthiness 2024-08-02 21:05:42 -04:00
Richard Hansen
0f094ac121 Logger: Check msg and label for definedness 2024-08-02 21:05:41 -04:00
Richard Hansen
15db76f739 Logger: Accept an arrayref of contexts for ctx parameter 2024-08-02 20:42:36 -04:00
Richard Hansen
f36c2f45aa Logger: Always use STDERR as output filehandle
There's no good reason for the caller of the `log` method to control
the output filehandle.
2024-08-02 17:03:56 -04:00
Richard Hansen
439b0fd0e1 Logger: Minimize STDERR override in tests 2024-08-02 17:00:00 -04:00
Richard Hansen
1bdd65e46e Delete unused encode_base64 function 2024-08-02 16:13:56 -04:00
Richard Hansen
dff4cd4854 Logger: Localize override in test 2024-08-02 16:13:56 -04:00
Richard Hansen
37504fe6f2 Logger: Document the log method 2024-08-02 16:13:56 -04:00
Richard Hansen
2e59e86df6
Merge pull request #725 from rhansen/logging
Add context to log messages
2024-07-31 01:03:25 -04:00
Richard Hansen
e036fd0cf6 logging: Use Logger contexts to improve log message readability
This also makes it easier to write useful log messages.
2024-07-31 01:01:00 -04:00
Richard Hansen
9e45aecf20 logging: New Logger class to generally handle context prefixes 2024-07-31 00:39:48 -04:00
Richard Hansen
23bc8cdac3 logging: Move colon from the label to logmsg 2024-07-31 00:39:48 -04:00
Richard Hansen
3262dd0952 logging: Rename pfx to label
This is to prepare for a general log prefix mechanism to improve log
readability.
2024-07-31 00:39:48 -04:00
Richard Hansen
015600d72f logging: Delete unused debug2 function 2024-07-31 00:39:47 -04:00
Richard Hansen
42d635c2df dinahosting: Fix missing argument for log message format specifier
Also use string interpolation for readability and to reduce the
chances of reintroducing a bug like this in the future.
2024-07-31 00:39:47 -04:00
Richard Hansen
706ba713e0 porkbun: Fix IP version in success log message
Fixes a bug introduced in commit:
d8a23ff9a4
2024-07-31 00:39:47 -04:00
Richard Hansen
f5c59c2024 nsupdate: Log success/failure once for all hosts 2024-07-31 00:39:47 -04:00
Richard Hansen
0c2c97123f namecheap: Log message improvements 2024-07-31 00:39:47 -04:00
Richard Hansen
71dc1f92e4 zoneedit1: Fix logged host names 2024-07-31 00:39:47 -04:00
Richard Hansen
9dce53ea4a
Merge pull request #724 from vladmovchan/master
Correct NoIP example
2024-07-31 00:37:41 -04:00
Vladyslav Movchan
af65dd86cf Correct NoIP example
An extra comma in the example causes `401 Unauthorized` / `badauth`
2024-07-31 00:37:04 -04:00
Richard Hansen
9c5160a514 Whitespace fixes 2024-07-30 02:25:05 -04:00
Richard Hansen
5620127c71 Delete unnecessary comments 2024-07-30 02:24:27 -04:00
Richard Hansen
96ada0c79e inwx: Add comment explaining why hostnames are not in update URL 2024-07-29 23:45:55 -04:00
Richard Hansen
32f95526f9
Merge pull request #723 from rhansen/infomaniak
infomaniak: Fix response status processing
2024-07-29 04:09:41 -04:00
Richard Hansen
d380e17aba infomaniak: Fix response status processing
Previously, `nochg` responses were treated as failures and the logged
message for all responses was incorrect (either `undef` or "Unknown
reply from Infomaniak").

Background: Hash values are always scalars, so lists of values can
only be stored in hashes in arrayref form.

The following is legal but does not do what one might expect:

    my %h = (
        a => (1, 2),
        b => (3, 4),
    );

The `=>` operator is just a variant of the comma operator, and lists
in list context are flattened, so the above is equivalent to:

    my %h = ('a', 1, 2, 'b', 3, 4);

which is equivalent to:

    my %h = (
        a => 1,
        2 => 'b',
        3 => 4,
    );

which is obviously not what was intended.
2024-07-29 04:07:15 -04:00