From 66621ba83a6c16cbef92c6043151287a6ba624a5 Mon Sep 17 00:00:00 2001 From: Bluesaxorcist Date: Sat, 21 Sep 2019 22:26:32 -0500 Subject: added cases for parsing to Optimizer --- common/pt_extras/pt_extras.go | 2 +- transports/transports.go | 30 ++++++++++++++++++++++-------- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/common/pt_extras/pt_extras.go b/common/pt_extras/pt_extras.go index 42160b2..a41f4f7 100644 --- a/common/pt_extras/pt_extras.go +++ b/common/pt_extras/pt_extras.go @@ -198,7 +198,7 @@ func ArgsToDialer(target string, name string, args map[string]interface{}) (Opti return transport, nil } case "Optimizer": - transport, err := transports.ParseArgsOptimizer(args, target) + transport, err := transports.ParseArgsOptimizer(args) if err != nil { log.Errorf("Could not parse options %s", err.Error()) return nil, err diff --git a/transports/transports.go b/transports/transports.go index 0d0f923..86abbd3 100644 --- a/transports/transports.go +++ b/transports/transports.go @@ -381,7 +381,7 @@ func parsedTransport(otc map[string]interface{}) (Optimizer.Transport, error) { var address string var name string var config map[string]interface{} -//start by parsing the address + //start by parsing the address untypedAddress, ok := otc["address"] if !ok { return nil, errors.New("missing address in transport parser") @@ -435,23 +435,37 @@ func parsedTransport(otc map[string]interface{}) (Optimizer.Transport, error) { switch name { case "shadow": shadowTransport, parseErr := ParseArgsShadow(config, address) - if parseErr!= nil { + if parseErr != nil { return nil, errors.New("could not parse shadow Args") } return shadowTransport, nil case "obfs4": - break + obfs4Transport, parseErr := ParseArgsObfs4(config, address) + if parseErr != nil { + return nil, errors.New("could not parse obfs4 Args") + } + return obfs4Transport, nil case "meeklite": - break + meekliteTransport, parseErr := ParseArgsMeeklite(config, address) + if parseErr != nil { + return nil, errors.New("could not parse meeklite Args") + } + return meekliteTransport, nil case "Dust": - break + DustTransport, parseErr := ParseArgsDust(config, address) + if parseErr != nil { + return nil, errors.New("could not parse dust Args") + } + return DustTransport, nil case "replicant": - break + replicantTransport, parseErr := ParseArgsReplicant(config, address) + if parseErr != nil { + return nil, errors.New("could not parse replicant Args") + } + return replicantTransport, nil default: return nil, errors.New("unsupported transport name") } - - return nil, errors.New("unsupported transport name") } func ParseReplicantConfig(config string) (replicant.Config, error) { -- cgit v1.2.3