информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Атака на InternetЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Ростелеком заподозрили в попытке... 
 Линуксовый ботнет, распространяющийся... 
 Конец поддержки Internet Explorer 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / theory
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
бред какой-то 13.06.06 14:47  Число просмотров: 2976
Автор: nop Статус: Незарегистрированный пользователь
<"чистая" ссылка>

> Вот что выводится на экран:
> buffer: hello world!, len: 12
> cryptEncrypt() failed with error code -3.
>
> -3 в заголовках прописана как:
> /* No error in function call */
>
> #define CRYPT_OK 0
> /* No error */
>
> /* Error in parameters passed to function */
>
> #define CRYPT_ERROR_PARAM1 -1 /* Bad
> argument, parameter 1 */
> #define CRYPT_ERROR_PARAM2 -2 /* Bad
> argument, parameter 2 */
> #define CRYPT_ERROR_PARAM3 -3 /* Bad
> argument, parameter 3 */
> #define CRYPT_ERROR_PARAM4 -4 /* Bad
> argument, parameter 4 */
> #define CRYPT_ERROR_PARAM5 -5 /* Bad
> argument, parameter 5 */
> #define CRYPT_ERROR_PARAM6 -6 /* Bad
> argument, parameter 6 */
> #define CRYPT_ERROR_PARAM7 -7 /* Bad
> argument, parameter 7 */
>
вот сорсы той самой функции:
C_RET cryptEncrypt( C_IN CRYPT_CONTEXT cryptContext,
C_INOUT void C_PTR buffer,
C_IN int length )
{
static const COMMAND_INFO cmdTemplate = \
{ COMMAND_ENCRYPT, COMMAND_FLAG_NONE, 1, 1 };
static const ERRORMAP errorMap[] = \
{ ARG_O, ARG_S, ARG_N, ARG_LAST };
COMMAND_INFO cmd;
int status;

/* Perform basic client-side error checking. In theory we should also
check for writeability since the encryption does an in-place update,
however when we're hashing data it's valid for the data to be read-
only so we only check for readability. In addition when hashing we
could be doing a hash-wrapup call so we allow a zero length and only
check the buffer if the length is nonzero */
if( !isHandleRangeValid( cryptContext ) )
return( CRYPT_ERROR_PARAM1 );
if( length < 0 )
return( CRYPT_ERROR_PARAM3 );
..............

Функция мне возвращает CRYPT_ERROR_PARAM3
Но у меня же length положительная однозначно. Я даже пробовал без strlen(buffer) просто число вставлять.
<theory> Поиск 






Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2022 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach