New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ddclient: Make it work. #21417
ddclient: Make it work. #21417
Conversation
What is the rationale for the default server? Is that the overwhelming
case? Is there value to ensure that users make the server explicit,
considering they may be sending passwords?
…On Sun, Dec 25, 2016, 17:34 Mention Bot ***@***.***> wrote:
@Baughn <https://github.com/Baughn>, thanks for your PR! By analyzing the
history of the files in this pull request, we identified @eduarrrd
<https://github.com/eduarrrd>, @tomberek <https://github.com/tomberek>
and @rbvermaa <https://github.com/rbvermaa> to be potential reviewers.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#21417 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAK5DCFfaxzt_mlt76kEeg-2lBwgEb13ks5rLu-QgaJpZM4LVepR>
.
|
@tomberek This client is primarily for dyn.com's DNS service, so members.dyndns.org would be the overwhelmingly common case. By default that's the server the client contacts. However, the way the module is coded at present leads to including a blank server= line in the configuration file, which makes parsing fail and stops it from working at all. |
I'm with tomberek here. Unless it is a highly exceptional case not to use dyndns.com it should not be default. So far, I don't know anyone using it (I certainly don't) but I open to any evidence. In general I doubt that the majority of dynamic DNS user use an oracle-owned pay-only service. Also I'm not convinced by the broken config file. If you don't set the other parameters such as domain or user it doesn't work either. Why is the path quoted? It's a simple value (https://nixos.org/nix/manual/#idm140737318208368). |
Well, according to the documentation, the default value for server (presuming none is set) is members.dyndns.org. I simply copied that. At the moment ddclient simply doesn't work at all unless you manually set the server, so I fail to see how this isn't an improvement. As for the path, |
I use it with an alternate, but compatible dynamic DNS service. I'm not
against a defsult, but do like forcing it to be explicit for a user;
perhaps fix documentation instead?
I think the point behind the comparison was to detect if someone (like me)
wanted to place a full config file somewhere instead of using the options.
This keeps any secrets out of the Nix store. Will this change that?
Obviously the right answer is to fix the secrets management fire Nix, but
that's been an issue for years.
…On Mon, Dec 26, 2016, 16:02 Svein Ove Aas ***@***.***> wrote:
Well, according to the documentation, the default value
<https://sourceforge.net/p/ddclient/wiki/usage/> for server (presuming
none is set) is members.dyndns.org. I simply copied that. At the moment
ddclient simply doesn't work at all unless you manually set the server, so
I fail to see how this isn't an improvement.
As for the path, /etc/ddclient.conf does not compare equal to
"/etc/ddclient.conf".
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#21417 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAK5DF3ipMx4YG3ufP3XHwUlWumOjjtTks5rMCtRgaJpZM4LVepR>
.
|
No. It fixes a false negative, I don't see how it could add any false positives. As for the rest of it... I wouldn't object strongly to making the lack of an explicit server a fatal error instead of silently constructing a non-working configuration, but I stand by my patch. Users of ddclient on different OSs do not need to explicitly state their server, if they use Dyn, and IMO therefore neither should we. A number of the example configs you can look up won't even include their server address, since it's the default, so it might be a mite confusing if it's needed. |
Default fix; okay. If it's the majority then let's go with making it easy.
Comparison fix; does it fail when someone doesn't set a path? I did not
really test that too much because I use the feature of an alternate path.
Any other thoughts?
…On Mon, Dec 26, 2016, 18:43 Svein Ove Aas ***@***.***> wrote:
I think the point behind the comparison was to detect if someone (like me)
wanted to place a full config file somewhere instead of using the options.
This keeps any secrets out of the Nix store. Will this change that?
No. It fixes a false negative, I don't see how it could add any false
positives.
As for the rest of it... I wouldn't object strongly to making the lack of
an explicit server a fatal error instead of silently constructing a
non-working configuration, but I stand by my patch. Users of ddclient on
different OSs do not need to explicitly state their server, if they use
Dyn, and IMO therefore neither should we.
A number of the example configs you can look up won't even include their
server address, since it's the default, so it might be a mite confusing if
it's needed.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#21417 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAK5DMGcpqjVuwwiEbZPwo2l5z0N5pC_ks5rMFEngaJpZM4LVepR>
.
|
Comparison fix: The comparison always fails in the existing code, presumably because strings do not compare equal to their equivalent path. This doesn't make nixos-rebuild fail, but it leads to ddclient crashing on startup because /etc/ddclient.conf is not actually generated. |
Default fix: Still don't think this is a good idea. a) upstream default may change. In that case this will break hard for everyone relying on the default (which according to your speculation is almost everyone). Best of all: there would be no mitigation. b) I don't think many people are using this. The default made sense when there was a free tier and it was not owned by everyone's darling Oracle. |
I don't have an opinion on the server option but one of the fixes should be implemented. Both sound fair to me. Cherry-picked ee5ff81 into master for the time being. |
Motivation for this change
ddclient did not work when using structured config. Now it does.
Things done
(nix.useSandbox on NixOS,
or option
build-use-sandbox
innix.conf
on non-NixOS)
nix-shell -p nox --run "nox-review wip"
./result/bin/
)