package p2p import ( "fmt" "net" ) func ParseNAT(natType string, gateway string) (nat NAT, err error) { switch natType { case "UPNP": nat = UPNP() case "PMP": ip := net.ParseIP(gateway) if ip == nil { return nil, fmt.Errorf("cannot resolve PMP gateway IP %s", gateway) } nat = PMP(ip) case "": default: return nil, fmt.Errorf("unrecognised NAT type '%s'", natType) } return }