--- rpms/smeserver-ddclient/contribs10/smeserver-ddclient-1.3.0-Update-SM2-code-for-new-services-and-protocols.patch 2023/12/13 16:19:50 1.4 +++ rpms/smeserver-ddclient/contribs10/smeserver-ddclient-1.3.0-Update-SM2-code-for-new-services-and-protocols.patch 2023/12/18 13:53:48 1.10 @@ -1,7 +1,24 @@ +diff -urN smeserver-ddclient-1.3.0.old/createlinks smeserver-ddclient-1.3.0/createlinks +--- smeserver-ddclient-1.3.0.old/createlinks 2023-11-10 16:11:05.855271810 +0000 ++++ smeserver-ddclient-1.3.0/createlinks 2023-12-18 10:52:53.495714627 +0000 +@@ -48,3 +48,6 @@ + $event = 'post-upgrade'; + templates2events("/etc/ddclient/ddclient.conf", $event); + templates2events("/etc/ppp/ip-up.local", $event); ++ ++# and create an empty cache ++# safe_touch("/var/cache/ddclient/ddclient.cache") diff -urN smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/10Headers smeserver-ddclient-1.3.0/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/10Headers --- smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/10Headers 2023-11-10 16:11:05.911271972 +0000 -+++ smeserver-ddclient-1.3.0/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/10Headers 2023-12-04 14:55:00.000000000 +0000 -@@ -57,10 +57,11 @@ ++++ smeserver-ddclient-1.3.0/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/10Headers 2023-12-14 11:40:00.000000000 +0000 +@@ -52,15 +52,16 @@ + } elsif ( $method eq 'ip') { + # we want to force manually + $OUT.="usev4=ipv4, ipv4=$ForceIP \n"; +- } elsif ( $method eq 'cmd') { +- $OUT .="usev4=cmd, cmdv4='$cmd'\n"; ++ } elsif ( $method eq 'cmdv4') { ++ $OUT .="usev4=cmdv4, cmdv4='$cmd'\n"; } else { # fw method my $fwaddress = $ddclient{'fwaddress'}||''; @@ -14,9 +31,42 @@ diff -urN smeserver-ddclient-1.3.0.old/r $OUT .= ", fw-login=$fwlogin " if ( $fwlogin ne '' ); $OUT .= ", fw-password=$fwpassword " if ( $fwpassword ne '' ); $OUT .= ", fwv4-skip='$fwskip' " if ( $fwskip ne '' ); +diff -urN smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/30FreeHosts smeserver-ddclient-1.3.0/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/30FreeHosts +--- smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/30FreeHosts 2023-11-10 16:11:05.913271977 +0000 ++++ smeserver-ddclient-1.3.0/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/30FreeHosts 2023-12-18 13:45:00.000000000 +0000 +@@ -93,5 +93,9 @@ + } + } + } ++ my $file = '/var/cache/ddclient/ddclient.cache'; ++ # Execute the shell command to clear the file ++ system("rm -f '' > $file"); ++ + } + +diff -urN smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/usr/lib/systemd/system/ddclient.service.d/50koozali.conf/20Service smeserver-ddclient-1.3.0/root/etc/e-smith/templates/usr/lib/systemd/system/ddclient.service.d/50koozali.conf/20Service +--- smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/usr/lib/systemd/system/ddclient.service.d/50koozali.conf/20Service 2023-11-10 16:11:05.857271816 +0000 ++++ smeserver-ddclient-1.3.0/root/etc/e-smith/templates/usr/lib/systemd/system/ddclient.service.d/50koozali.conf/20Service 2023-12-16 10:40:00.000000000 +0000 +@@ -1,7 +1,7 @@ + { + $debug = (($ddclient{'debug'} eq 'enabled') ? "debug" : "nodebug"); + $verbose = (($ddclient{'verbose'} eq 'enabled') ? "verbose" : "noverbose"); +-$quiet = (($ddclient{'quiet'} eq 'enabled') ? "quiet" : "noquiet"); ++$quiet = (($ddclient{'quiet'} eq 'disabled') ? "noquiet" : "quiet"); + $syslog = (($ddclient{'syslog'} eq "enabled") ? "syslog" : "nosyslog"); + $OUT .= "\n"; + $OUT .= "[Service]\n"; +diff -urN smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates.metadata/etc/ddclient/ddclient.conf smeserver-ddclient-1.3.0/root/etc/e-smith/templates.metadata/etc/ddclient/ddclient.conf +--- smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates.metadata/etc/ddclient/ddclient.conf 2023-11-10 16:11:05.785271609 +0000 ++++ smeserver-ddclient-1.3.0/root/etc/e-smith/templates.metadata/etc/ddclient/ddclient.conf 2023-12-15 11:54:47.841967164 +0000 +@@ -1,3 +1,3 @@ + UID="ddclient" + GID="ddclient" +-PERMS=0644 ++PERMS=0600 diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm 2023-11-10 16:11:05.915271983 +0000 -+++ smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm 2023-12-13 16:00:00.000000000 +0000 ++++ smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm 2023-12-14 11:33:00.000000000 +0000 @@ -114,90 +114,164 @@ my %ddc_datas = (); @@ -93,21 +143,21 @@ diff -urN smeserver-ddclient-1.3.0.old/r + # Web Services from which it can get ip address + # + my $webservices = ( [ -+ [ 'dyndnshttp://checkip.dyndns.org/' => 'dyndns' ], -+ [ 'freednshttps://freedns.afraid.org/dynamic/check.php' => 'freedns' ], -+ [ 'googledomainshttps://domains.google.com/checkip' => 'googledomains' ], -+ [ 'hehttps://checkip.dns.he.net/' => 'he' ], -+ [ 'ip4only.mehttps://ip4only.me/api/' => 'ip4only.me' ], -+ [ 'ip6only.mehttps://ip6only.me/api/' => 'ip6only.me' ], -+ [ 'ipify-ipv4https://api.ipify.org/' => 'ipify-ipv4' ], -+ [ 'ipify-ipv6https://api6.ipify.org/' => 'ipify-ipv6' ], -+ [ 'loopiahttps://dns.loopia.se/checkip/checkip.php' => 'loopia' ], -+ [ 'myonlineportalhttps://myonlineportal.net/checkip' => 'myonlineportal' ], -+ [ 'noip-ipv4http://ip1.dynupdate.no-ip.com/' => 'noip-ipv4' ], -+ [ 'noip-ipv6http://ip1.dynupdate6.no-ip.com/' => 'noip-ipv6' ], -+ [ 'nsupdate.info-ipv4https://ipv4.nsupdate.info/myip' => 'nsupdate.info-ipv4' ], -+ [ 'nsupdate.info-ipv6https://ipv6.nsupdate.info/myip' => 'nsupdate.info-ipv6' ], -+ [ 'zoneedithttps://dynamic.zoneedit.com/checkip.html' => 'zoneedit' ] ++ [ 'dyndns-http://checkip.dyndns.org/' => 'dyndns' ], ++ [ 'freedns-https://freedns.afraid.org/dynamic/check.php' => 'freedns' ], ++ [ 'googledomains-https://domains.google.com/checkip' => 'googledomains' ], ++ [ 'he-https://checkip.dns.he.net/' => 'he' ], ++ [ 'ip4only.me-https://ip4only.me/api/' => 'ip4only.me' ], ++ [ 'ip6only.me-https://ip6only.me/api/' => 'ip6only.me' ], ++ [ 'ipify-ipv4-https://api.ipify.org/' => 'ipify-ipv4' ], ++ [ 'ipify-ipv6-https://api6.ipify.org/' => 'ipify-ipv6' ], ++ [ 'loopia:-https://dns.loopia.se/checkip/checkip.php' => 'loopia' ], ++ [ 'myonlineportal-https://myonlineportal.net/checkip' => 'myonlineportal' ], ++ [ 'noip-ipv4-http://ip1.dynupdate.no-ip.com/' => 'noip-ipv4' ], ++ [ 'noip-ipv6-http://ip1.dynupdate6.no-ip.com/' => 'noip-ipv6' ], ++ [ 'nsupdate.info-ipv4-https://ipv4.nsupdate.info/myip' => 'nsupdate.info-ipv4' ], ++ [ 'nsupdate.info-ipv6-https://ipv6.nsupdate.info/myip' => 'nsupdate.info-ipv6' ], ++ [ 'zoneedit-https://dynamic.zoneedit.com/checkip.html' => 'zoneedit' ] + ] ); + return $webservices + @@ -278,7 +328,7 @@ diff -urN smeserver-ddclient-1.3.0.old/r + [ $c->l('Router/Firewall') => 'router' ], + [ $c->l('Interface') => 'if' ], + [ $c->l('IP') => 'ip' ], -+ [ $c->l('Command') => 'cmd' ] ++ [ $c->l('Command') => 'cmdv4' ] + ] ); @@ -641,26 +691,96 @@ diff -urN smeserver-ddclient-1.3.0.old/r else { diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm 2023-11-10 16:11:05.916271986 +0000 -+++ smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm 2023-12-01 16:35:00.000000000 +0000 -@@ -80,7 +80,7 @@ ++++ smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm 2023-12-18 09:29:00.000000000 +0000 +@@ -80,46 +80,48 @@ 'CLOUDNS'=>'CLOUDNS www.cloudns.net', # End of Service descriptions -# v3.11.1 Service descriptions: -+# v3.11.x Service descriptions: - "1984" => "https://kb.1984hosting.com/doku.php?id=freedns", - "changeip" => "https://changeip.com", - "cloudflare" => "https://cloudflare.com", -@@ -118,7 +118,7 @@ - "woima" => "http://woima.com", - "yandex" => "https://yandex.com", - "zoneedit" => "https://www.zoneedit.com/dynamic-dns/", +-"1984" => "https://kb.1984hosting.com/doku.php?id=freedns", +-"changeip" => "https://changeip.com", +-"cloudflare" => "https://cloudflare.com", +-"cloudns" => "https://cloudns.com", +-"digitalocean" => "https://digitalocean.com", +-"dinahosting" => "https://dinahosting.com", +-"dnsexit" => "https://dnsexit.com/", +-"dnsmadeeasy" => "https://dnsmadeeasy.com", +-"domeneshop" => "https://domeneshop.com", +-"dondominio" => "https://dondominio.com", +-"dslreports" => "https://www.dslreports.com/", +-"duckdns" => "https://duckdns.com", +-"dyndns1" => "https://account.dyn.com/", +-"dyndns2" => "https://account.dyn.com/", +-"easydns" => "https://easydns.com", +-"enom" => "https://enom.com", +-"freedns" => "http://freedns.com", +-"freemyip" => "https://freemyip.com", +-"gandi" => "https://gandi.com", +-"godaddy" => "https://godaddy.com", +-"googledomains" => "https://googledomains.com", +-"hetzner" => "https://hetzner.com", +-"infomaniak" => "https://infomaniak.com", +-"keysystems" => "https://keysystems.com", +-"mythicdyn" => "https://www.mythic-beasts.com/support/api/dnsv2/dynamic-dns", +-"namecheap" => "https://namecheap.com", +-"nfsn" => "http://nfsn.com", +-"njalla" => "https://njalla.com", +-"noip" => "https://noip.com", +-"nsupdate" => "http://nsupdate.com", +-"ovh" => "https://ovh.com", +-"porkbun" => "https://porkbun.com", +-"regfishde" => "regfishde", +-"sitelutions" => "https://sitelutions.com", +-"woima" => "http://woima.com", +-"yandex" => "https://yandex.com", +-"zoneedit" => "https://www.zoneedit.com/dynamic-dns/", -# end of v3.11.1 Service descriptions: ++# v3.11.x Service descriptions: ++"1984" => "1984-https://kb.1984hosting.com/doku.php?id=freedns", ++"changeip" => "changeip-https://changeip.com", ++"cloudflare" => "cloudflare-https://cloudflare.com", ++"cloudns" => "cloudns-https://cloudns.com", ++"digitalocean" => "digitalocean-https://digitalocean.com", ++"dinahosting" => "dinahosting-https://dinahosting.com", ++"dnsexit" => "dnsexit-https://dnsexit.com/", ++"dnsmadeeasy" => "dnsmadeeasy-https://dnsmadeeasy.com", ++"domeneshop" => "domeneshop-https://domeneshop.com", ++"dondominio" => "dondominio-https://dondominio.com", ++"dslreports" => "dslreports-https://www.dslreports.com/", ++"duckdns" => "duckdns-https://duckdns.com", ++"dyndns1" => "dyndns1-https://account.dyn.com/", ++"dyndns2" => "dyndns2-https://account.dyn.com/", ++"easydns" => "easydns-https://easydns.com", ++"enom" => "enom-https://enom.com", ++"freedns" => "freedns-http://freedns.com", ++"freemyip" => "freemyip-https://freemyip.com", ++"gandi" => "gandi-https://gandi.com", ++"godaddy" => "godaddy-https://godaddy.com", ++"googledomains" => "googledomains-https://googledomains.com", ++"hetzner" => "hetzner-https://hetzner.com", ++"infomaniak" => "infomaniak-https://infomaniak.com", ++"keysystems" => "keysystems-https://keysystems.com", ++"mythicdyn" => "mythicdyn-https://www.mythic-beasts.com/support/api/dnsv2/dynamic-dns", ++"namecheap" => "namecheap-https://namecheap.com", ++"nfsn" => "nfsn-http://nfsn.com", ++"njalla" => "njalla-https://njalla.com", ++"noip" => "noip-https://noip.com", ++"nsupdate" => "nsupdate-http://nsupdate.com", ++"ovh" => "ovh-https://ovh.com", ++"porkbun" => "porkbun-https://porkbun.com", ++"regfishde" => "regfishde-regfishde", ++"sitelutions" => "sitelutions-https://sitelutions.com", ++"woima" => "woima-http://woima.com", ++"yandex" => "yandex-https://yandex.com", ++"zoneedit" => "zoneedit-https://www.zoneedit.com/dynamic-dns/", +# end of v3.11.x Service descriptions: ++'MODIFY_DESCRIPTION' => "You can modify the Dynamic DNS Service that you use and change the username and password", ++'CREATE_DESCRIPTION' => "You can create a domain to use for the Dynamic DNS Service that you use and set or change the username and password", 'CUSTOMDNS' => 'Custom Dynamic DNS Provider', 'CUSTOMDNS_LABEL' => 'Custom server Address', -@@ -136,8 +136,8 @@ + 'CUSTOM_PROTOCOL_LABEL' => 'Custom ddclient Protocol', +@@ -136,8 +138,8 @@ 'DESCRIPTION_LABEL' => 'Domain description', 'SUCCESSFULLY_MODIFIED_RETRIEVE_IP' => 'You have successfully modified the retrieve IP options.', 'RETRIEVE_METHOD' => 'Method to retrieve new IP:', @@ -673,19 +793,105 @@ diff -urN smeserver-ddclient-1.3.0.old/r 'web' => 'Web query', diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep 2020-06-28 09:57:52.000000000 +0100 -+++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep 2023-11-15 16:10:00.000000000 +0000 -@@ -1,6 +1,6 @@ -
++++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep 2023-12-18 09:35:00.000000000 +0000 +@@ -1,41 +1,43 @@ +-
++

