# `SSL.Protocol.ClientHandshake`
[🔗](https://github.com/gsmlg-dev/http_fetch/blob/v0.16.7/apps/ex_ssl/lib/ssl/protocol/client_handshake.ex#L1)

Shared record-free ClientHello and HelloRetryRequest orchestration.

# `decode_server_hello`

# `prepare`

```elixir
@spec prepare(
  SSL.ClientHello.Materializer.Materialized.t(),
  term(),
  SSL.PKIX.identity(),
  keyword()
) ::
  {:ok, map(), binary()} | {:error, term()}
```

# `retry`

# `selected_key_pair`

# `validate_hrr_selection`

---

*Consult [api-reference.md](api-reference.md) for complete listing*
