nakagami / firebirdsql

Firebird RDBMS sql driver for Go (golang)
MIT License
220 stars 60 forks source link

connAuxRequest() returns addr 0.0.0.0 #156

Open jorge-goncalves opened 10 months ago

jorge-goncalves commented 10 months ago

When trying to listen to an event on a server behind a firewall I am getting the address 0.0.0.0 instead of the address of the server in function

  func (s *Subscription) getEventManager() (*eventManager, error){
     auxHandle, addr, port, err := s.connAuxRequest()

switching to using the address of the main link solved the problem

func (s *Subscription) getEventManager() (*eventManager, error) {
    auxHandle, addr, port, err := s.connAuxRequest()
    if err != nil {
        return nil, err
    }
    var address string
    if addr.String() != "0.0.0.0" {
        address = addr.String() + ":" + strconv.Itoa(port)
    } else {
        addr := s.fc.dsn.addr
        if idx := strings.Index(s.fc.dsn.addr, ":"); idx > 0 {
            addr = s.fc.dsn.addr[0:idx]
        }

        address = addr + ":" + strconv.Itoa(port)
    }
.......