- %= l 'ddc_CUSTOM_DESCRIPTION' -+ %= l 'CUSTOM_DESCRIPTION' ++ %= l 'CREATE_DESCRIPTION'


- % my $btn = l('ddc_APPLY'); +- % my $btn = l('ddc_APPLY'); ++ % my $btn = l('APPLY'); %= form_for '/ddclient7' => (method => 'POST') => begin + +- %=l 'ddc_DOMAIN_NAME_LABEL' ++ %=l 'DOMAIN_NAME_LABEL' + + %=text_field 'domainName' +
+ +- %=l 'ddc_DESCRIPTION_LABEL' ++ %=l 'DESCRIPTION_LABEL' + + %=text_field 'desc' +
+ +- %=l 'ddc_SERVERS_LABEL' ++ %=l 'SERVERS_LABEL' + + %=select_field dns=>$dnslabels +
++ + +- %=l 'ddc_NAME_LABEL' ++ %=l 'NAME_LABEL' + + %=text_field 'login' +
+ +- %=l 'ddc_PASSWORD_LABEL' ++ %=l 'PASSWORD_LABEL' + + %=password_field 'password',id=>"ddcPass" + %=label_for show=>"Show" +@@ -52,7 +54,7 @@ + % end +
+ +- %=l 'ddc_MX' ++ %=l 'MX' + + %=text_field 'mx' +
+diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_del.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_del.html.ep +--- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_del.html.ep 2023-11-10 16:11:05.900271940 +0000 ++++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_del.html.ep 2023-12-18 11:14:00.000000000 +0000 +@@ -2,7 +2,7 @@ + % my $btn = l('REMOVE'); + %= form_for '/ddclient4' => (method => 'POST') => begin +

