[se-StorePathName] was missing in the footnotes, and links to sets were wrong. Also rename serialization.md to types.md to match the title. Change-Id: I8e602df1958cf5354c6fd3a5c16cbe859a0549b9 Reviewed-on: https://cl.snix.dev/c/snix/+/30275 Autosubmit: Florian Klink <flokli@flokli.de> Tested-by: besadii Reviewed-by: Brian Olsen <brian@maven-group.org>
1.2 KiB
1.2 KiB
| title | slug | description | summary | date | lastmod | draft | weight | toc |
|---|---|---|---|---|---|---|---|---|
| Handshake | handshake | 2025-03-24T13:10:37+02:00 | 2025-03-24T13:10:37+02:00 | false | 51 | true |
When connecting, the handshake sequence documented below must be performed, so client and server can agree on a protocol version to use and exchange some parameters.
client -> server
- 0x6e697863 :: Int (hardcoded, 'nixc' in ASCII)
client <- server
client -> server
- clientVersion :: Int
If clientVersion is 1.14 or later
- sendCpu :: Bool (hardcoded to false in client)
If sendCpu is true
- cpuAffinity :: Int (obsolete and ignored)
If clientVersion is 1.11 or later
- reserveSpace :: Bool (obsolete, ignored and set to false)
client <- server
If clientVersion is 1.33 or later
- nixVersion :: String
If clientVersion is 1.35 or later
- trusted :: OptTrusted
client <- server
- send logs
- [operation]({{< relref "operations.md" >}}) :: Int
[se-Int]: {{< relref "types.md" >}}#int [se-Bool]: {{< relref "types.md" >}}#bool