added unlinked controller; change create forwarded to createOrUpdate; added global proxy mutex

This commit is contained in:
2026-04-09 12:50:26 +02:00
parent 79a991f001
commit 8b2c1d0390
8 changed files with 563 additions and 159 deletions

View File

@@ -12,7 +12,8 @@ func (oper *Operator) ListForwarders(ctx context.Context, params *mlbctl.ListFor
res := &mlbctl.ListForwardersResult{
Forwarders: make([]*mlbctl.Forwarder, 0),
}
for _, forw := range oper.proxy.Forwarders {
forws := oper.proxy.ListForwarders(ctx)
for _, forw := range forws {
oForw := &mlbctl.Forwarder{
Type: forw.Type,
Lport: forw.Lport,
@@ -33,8 +34,8 @@ func (oper *Operator) ListForwarders(ctx context.Context, params *mlbctl.ListFor
func (oper *Operator) CreateForwarder(ctx context.Context, params *mlbctl.CreateForwarderParams) (*mlbctl.CreateForwarderResult, error) {
var err error
res := &mlbctl.CreateForwarderResult{}
err = oper.proxy.AddForwarder(ctx, params.Type, params.Lport, params.Dport, params.Destinations...)
if err != err {
err = oper.proxy.CreateOrUpdateForwarder(ctx, params.Type, params.Lport, params.Dport, params.Destinations...)
if err != nil {
return res, err
}
return res, err
@@ -43,8 +44,8 @@ func (oper *Operator) CreateForwarder(ctx context.Context, params *mlbctl.Create
func (oper *Operator) DeleteForwarder(ctx context.Context, params *mlbctl.DeleteForwarderParams) (*mlbctl.DeleteForwarderResult, error) {
var err error
res := &mlbctl.DeleteForwarderResult{}
err = oper.proxy.DeleteForwarder(ctx, params.Lport)
if err != err {
err = oper.proxy.DeleteForwarder(ctx, params.Type, params.Lport)
if err != nil {
return res, err
}
return res, err