+- %= $c->render_to_string(inline =>l("ddc_REMOVE_DESCRIPTION",$ddc_datas->{"Domain_details"}->{"Domain"},$ddc_datas->{"Domain_details"}->{"Description"},$c->l($ddc_datas->{"Domain_details"}->{"Publication"}))) ++ %= $c->render_to_string(inline =>l("REMOVE_DESCRIPTION",$ddc_datas->{"Domain_details"}->{"Domain"},$ddc_datas->{"Domain_details"}->{"Description"},$c->l($ddc_datas->{"Domain_details"}->{"Publication"}))) +

+ % param Domain=>$ddc_datas->{"Domain_details"}->{"Domain"}; + %= hidden_field Domain=>$ddc_datas->{"Domain_details"}->{"Domain"} +diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_domainlist.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_domainlist.html.ep +--- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_domainlist.html.ep 2023-11-10 16:11:05.900271940 +0000 ++++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_domainlist.html.ep 2023-12-18 11:46:00.000000000 +0000 +@@ -36,9 +36,12 @@ + %= t td => (class => 'sme-border') => $Domain->{"Publication"} + + "><%=l 'MODIFY'%> +- +- "><%=l 'REMOVE'%> +- ++ ++ % if ($Domain->{"Publication"} ne ""){ ++ ++ "><%=l 'REMOVE'%> ++ ++ % } + + %} + diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep 2023-11-10 16:11:05.901271943 +0000 -+++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep 2023-11-18 14:56:00.000000000 +0000 -@@ -1,4 +1,9 @@ ++++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep 2023-12-18 11:13:00.000000000 +0000 +@@ -1,6 +1,11 @@
+

- %= l 'CUSTOM_DESCRIPTION' +- %= l 'CUSTOM_DESCRIPTION' ++ %= l 'MODIFY_DESCRIPTION'


-@@ -24,20 +29,41 @@ + % my $btn = l('APPLY'); + %= form_for '/ddclient8' => (method => 'POST') => begin +@@ -10,34 +15,60 @@ + %= hidden_field domainName => $ddc_datas->{"Domain_details"}->{"Domain"} + %= $ddc_datas->{"Domain_details"}->{"Domain"} +

++ + + %=l 'DESCRIPTION_LABEL' + + %= $ddc_datas->{"Domain_details"}->{"Description"} +

++ ++ % if ($ddc_datas->{"Domain_details"}->{"Content"} ne ""){ + + %= $ddc_datas->{"Domain_details"}->{"Content"} + + %= $ddc_datas->{"Domain_details"}->{"Content"} +

++ % } ++ + %=l 'SERVERS_LABEL' % param dns=>$ddc_datas->{"Domain_details"}->{"dns"}; @@ -744,7 +972,7 @@ diff -urN smeserver-ddclient-1.3.0.old/r diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep 2023-11-10 16:11:05.902271946 +0000 -+++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep 2023-12-04 10:53:00.000000000 +0000 ++++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep 2023-12-16 08:19:00.000000000 +0000 @@ -1,4 +1,9 @@
+