Skip to content

Commit

Permalink
Merge pull request #498 from rakshasa/fix/server-example
Browse files Browse the repository at this point in the history
fix: segfault in example server without address or socket args
  • Loading branch information
wolf31o2 authored Feb 13, 2024
2 parents b4b287a + fd276e8 commit e3d0912
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions cmd/gouroboros/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,10 @@ package main
import (
"flag"
"fmt"
ouroboros "github.com/blinklabs-io/gouroboros"
"net"
"os"

ouroboros "github.com/blinklabs-io/gouroboros"
)

type serverFlags struct {
Expand All @@ -38,20 +39,25 @@ func newServerFlags() *serverFlags {
func createListenerSocket(f *globalFlags) (net.Listener, error) {
var err error
var listen net.Listener
if f.socket != "" {
if err := os.RemoveAll(f.socket); err != nil {

switch {
case f.socket != "":
if err := os.Remove(f.socket); err != nil {
return nil, fmt.Errorf("failed to remove existing socket: %s", err)
}
listen, err = net.Listen("unix", f.socket)
if err != nil {
return nil, fmt.Errorf("failed to open listening socket: %s", err)
}
} else if f.address != "" {
case f.address != "":
listen, err = net.Listen("tcp", f.address)
if err != nil {
return nil, fmt.Errorf("failed to open listening socket: %s", err)
}
default:
return nil, fmt.Errorf("no listening address or socket specified")
}

return listen, nil
}

Expand Down

0 comments on commit e3d0912

Please sign in to comment.