1

Background

  • To learn network programming, I tried to write raw socket by Golang, did not use net module.

Procedure

    1. Server binds socket(syscall.Bind) and listens(syscall.Listen).
    1. client tries to connect(syscall.Connect) and server accepts(syscall.Accepts)
    1. server responses "Hello" to socket by syscall.Write.
    1. client reads socket by syscall.Read

then, code is here ->

https://gist.github.com/ryfjwr/21e01fb5e133861b41e981e14ced8672

Problem

  • above Procedure, while executing step 3, server exists because of broken pipe.

  • at first, run server

    $ go run tcp-server.go

  • then, run client

    $ go run tcp-client.go

  • then gets broken pipe error.

    $ go run tcp-server.go

    Write Error broken pipe exit

Question

Jonathan Hall
  • 75,165
  • 16
  • 143
  • 189
ryfjwr
  • 21
  • 3

0 Answers0