Fix: port forward get route, fixes #552
This commit is contained in:
@@ -395,7 +395,7 @@ func _main(ctx context.Context, buildInfo models.BuildInformation,
|
|||||||
"http server", defaultGoRoutineSettings)
|
"http server", defaultGoRoutineSettings)
|
||||||
httpServer := server.New(httpServerCtx, controlServerAddress, controlServerLogging,
|
httpServer := server.New(httpServerCtx, controlServerAddress, controlServerLogging,
|
||||||
logger.NewChild(logging.Settings{Prefix: "http server: "}),
|
logger.NewChild(logging.Settings{Prefix: "http server: "}),
|
||||||
buildInfo, openvpnLooper, unboundLooper, updaterLooper, publicIPLooper)
|
buildInfo, openvpnLooper, portForwardLooper, unboundLooper, updaterLooper, publicIPLooper)
|
||||||
go httpServer.Run(httpServerCtx, httpServerDone)
|
go httpServer.Run(httpServerCtx, httpServerDone)
|
||||||
controlGroupHandler.Add(httpServerHandler)
|
controlGroupHandler.Add(httpServerHandler)
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import (
|
|||||||
"github.com/qdm12/gluetun/internal/dns"
|
"github.com/qdm12/gluetun/internal/dns"
|
||||||
"github.com/qdm12/gluetun/internal/models"
|
"github.com/qdm12/gluetun/internal/models"
|
||||||
"github.com/qdm12/gluetun/internal/openvpn"
|
"github.com/qdm12/gluetun/internal/openvpn"
|
||||||
|
"github.com/qdm12/gluetun/internal/portforward"
|
||||||
"github.com/qdm12/gluetun/internal/publicip"
|
"github.com/qdm12/gluetun/internal/publicip"
|
||||||
"github.com/qdm12/gluetun/internal/updater"
|
"github.com/qdm12/gluetun/internal/updater"
|
||||||
"github.com/qdm12/golibs/logging"
|
"github.com/qdm12/golibs/logging"
|
||||||
@@ -16,13 +17,14 @@ import (
|
|||||||
func newHandler(ctx context.Context, logger logging.Logger, logging bool,
|
func newHandler(ctx context.Context, logger logging.Logger, logging bool,
|
||||||
buildInfo models.BuildInformation,
|
buildInfo models.BuildInformation,
|
||||||
openvpnLooper openvpn.Looper,
|
openvpnLooper openvpn.Looper,
|
||||||
|
pfGetter portforward.Getter,
|
||||||
unboundLooper dns.Looper,
|
unboundLooper dns.Looper,
|
||||||
updaterLooper updater.Looper,
|
updaterLooper updater.Looper,
|
||||||
publicIPLooper publicip.Looper,
|
publicIPLooper publicip.Looper,
|
||||||
) http.Handler {
|
) http.Handler {
|
||||||
handler := &handler{}
|
handler := &handler{}
|
||||||
|
|
||||||
openvpn := newOpenvpnHandler(ctx, openvpnLooper, logger)
|
openvpn := newOpenvpnHandler(ctx, openvpnLooper, pfGetter, logger)
|
||||||
dns := newDNSHandler(ctx, unboundLooper, logger)
|
dns := newDNSHandler(ctx, unboundLooper, logger)
|
||||||
updater := newUpdaterHandler(ctx, updaterLooper, logger)
|
updater := newUpdaterHandler(ctx, updaterLooper, logger)
|
||||||
publicip := newPublicIPHandler(publicIPLooper, logger)
|
publicip := newPublicIPHandler(publicIPLooper, logger)
|
||||||
|
|||||||
@@ -12,10 +12,11 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func newOpenvpnHandler(ctx context.Context, looper openvpn.Looper,
|
func newOpenvpnHandler(ctx context.Context, looper openvpn.Looper,
|
||||||
logger logging.Logger) http.Handler {
|
pfGetter portforward.Getter, logger logging.Logger) http.Handler {
|
||||||
return &openvpnHandler{
|
return &openvpnHandler{
|
||||||
ctx: ctx,
|
ctx: ctx,
|
||||||
looper: looper,
|
looper: looper,
|
||||||
|
pf: pfGetter,
|
||||||
logger: logger,
|
logger: logger,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import (
|
|||||||
"github.com/qdm12/gluetun/internal/dns"
|
"github.com/qdm12/gluetun/internal/dns"
|
||||||
"github.com/qdm12/gluetun/internal/models"
|
"github.com/qdm12/gluetun/internal/models"
|
||||||
"github.com/qdm12/gluetun/internal/openvpn"
|
"github.com/qdm12/gluetun/internal/openvpn"
|
||||||
|
"github.com/qdm12/gluetun/internal/portforward"
|
||||||
"github.com/qdm12/gluetun/internal/publicip"
|
"github.com/qdm12/gluetun/internal/publicip"
|
||||||
"github.com/qdm12/gluetun/internal/updater"
|
"github.com/qdm12/gluetun/internal/updater"
|
||||||
"github.com/qdm12/golibs/logging"
|
"github.com/qdm12/golibs/logging"
|
||||||
@@ -26,11 +27,11 @@ type server struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func New(ctx context.Context, address string, logEnabled bool, logger logging.Logger,
|
func New(ctx context.Context, address string, logEnabled bool, logger logging.Logger,
|
||||||
buildInfo models.BuildInformation,
|
buildInfo models.BuildInformation, openvpnLooper openvpn.Looper,
|
||||||
openvpnLooper openvpn.Looper, unboundLooper dns.Looper,
|
pfGetter portforward.Getter, unboundLooper dns.Looper,
|
||||||
updaterLooper updater.Looper, publicIPLooper publicip.Looper) Server {
|
updaterLooper updater.Looper, publicIPLooper publicip.Looper) Server {
|
||||||
handler := newHandler(ctx, logger, logEnabled, buildInfo,
|
handler := newHandler(ctx, logger, logEnabled, buildInfo,
|
||||||
openvpnLooper, unboundLooper, updaterLooper, publicIPLooper)
|
openvpnLooper, pfGetter, unboundLooper, updaterLooper, publicIPLooper)
|
||||||
return &server{
|
return &server{
|
||||||
address: address,
|
address: address,
|
||||||
logger: logger,
|
logger: logger,
|
||||||
|
|||||||
Reference in New Issue
Block a user