$Lock

Материал из MyDC's Wiki

Перейти к: навигация, поиск

Команда протокола NMDC.

Синтаксис

$Lock {код} Pk={пк}|

Направление команды

Хаб ---> Клиент
Клиент ---> Клиент
Хаблист ---> Хаб
Хаб ---> Пингер

Описание

Данная команда предназначалась для того, чтобы убедиться в том, что с сервером соединяется оригинальный DC-клиент (NeoModus Direct Connect). Сервер (хаб, клиент, хаблист) может и не проверять отправленный клиентом (клиент, хаб, пингер) ключ, однако ключ должен посылаться клиентом в любом случае.
{код} — какая-либо последовательность символов (может даже случайная), исключая пробел, $ и |, максимальная и минимальная длина которой неизвестны.
{пк} — идентификатор устройства.
Эта команда является частью рукопожатия между клиентом и хабом, между клиентом и клиентом и между хабом и хаб-листом. Команды $Lock и $Key предназначались для ограничения доступа в хаб клиентов сторонних разработчиков, но из-за того, что используемый алгоритм легко декодируется (см. Lock2Key), практически каждый может создать свой клиент.
Клиент никогда не должен посылать команду $Lock на хаб. Клиенты должны отсылать команду $Lock только когда два клиента соединяются друг с другом.

Пример для DC++:

$Lock EXTENDEDPROTOCOLABCABCABCABCABCABC Pk=DCPLUSPLUS0.242ABCABC|

Секции "ABCABC" являются наполнителями.

Ключевое слово EXTENDEDPROTOCOL в коде команды даёт право клиенту, кроме прочих команд рукопожатия отправить команду $Supports. Те есть это слово говорит о том, что хаб (клиент) поддерживает систему дополнительных расширений или характеристик.

Хаб(клиент) в ответ на команду $Supports, также отправляет эту команду другой стороне уже со своим списком поддерживаемых расширений. Если какой-либо из участников не поддерживает дополнительные расширения, отправка команды $Supports не происходит.

Характеристики команды $Lock в протоколе NMDC:

Экранируемые коды(символы):
0 (\0), 5(\5), 36($), 96(`), 124(|), 126(~)
Источник — «http://wiki.mydc.ru/$Lock»
Личные инструменты
Пространства имён
Варианты
Действия
Навигация
RusHub
Инструменты
Портал