Если при вызове функций шифрования CPEncrypt(), CPCEncrypt(), CPDecrypt() или CPCDecrypt() в параметре dwFlags установлены флаги CP_CRYPT_HASH_PACKET и CP_CRYPT_DATA_IOVEC, или при вызове функций хэширования CPHashData() и CPCHashData() установлен флаг CP_HASH_DATA_IOVEC, то обрабатываемые данные представлены в форме вектора ввода-вывода -- массивом структур CSP_iovec. Последовательность структур в массиве должна соответствовать последовательности фрагментов данных в пакете.
Структуры | Описание |
---|
CSP_iovec_ | Cтруктура определяет представление фрагмента данных во внешнем интерфейсе. |
Макросы | Описание |
---|
CSP_UIO_MAXIOV |
Максимально допустимое число фрагментов в представлении пакета вектором ввода вывода. |
CSP_KERNEL_UIO_MAXIOV |
Максимально допустимое число фрагментов при использовании библиотеки уровня ядра или в адресном пространстве пользователя. |
CSP_UIOV_MAXBAD_LEN |
Значение не инициализированного поля длины. |
IOVEC_PTR |
Макрос возвращает указатель на фрагмент данных с номером n в векторе ввода вывода. |
IOVEC_LEN |
Макрос возвращает длину фрагмента данных с номером n в векторе ввода вывода. |
CP_CRYPT_DATA_IOVEC |
Флаг - признак представления пакета в форме вектора ввода/вывода. Для функций CPEncrypt(), CPCEncrypt(),CPDecrypt(), CPCDecrypt() флаг должен быть установлен, если используется представление пакета в форме вектора ввода/вывода, в противном случае пакет представляется буфером. См. Шифрование и хэширование пакета . |
CP_HASH_DATA_IOVEC |
Флаг параметра dwFlags - признак представления данных в форме вектора ввода/вывода для функций CPHashData() и CPCHashData(). Должен быть установлен, если используется представление данных в форме вектора ввода/вывода, в противном случае данные представляются буфером. |