Skip to content

Commit 59d3aba

Browse files
authored
Merge pull request #385 from Plaenkler/dependencies
[UPD] Dependencies
2 parents ce8b012 + 5b2c5ab commit 59d3aba

File tree

8 files changed

+51
-83
lines changed

8 files changed

+51
-83
lines changed

go.mod

+4-3
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ module github.com/plaenkler/ddns-updater
33
go 1.22.0
44

55
require (
6-
github.com/aliyun/alibaba-cloud-sdk-go v1.62.783
6+
github.com/aliyun/alibaba-cloud-sdk-go v1.62.796
77
github.com/kardianos/service v1.2.2
88
github.com/pquerna/otp v1.4.0
99
golang.org/x/time v0.5.0
1010
gopkg.in/yaml.v3 v3.0.1
1111
gorm.io/driver/sqlite v1.5.6
12-
gorm.io/gorm v1.25.10
12+
gorm.io/gorm v1.25.11
1313
)
1414

1515
require (
@@ -22,6 +22,7 @@ require (
2222
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
2323
github.com/modern-go/reflect2 v1.0.2 // indirect
2424
github.com/opentracing/opentracing-go v1.2.1-0.20220228012449-10b1cf09e00b // indirect
25-
golang.org/x/sys v0.1.0 // indirect
25+
golang.org/x/sys v0.5.0 // indirect
26+
golang.org/x/text v0.14.0 // indirect
2627
gopkg.in/ini.v1 v1.67.0 // indirect
2728
)

go.sum

+8-6
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7
22
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
33
github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo=
44
github.com/ajstarks/svgo v0.0.0-20180226025133-644b8db467af/go.mod h1:K08gAheRH3/J6wwsYMMT4xOr94bZjxIelGM0+d/wbFw=
5-
github.com/aliyun/alibaba-cloud-sdk-go v1.62.783 h1:nAdI37B39TgXimEXegM0ThQs30nEq4zanLycGqMSkac=
6-
github.com/aliyun/alibaba-cloud-sdk-go v1.62.783/go.mod h1:SOSDHfe1kX91v3W5QiBsWSLqeLxImobbMX1mxrFHsVQ=
5+
github.com/aliyun/alibaba-cloud-sdk-go v1.62.796 h1:5qwuGvXS6rQwoITaUnJyzftcAJCJ0oVjZ9PIYftXyjA=
6+
github.com/aliyun/alibaba-cloud-sdk-go v1.62.796/go.mod h1:SOSDHfe1kX91v3W5QiBsWSLqeLxImobbMX1mxrFHsVQ=
77
github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8=
88
github.com/boombuler/barcode v1.0.1 h1:NDBbPmhS+EqABEs5Kg3n/5ZNjy73Pz7SIV+KCeqyXcs=
99
github.com/boombuler/barcode v1.0.1/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8=
@@ -80,9 +80,11 @@ golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5h
8080
golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
8181
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
8282
golang.org/x/sys v0.0.0-20201015000850-e3ed0017c211/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
83-
golang.org/x/sys v0.1.0 h1:kunALQeHf1/185U1i0GOB/fy1IPRDDpuoOOqRReG57U=
84-
golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
83+
golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU=
84+
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
8585
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
86+
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
87+
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
8688
golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk=
8789
golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
8890
golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
@@ -108,6 +110,6 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
108110
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
109111
gorm.io/driver/sqlite v1.5.6 h1:fO/X46qn5NUEEOZtnjJRWRzZMe8nqJiQ9E+0hi+hKQE=
110112
gorm.io/driver/sqlite v1.5.6/go.mod h1:U+J8craQU6Fzkcvu8oLeAQmi50TkwPEhHDEjQZXDah4=
111-
gorm.io/gorm v1.25.10 h1:dQpO+33KalOA+aFYGlK+EfxcI5MbO7EP2yYygwh9h+s=
112-
gorm.io/gorm v1.25.10/go.mod h1:hbnx/Oo0ChWMn1BIhpy1oYozzpM15i4YPuHDmfYtwg8=
113+
gorm.io/gorm v1.25.11 h1:/Wfyg1B/je1hnDx3sMkX+gAlxrlZpn6X0BXRlwXlvHg=
114+
gorm.io/gorm v1.25.11/go.mod h1:xh7N7RHfYlNc5EmcI/El95gXusucDrQnHXe0+CgWcLQ=
113115
rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=

pkg/ddns/update.go

+35-35
Original file line numberDiff line numberDiff line change
@@ -10,41 +10,41 @@ type provider struct {
1010
}
1111

1212
var updaters = map[string]provider{
13-
"Strato": {Updater: providers.UpdateStrato, Request: &providers.UpdateStratoRequest{}},
14-
"DDNSS": {Updater: providers.UpdateDDNSS, Request: &providers.UpdateDDNSSRequest{}},
15-
"Dynu": {Updater: providers.UpdateDynu, Request: &providers.UpdateDynuRequest{}},
16-
"Aliyun": {Updater: providers.UpdateAliyun, Request: &providers.UpdateAliyunRequest{}},
17-
"AllInkl": {Updater: providers.UpdateAllInkl, Request: &providers.UpdateAllInklRequest{}},
18-
"Cloudflare": {Updater: providers.UpdateCloudflare, Request: &providers.UpdateCloudflareRequest{}},
19-
"DD24": {Updater: providers.UpdateDD24, Request: &providers.UpdateDD24Request{}},
20-
"DigitalOcean": {Updater: providers.UpdateDigitalOcean, Request: &providers.UpdateDigitalOceanRequest{}},
21-
"DonDominio": {Updater: providers.UpdateDonDominio, Request: &providers.UpdateDonDominioRequest{}},
22-
"DNSOMatic": {Updater: providers.UpdateDNSOMatic, Request: &providers.UpdateDNSOMaticRequest{}},
23-
"DNSPod": {Updater: providers.UpdateDNSPod, Request: &providers.UpdateDNSPodRequest{}},
24-
"Dreamhost": {Updater: providers.UpdateDreamhost, Request: &providers.UpdateDreamhostRequest{}},
25-
"DuckDNS": {Updater: providers.UpdateDuckDNS, Request: &providers.UpdateDuckDNSRequest{}},
26-
"DynDNS": {Updater: providers.UpdateDynDNS, Request: &providers.UpdateDynDNSRequest{}},
27-
"FreeDNS": {Updater: providers.UpdateFreeDNS, Request: &providers.UpdateFreeDNSRequest{}},
28-
"Gandi": {Updater: providers.UpdateGandi, Request: &providers.UpdateGandiRequest{}},
29-
"GCP": {Updater: providers.UpdateGCP, Request: &providers.UpdateGCPRequest{}},
30-
"GoDaddy": {Updater: providers.UpdateGoDaddy, Request: &providers.UpdateGoDaddyRequest{}},
31-
"Google": {Updater: providers.UpdateGoogle, Request: &providers.UpdateGoogleRequest{}},
32-
"He": {Updater: providers.UpdateHe, Request: &providers.UpdateHeRequest{}},
33-
"Infomaniak": {Updater: providers.UpdateInfomaniak, Request: &providers.UpdateInfomaniakRequest{}},
34-
"INWX": {Updater: providers.UpdateINWX, Request: &providers.UpdateINWXRequest{}},
35-
"Linode": {Updater: providers.UpdateLinode, Request: &providers.UpdateLinodeRequest{}},
36-
"LuaDNS": {Updater: providers.UpdateLuaDNS, Request: &providers.UpdateLuaDNSRequest{}},
37-
"Namecheap": {Updater: providers.UpdateNamecheap, Request: &providers.UpdateNamecheapRequest{}},
38-
"NoIP": {Updater: providers.UpdateNoIP, Request: &providers.UpdateNoIPRequest{}},
39-
"Njalla": {Updater: providers.UpdateNjalla, Request: &providers.UpdateNjallaRequest{}},
40-
"OpenDNS": {Updater: providers.UpdateOpenDNS, Request: &providers.UpdateOpenDNSRequest{}},
41-
"OVH": {Updater: providers.UpdateOVH, Request: &providers.UpdateOVHRequest{}},
42-
"Porkbun": {Updater: providers.UpdatePorkbun, Request: &providers.UpdatePorkbunRequest{}},
43-
"Selfhost": {Updater: providers.UpdateSelfhost, Request: &providers.UpdateSelfhostRequest{}},
44-
"Servercow": {Updater: providers.UpdateServercow, Request: &providers.UpdateServercowRequest{}},
45-
"Spdyn": {Updater: providers.UpdateSpdyn, Request: &providers.UpdateSpdynRequest{}},
46-
"Variomedia": {Updater: providers.UpdateVariomedia, Request: &providers.UpdateVariomediaRequest{}},
47-
"MaxiHoster": {Updater: providers.UpdateMaxiHoster, Request: &providers.UpdateMaxiHosterRequest{}},
13+
"Strato": {Updater: providers.UpdateStrato, Request: providers.UpdateStratoRequest{}},
14+
"DDNSS": {Updater: providers.UpdateDDNSS, Request: providers.UpdateDDNSSRequest{}},
15+
"Dynu": {Updater: providers.UpdateDynu, Request: providers.UpdateDynuRequest{}},
16+
"Aliyun": {Updater: providers.UpdateAliyun, Request: providers.UpdateAliyunRequest{}},
17+
"AllInkl": {Updater: providers.UpdateAllInkl, Request: providers.UpdateAllInklRequest{}},
18+
"Cloudflare": {Updater: providers.UpdateCloudflare, Request: providers.UpdateCloudflareRequest{}},
19+
"DD24": {Updater: providers.UpdateDD24, Request: providers.UpdateDD24Request{}},
20+
"DigitalOcean": {Updater: providers.UpdateDigitalOcean, Request: providers.UpdateDigitalOceanRequest{}},
21+
"DonDominio": {Updater: providers.UpdateDonDominio, Request: providers.UpdateDonDominioRequest{}},
22+
"DNSOMatic": {Updater: providers.UpdateDNSOMatic, Request: providers.UpdateDNSOMaticRequest{}},
23+
"DNSPod": {Updater: providers.UpdateDNSPod, Request: providers.UpdateDNSPodRequest{}},
24+
"Dreamhost": {Updater: providers.UpdateDreamhost, Request: providers.UpdateDreamhostRequest{}},
25+
"DuckDNS": {Updater: providers.UpdateDuckDNS, Request: providers.UpdateDuckDNSRequest{}},
26+
"DynDNS": {Updater: providers.UpdateDynDNS, Request: providers.UpdateDynDNSRequest{}},
27+
"FreeDNS": {Updater: providers.UpdateFreeDNS, Request: providers.UpdateFreeDNSRequest{}},
28+
"Gandi": {Updater: providers.UpdateGandi, Request: providers.UpdateGandiRequest{}},
29+
"GCP": {Updater: providers.UpdateGCP, Request: providers.UpdateGCPRequest{}},
30+
"GoDaddy": {Updater: providers.UpdateGoDaddy, Request: providers.UpdateGoDaddyRequest{}},
31+
"Google": {Updater: providers.UpdateGoogle, Request: providers.UpdateGoogleRequest{}},
32+
"He": {Updater: providers.UpdateHe, Request: providers.UpdateHeRequest{}},
33+
"Infomaniak": {Updater: providers.UpdateInfomaniak, Request: providers.UpdateInfomaniakRequest{}},
34+
"INWX": {Updater: providers.UpdateINWX, Request: providers.UpdateINWXRequest{}},
35+
"Linode": {Updater: providers.UpdateLinode, Request: providers.UpdateLinodeRequest{}},
36+
"LuaDNS": {Updater: providers.UpdateLuaDNS, Request: providers.UpdateLuaDNSRequest{}},
37+
"Namecheap": {Updater: providers.UpdateNamecheap, Request: providers.UpdateNamecheapRequest{}},
38+
"NoIP": {Updater: providers.UpdateNoIP, Request: providers.UpdateNoIPRequest{}},
39+
"Njalla": {Updater: providers.UpdateNjalla, Request: providers.UpdateNjallaRequest{}},
40+
"OpenDNS": {Updater: providers.UpdateOpenDNS, Request: providers.UpdateOpenDNSRequest{}},
41+
"OVH": {Updater: providers.UpdateOVH, Request: providers.UpdateOVHRequest{}},
42+
"Porkbun": {Updater: providers.UpdatePorkbun, Request: providers.UpdatePorkbunRequest{}},
43+
"Selfhost": {Updater: providers.UpdateSelfhost, Request: providers.UpdateSelfhostRequest{}},
44+
"Servercow": {Updater: providers.UpdateServercow, Request: providers.UpdateServercowRequest{}},
45+
"Spdyn": {Updater: providers.UpdateSpdyn, Request: providers.UpdateSpdynRequest{}},
46+
"Variomedia": {Updater: providers.UpdateVariomedia, Request: providers.UpdateVariomediaRequest{}},
47+
"MaxiHoster": {Updater: providers.UpdateMaxiHoster, Request: providers.UpdateMaxiHosterRequest{}},
4848
}
4949

5050
func GetProviders() []string {

pkg/server/middles.go

-18
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package server
22

33
import (
4-
"fmt"
54
"net/http"
65
"strings"
76

@@ -19,23 +18,6 @@ func limitRequests(handler http.Handler) http.Handler {
1918
})
2019
}
2120

22-
func forwardToProxy(handler http.Handler) http.Handler {
23-
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
24-
addr, err := getRealClientIP(r)
25-
if err != nil {
26-
http.Error(w, err.Error(), http.StatusInternalServerError)
27-
return
28-
}
29-
port, err := getRealClientPort(r)
30-
if err != nil {
31-
http.Error(w, err.Error(), http.StatusInternalServerError)
32-
return
33-
}
34-
r.URL.Host = fmt.Sprintf("%s:%s", addr, port)
35-
handler.ServeHTTP(w, r)
36-
})
37-
}
38-
3921
func controlCache(next http.Handler) http.Handler {
4022
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
4123
w.Header().Set("Cache-Control", "public, max-age=86400")

pkg/server/routes/api/inputs.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@ func GetInputs(w http.ResponseWriter, r *http.Request) {
1313
http.Error(w, "[api-GetInputs-1] missing provider", http.StatusBadRequest)
1414
return
1515
}
16-
request, ok := ddns.GetUpdaters()[provider]
16+
updater, ok := ddns.GetUpdaters()[provider]
1717
if !ok {
1818
http.Error(w, "[api-GetInputs-2] provider is not valid", http.StatusBadRequest)
1919
return
2020
}
21-
fields := &request.Request
21+
fields := updater.Request
2222
inputs, err := json.Marshal(fields)
2323
if err != nil {
2424
http.Error(w, "[api-GetInputs-3] could not marshal fields", http.StatusInternalServerError)

pkg/server/routes/api/job.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ func CreateJob(w http.ResponseWriter, r *http.Request) {
2727
log.Errorf("[api-CreateJob-2] provider is not valid")
2828
return
2929
}
30-
jobModel := &updater.Request
30+
jobModel := updater.Request
3131
params := r.FormValue("params")
3232
err = json.Unmarshal([]byte(params), &jobModel)
3333
if err != nil {
@@ -81,7 +81,7 @@ func UpdateJob(w http.ResponseWriter, r *http.Request) {
8181
log.Errorf("[api-UpdateJob-3] provider is not valid")
8282
return
8383
}
84-
jobModel := &updater.Request
84+
jobModel := updater.Request
8585
params := r.FormValue("params")
8686
err = json.Unmarshal([]byte(params), &jobModel)
8787
if err != nil {

pkg/server/service.go

-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ func initializeRouter() {
3939
}
4040

4141
func registerMiddlewares(r *Router) {
42-
r.Use(forwardToProxy)
4342
r.Use(limitRequests)
4443
if config.Get().UseTOTP {
4544
r.Use(authenticate)

pkg/server/xrclient.go

-16
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package server
22

33
import (
4-
"fmt"
54
"net"
65
"net/http"
76
"strings"
@@ -41,18 +40,3 @@ func crawlForwardedIPs(r *http.Request) string {
4140
}
4241
return ""
4342
}
44-
45-
func getRealClientPort(r *http.Request) (string, error) {
46-
remotePort := r.Header.Get(xForwardedPort)
47-
if remotePort != "" {
48-
return remotePort, nil
49-
}
50-
if !strings.Contains(r.RemoteAddr, ":") {
51-
return "", fmt.Errorf("[server-GetRealClientPort-2] could not determine remote port")
52-
}
53-
_, port, err := net.SplitHostPort(r.RemoteAddr)
54-
if err != nil {
55-
return "", err
56-
}
57-
return port, nil
58-
}

0 commit comments

Comments
 (0)