diff --git a/cmd_onion.go b/cmd_onion.go index ddac1fa..625ae13 100644 --- a/cmd_onion.go +++ b/cmd_onion.go @@ -119,8 +119,7 @@ func (c *Conn) NewOnion(config *NewOnionConfig, dontCheckDescriptor bool) (*Onio resp, err := c.Request(request) if err == nil && !dontCheckDescriptor { pi, _ := c.ProtocolInfo() - // 0.3.5.1 - torversion := strings.Split(pi.TorVersion, ".") + torversion := strings.Split(pi.TorVersion, ".") //eg: 0.3.4.8 or 0.3.5.1-alpha tva, _ := strconv.Atoi(torversion[0]) tvb, _ := strconv.Atoi(torversion[1]) tvc, _ := strconv.Atoi(torversion[2]) @@ -139,13 +138,13 @@ func (c *Conn) NewOnion(config *NewOnionConfig, dontCheckDescriptor bool) (*Onio if crc > src { log.Printf("uh oh: your tor process is using a service descriptor revision counter of %d\n", src) log.Printf("whereas the HSDirs have revision %d. this is a bug in tor < 0.3.5.1-alpha\n", crc) + log.Printf("this onion service will not be visible to others until the counters are synced.\n") log.Printf("your have two options to fix it:\n") log.Printf("- upgrade to tor >= 0.3.5.1-alpha [recommended]\n") log.Printf("- run this listener %d more times [not a great idea but it'll work]\n", crc-src) log.Printf("the revision counter is only reset when the tor process restarts, so try not to do that in order to prevent this problem from reoccurring\n") return nil, errors.New("client descriptor is newer than service descriptor") } - fmt.Printf("crc: %v src: %v\n", crc, src) } } else if fmt.Sprintf("%v", err) != "550 Unspecified Tor error: Onion address collision" { // (don't worry if there is an address collision -- it's a good thing and means we're using the cached circuits)