IXpbBuilder
Интерфейс IXpbBuilder
-
clear
void clear(StatusType* status)
Сбрасывает построитель в пустое состояние.
-
removeCurrent
void removeCurrent(StatusType* status)
Удаляет текущий clumplet.
-
insertInt
void insertInt(StatusType* status, unsigned char tag, int value)
Вставляет clumplet со значением, представляющим целое число в сетевомформате.
-
insertBigInt
void insertBigInt(StatusType* status, unsigned char tag, ISC_INT64 value)
Вставляет clumplet со значением, представляющим 64-битное целое число всетевом формате.
-
insertBytes
void insertBytes(StatusType* status, unsigned char tag, const void* bytes, unsigned length)
Вставляет clumplet со значением, содержащим переданные байты.
-
insertTag
void insertTag(StatusType* status, unsigned char tag)
Вставляет clumplet без значения.
-
isEof
FB_BOOLEAN isEof(StatusType* status)
Проверяет, нет ли текущего clumplet.
-
moveNext
void moveNext(StatusType* status)
Переходит к следующему clumplet.
-
rewind
void rewind(StatusType* status)
Переходит к первому clumplet.
-
findFirst
FB_BOOLEAN findFirst(StatusType* status, unsigned char tag)
Находит первый clumplet с данным тегом.
-
findNext
FB_BOOLEAN findNext(StatusType* status)
Находит следующий clumplet с заданным тегом.
-
getTag
unsigned char getTag(StatusType* status)
Возвращает тег для текущего clumplet.
-
getLength
unsigned getLength(StatusType* status)
Возвращает длину текущего значения clumplet.
-
getInt
int getInt(StatusType* status)
Возвращает значение текущего clumplet как целое.
-
getBigInt
SC_INT64 getBigInt(StatusType* status)
Возвращает значение текущего clumplet как 64-битное целое число.
-
getString
const char* getString(StatusType* status)
Возвращает значение текущего clumplet как указатель на нуль-терминальнуюстроку (указатель действителен до следующего вызова этого метода).
-
getBytes
const unsigned char* getBytes(StatusType* status)
Возвращает значение текущего clumplet как указатель на
unsigned char
. -
getBufferLength
unsigned getBufferLength(StatusType* status)
Возвращает длину блока параметров.
-
getBuffer
const unsigned char* getBuffer(StatusType* status)
Возвращает указатель на блок параметров.
Константы, определенные интерфейсом IXpbBuilder
Допустимые типы построителей:
-
BATCH
(IBatch parameters block) -
BPB
(BLOB parameters block) -
DPB
(database attachment parameters block) -
SPB_ATTACH
(service attachment parameters block) -
SPB_START
(start service parameters) -
SPB_SEND
(send items inIService::query()
) -
SPB_RECEIVE
(receive items inIService::query()
) -
SPB_RESPONSE
(response fromIService::query()
) -
TPB
(transaction parameters block)
Плагин шифрования данных передаваемых по сети
Алгоритмы, выполняющие шифрование данных для разных целей, хорошоизвестны на протяжении многих лет. Единственной "маленькой" типичнойпроблемой остается то, где можно получить секретный ключ, который будетиспользоваться этим алгоритмом. К счастью для шифрования сетевоготрафика есть одно хорошее решение — уникальный ключ шифрования долженбыть сгенерирован плагином аутентификации. По крайней мере, по умолчаниюплагин SRP может создать такой ключ. Этот ключ устойчив к атакам, в томчисле с помощью "человека в середине" (man-in-the-middle). Поэтому дляплагина шифрования сетевого трафика был выбран следующий способпредоставления ключей: получать его от плагина проверки подлинности(аутентификации). (В случае, если используемый плагин аутентификации неможет предоставить ключ, псевдоплагин может быть добавлен в спискиAuthClient и AuthServer для создания ключей, что-то вроде двухасимметричных пар приватного и публичного.)