<!--
{
  "availability" : [

  ],
  "documentType" : "symbol",
  "framework" : "Event",
  "identifier" : "/documentation/Event/SocketError/connectionClosed",
  "metadataVersion" : "0.1.0",
  "role" : "Case",
  "symbol" : {
    "kind" : "Case",
    "modules" : [
      "Event"
    ],
    "preciseIdentifier" : "s:5Event11SocketErrorO16connectionClosedyA2CmF"
  },
  "title" : "SocketError.connectionClosed"
}
-->

# SocketError.connectionClosed

The peer performed an orderly shutdown of its write side (`read(2)` returned 0).

```
case connectionClosed
```

## Discussion

Surfaced from [`read(maxBytes:timeout:)`](/documentation/Event/Socket/read(maxBytes:timeout:)) to distinguish EOF from a transport error.