stadium-proto/Handshake/Request.md

1.8 KiB
Raw Blame History

Handshake.Request

Значение: 0x1001

Client2Server

Инициирующее рукопожатие событие. Передаёт все ключевые данные для осуществления дальнейшей коммуникации.

Фиксированная схема:

  • Магическое число
    • Размер: 8 байт
    • Тип: uint64_t
    • Магическое число протокола, по которому определяется совместимость цели с протоколом MFP. Являет из себя строку "MarafonP" в кодировке ASCII.
  • Версия протокола
    • Размер: 4 байта
    • Тип: uint8_t[4]
    • Максимальная поддерживаемая запрашивающим версия протокола.
  • Флаги переподключения
    • Размер: 2 байта
    • Тип: uint16_t
    • Описывает параметры нового подключения:
      • 0b0000000000000000: оставить текущее подключение
      • 0b0000000000000001: переподключиться к тому-же порту
      • 0b0000000000000010: запросить новый порт для подключения
      • 0b0000000000000100: использовать TCP
      • 0b0000000000001000: использовать TLS
      • 0b0000111111110000: резерв под расширение
      • 0b1111000000000000: резерв под под нужды сторонних реализаций
  • Размер пакета
    • Размер: 4 байта
    • Тип: uint32_t
    • Устанавливает используемый при коммуникации размер пакета.

Server2Client

Не применимо.

Server2Server

Также как и Client2Server.