Hi,
thanks for your reply.
First, please do not forget to keep the mailing list CC'ed. For transparency reasons, we have a policy here stating to keep public conversations public (please refer to https://wiki.ipfire.org/devel/contact for details).
Second, your patches _did_ made it into patchwork. They can be found in the "ipfire" section - for your convenience, here is a list of all active patches submitted by you patchwork currently knows about: https://patchwork.ipfire.org/project/ipfire/list/?submitter=93
Once having logged in, you can mark patches as being "superseded", so they won't appear as being active anymore.
Third, I have seen your updated patch and will comment on it separately the other day.
Thanks, and best regards, Peter Müller
Hello Peter,
thanks for your reply. Sorry for confusion about the patch. I tried to fullfill the requirements, but due to my low experience on the git process it went accidantely wrong.
I will improve & resubmit my patch according to your comments.
What ist the right way to mark patches as obsolete or remove them? My patches doesn‘t seem to enter https://patchwork.ipfire.org.
Regards,
Martin Krieger
Von meinem iPad gesendet
Am 17.05.2021 um 21:31 schrieb Peter Müller peter.mueller@ipfire.org: Hi,
thank you for providing this.
I regret to inform you that
(a) both this patch and it's precursor violate the syntax of patches applicable to git, having parts of the description and various tags mangled into the RFC 5322 / MIME "Subject" header.
You do not need to use "git send-email" as such (personally, I do not use it either, because my development environment cannot establish SMTP connections due to firewall policies). However, IPFire's development heavily relies on Git, so please figure out how to run the most basic commands such as "git commit" and "git format-patch" in order to properly submit your patches.
(b) these patches each success each other, however missing appropriate version tags (such as [PATCH v2], [PATCH v3], etc.) in the RFC 5322 "Subject" header of their mails.
Since you did not mark the obsoleted patches as being superseded in https://patchwork.ipfire.org/, either, this makes it hard to keep track of the latest version of your patch. Eventually, we might apply, commend or reject based on the wrong one, because of simply having overlooked there is a new, fixed version of it available.
Apart from that, it would be good to see this patch tested with IPv6 and dual-stack scenarios as well - please see also my remark(s) on this below. If I understood the documentation of that DDNS provider correctly, you do not really need to supply two IP addresses having distinct families. Could you at least try executing this snippet with two different IPv4 addresses?
README | 1 + src/ddns/providers.py | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+)
diff --git a/README b/README index b6decb35c338..fa6ce5e598b8 100644 --- a/README +++ b/README @@ -68,6 +68,7 @@ SUPPORTED PROVIDERS: easydns.com enom.com entrydns.net
- feste-ip.net freedns.afraid.org inwx.com|de|at|ch|es itsdns.de
diff --git a/src/ddns/providers.py b/src/ddns/providers.py index 56e6620c78ab..009e2c9e337d 100644 --- a/src/ddns/providers.py +++ b/src/ddns/providers.py @@ -1179,6 +1179,33 @@ class DDNSProviderEntryDNS(DDNSProvider): raise DDNSUpdateError
+class DDNSProviderFesteIPNet(DDNSProtocolDynDNS2, DDNSProvider):
handle = "feste-ip.net"
name = "Feste-IP.Net"
website = "https://www.feste-ip.net/"
# Information about the format of the request is to be found
# https://forum.feste-ip.net/viewtopic.php?f=13&t=469
myips = ("myip","myip2")
Personal comment: Kinda ugly, but given the documentation of that provider, there is no other choice to do this here...
url = "https://members.feste-ip.net/nic/update/"
def update(self):
data = {
"hostname" : self.hostname
}
for proto in DDNSProvider.protocols:
idx = 0
tmpip = self.get_address(proto)
if tmpip:
data[self.myips[idx]] = tmpip
idx += 1
self.send_request(data)
What is happening here if $tmpip equals a Boolean False?
class DDNSProviderFreeDNSAfraidOrg(DDNSProvider): handle = "freedns.afraid.org" name = "freedns.afraid.org"
Thanks, and best regards, Peter Müller
Hello Peter,
I marked the obsolete patches as "superseded".
Regards,
Martin Krieger
Peter Müller:
Hi,
thanks for your reply.
First, please do not forget to keep the mailing list CC'ed. For transparency reasons, we have a policy here stating to keep public conversations public (please refer to https://wiki.ipfire.org/devel/contact for details).
Second, your patches _did_ made it into patchwork. They can be found in
the "ipfire" section - for your convenience,
here is a list of all active patches submitted by you patchwork currently knows about: https://patchwork.ipfire.org/project/ipfire/list/?submitter=93
Once having logged in, you can mark patches as being "superseded", so they won't appear as being active anymore.
Third, I have seen your updated patch and will comment on it separately
the other day.
Thanks, and best regards, Peter Müller
Hello Peter,
thanks for your reply. Sorry for confusion about the patch. I tried to
fullfill the requirements, but due to my low experience on the git process it went accidantely wrong.
I will improve & resubmit my patch according to your comments.
What ist the right way to mark patches as obsolete or remove them? My patches doesn‘t seem to enter https://patchwork.ipfire.org.
Regards,
Martin Krieger
Von meinem iPad gesendet
Am 17.05.2021 um 21:31 schrieb Peter Müller peter.mueller@ipfire.org: Hi,
thank you for providing this.
I regret to inform you that
(a) both this patch and it's precursor violate the syntax of patches applicable to git, having parts of the description and various tags mangled into the
RFC 5322 / MIME
"Subject" header. You do not need to use "git send-email" as such (personally, I do
not use it either,
because my development environment cannot establish SMTP connections due to firewall policies). However, IPFire's development heavily relies on Git, so please figure out how to run the most basic commands such as "git commit" and "git format-patch" in order to properly submit your patches.
(b) these patches each success each other, however missing appropriate version tags (such as [PATCH v2], [PATCH v3], etc.) in the RFC 5322 "Subject" header of their mails.
Since you did not mark the obsoleted patches as being superseded in https://patchwork.ipfire.org/, either, this makes it hard to keep track of the latest version of
your patch. Eventually,
we might apply, commend or reject based on the wrong one, because
of simply having
overlooked there is a new, fixed version of it available.
Apart from that, it would be good to see this patch tested with IPv6 and dual-stack scenarios as well - please see also my remark(s) on this below. If I understood
the documentation of
that DDNS provider correctly, you do not really need to supply two IP
addresses having distinct
families. Could you at least try executing this snippet with two different IPv4 addresses?
README | 1 + src/ddns/providers.py | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+)
diff --git a/README b/README index b6decb35c338..fa6ce5e598b8 100644 --- a/README +++ b/README @@ -68,6 +68,7 @@ SUPPORTED PROVIDERS: easydns.com enom.com entrydns.net
- feste-ip.net freedns.afraid.org inwx.com|de|at|ch|es itsdns.de
diff --git a/src/ddns/providers.py b/src/ddns/providers.py index 56e6620c78ab..009e2c9e337d 100644 --- a/src/ddns/providers.py +++ b/src/ddns/providers.py @@ -1179,6 +1179,33 @@ class DDNSProviderEntryDNS(DDNSProvider): raise DDNSUpdateError
+class DDNSProviderFesteIPNet(DDNSProtocolDynDNS2, DDNSProvider):
handle = "feste-ip.net"
name = "Feste-IP.Net"
website = "https://www.feste-ip.net/"
# Information about the format of the request is to be found
# https://forum.feste-ip.net/viewtopic.php?f=13&t=469
myips = ("myip","myip2")
Personal comment: Kinda ugly, but given the documentation of that provider, there is no other choice to do this here...
url = "https://members.feste-ip.net/nic/update/"
def update(self):
data = {
"hostname" : self.hostname
}
for proto in DDNSProvider.protocols:
idx = 0
tmpip = self.get_address(proto)
if tmpip:
data[self.myips[idx]] = tmpip
idx += 1
self.send_request(data)
What is happening here if $tmpip equals a Boolean False?
class DDNSProviderFreeDNSAfraidOrg(DDNSProvider): handle = "freedns.afraid.org" name = "freedns.afraid.org"
Thanks, and best regards, Peter Müller