summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton <anton@picapica>2016-12-27 22:12:21 +0400
committerAnton <anton@picapica>2016-12-27 22:12:21 +0400
commit0b7e1040293e24a20460a3cf5707b99aef2c969c (patch)
tree679f6ffa16dc1a9dc1109b349a31ab2a8369eee7
parentf13e465ecbc0ea245a3945e562d8a74f5a1f3493 (diff)
downloadpica-pica-0b7e1040293e24a20460a3cf5707b99aef2c969c.tar.gz
pica-pica-0b7e1040293e24a20460a3cf5707b99aef2c969c.zip
added new proto message definition - PICA_PROTO_DIRECTC2C_SWITCH
-rw-r--r--PICA_proto.h2
-rwxr-xr-xdoc/proto.txt5
2 files changed, 7 insertions, 0 deletions
diff --git a/PICA_proto.h b/PICA_proto.h
index 09cee25..32c817a 100644
--- a/PICA_proto.h
+++ b/PICA_proto.h
@@ -36,6 +36,7 @@
#define PICA_PROTO_DIRECTC2C_IPV6 0xA1
#define PICA_PROTO_DIRECTC2C_DNS 0xA2
#define PICA_PROTO_DIRECTC2C_FAILED 0x0C
+#define PICA_PROTO_DIRECTC2C_SWITCH 0x0D
#define PICA_PROTO_MSGUTF8 0x30
#define PICA_PROTO_MSGOK 0x40
@@ -91,6 +92,7 @@
#define PICA_PROTO_DIRECTC2C_ADDRLIST_ITEM_IPV4_SIZE 7
#define PICA_PROTO_DIRECTC2C_ADDRLIST_ITEM_IPV6_SIZE 19
#define PICA_PROTO_DIRECTC2C_FAILED_SIZE 4
+#define PICA_PROTO_DIRECTC2C_SWITCH_SIZE 4
#define PICA_PROTO_MSGOK_SIZE 4
diff --git a/doc/proto.txt b/doc/proto.txt
index 53c13c5..b45e2d9 100755
--- a/doc/proto.txt
+++ b/doc/proto.txt
@@ -82,6 +82,11 @@ UH - user hash - SHA224 хэш от сертификата пользоватеÐ
После получения этого сообщения вызываемый клиент начинает попытки подключения к прямым адресам инициатора, если от инициатора был получен список прямых
адресов и прямые подключения разрешены настройками вызываемого
++++[переключение на прямое соединение]
+0x0D 0x0D (2 псевдослучайных байта)
+отправляется после успешного TLS хэндшейка на прямом соединении каждой из сторон по соединению через ноду, после отправки этого сообщения все следующие сообщения
+отправляются по прямому соединению, получатель сообщения соответственно ожидает следующие соединения уже по прямому соединению.
+
+++[сообщение - текст в кодировке UTF8]
0x30 0x30 (длина сообщения в байтах- 2 байта в формате little-endian) сообщение в кодировке UTF8