Skip to content

Commit

Permalink
Merge pull request #319 from Mattemagikern/master
Browse files Browse the repository at this point in the history
AddBroker: Escape % in Addresses
  • Loading branch information
Al S-M committed Jul 17, 2019
2 parents 9bb3615 + bb7927e commit 93c8a06
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions options.go
Expand Up @@ -10,6 +10,7 @@
* Seth Hoenig
* Allan Stockdill-Mander
* Mike Robertson
* Måns Ansgariusson
*/

// Portions copyright © 2018 TIBCO Software Inc.
Expand All @@ -20,6 +21,7 @@ import (
"crypto/tls"
"net/http"
"net/url"
"regexp"
"strings"
"time"
)
Expand Down Expand Up @@ -125,12 +127,14 @@ func NewClientOptions() *ClientOptions {
//
// An example broker URI would look like: tcp://foobar.com:1883
func (o *ClientOptions) AddBroker(server string) *ClientOptions {
re := regexp.MustCompile(`%(25)?`)
if len(server) > 0 && server[0] == ':' {
server = "127.0.0.1" + server
}
if !strings.Contains(server, "://") {
server = "tcp://" + server
}
server = re.ReplaceAllLiteralString(server, "%25")
brokerURI, err := url.Parse(server)
if err != nil {
ERROR.Println(CLI, "Failed to parse %q broker address: %s", server, err)
Expand Down

0 comments on commit 93c8a06

Please sign in to comment.