()
| 174 | } |
| 175 | |
| 176 | func (c *client) run() (err error) { |
| 177 | c.sendPipe(c.encryptPipe(c.packPipe(c.dispatch(c.decodePipe(c.decryptPipe(c.readPipe())))))) |
| 178 | for { |
| 179 | var ok bool |
| 180 | select { |
| 181 | case <-c.ctx.Done(): |
| 182 | return |
| 183 | case err, ok = <-c.errc: |
| 184 | if ok { |
| 185 | if errors.Is(err, io.EOF) { |
| 186 | err = nil |
| 187 | return |
| 188 | } |
| 189 | return |
| 190 | } |
| 191 | } |
| 192 | } |
| 193 | return |
| 194 | } |
| 195 | |
| 196 | func (c *client) close() (err error) { |
| 197 | c.cancel() |
no test coverage detected