I'm trying to write simple port scanner and using "net" to check port 
availability:
func sock() {
  conn, err := net.Dial("tcp", "192.168.0.1:9991")
  if err != nil {
    fmt.Printf("\n!!!:: %v", err)
    conn.Close() 

Debug return error:
!!!:: dial tcp 192.168.0.1:9991: getsockopt: connection refusedpanic: 
runtime error: invalid memory address or nil pointer dereference 
[signal 0xb code=0x1 addr=0x20 pc=0x401186] 

goroutine 1 [running]: 
panic(0x564e00, 0xc82000a140) 
       /usr/lib/go-1.6/src/runtime/panic.go:481 +0x3e6 
main.sock() 
       /home/m/go/ps.go:16 +0x186 
main.main() 
       /home/m/go/ps.go:70 +0x620 
exit status 2


It looks like "refused" calls runtime error and app crash in panic. How can 
I work with errors to keep my app working?

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to