Lines Matching refs:ctx

179 	BIO_OK_CTX *ctx;  in ok_new()  local
181 ctx=(BIO_OK_CTX *)OPENSSL_malloc(sizeof(BIO_OK_CTX)); in ok_new()
182 if (ctx == NULL) return(0); in ok_new()
184 ctx->buf_len=0; in ok_new()
185 ctx->buf_off=0; in ok_new()
186 ctx->buf_len_save=0; in ok_new()
187 ctx->buf_off_save=0; in ok_new()
188 ctx->cont=1; in ok_new()
189 ctx->finished=0; in ok_new()
190 ctx->blockout= 0; in ok_new()
191 ctx->sigio=1; in ok_new()
193 EVP_MD_CTX_init(&ctx->md); in ok_new()
196 bi->ptr=(char *)ctx; in ok_new()
216 BIO_OK_CTX *ctx; in ok_read() local
219 ctx=(BIO_OK_CTX *)b->ptr; in ok_read()
221 if ((ctx == NULL) || (b->next_bio == NULL) || (b->init == 0)) return(0); in ok_read()
227 if (ctx->blockout) in ok_read()
229 i=ctx->buf_len-ctx->buf_off; in ok_read()
231 memcpy(out,&(ctx->buf[ctx->buf_off]),i); in ok_read()
235 ctx->buf_off+=i; in ok_read()
238 if (ctx->buf_len == ctx->buf_off) in ok_read()
240 ctx->buf_off=0; in ok_read()
243 if(ctx->buf_len_save- ctx->buf_off_save > 0) in ok_read()
245 ctx->buf_len= ctx->buf_len_save- ctx->buf_off_save; in ok_read()
246 memmove(ctx->buf, &(ctx->buf[ctx->buf_off_save]), in ok_read()
247 ctx->buf_len); in ok_read()
251 ctx->buf_len=0; in ok_read()
253 ctx->blockout= 0; in ok_read()
261 n=IOBS- ctx->buf_len; in ok_read()
262 i=BIO_read(b->next_bio,&(ctx->buf[ctx->buf_len]),n); in ok_read()
266 ctx->buf_len+= i; in ok_read()
269 if (ctx->sigio == 1) sig_in(b); in ok_read()
272 if (ctx->sigio == 0) block_in(b); in ok_read()
275 if (ctx->cont <= 0) break; in ok_read()
287 BIO_OK_CTX *ctx; in ok_write() local
291 ctx=(BIO_OK_CTX *)b->ptr; in ok_write()
294 if ((ctx == NULL) || (b->next_bio == NULL) || (b->init == 0)) return(0); in ok_write()
296 if(ctx->sigio) sig_out(b); in ok_write()
300 n=ctx->buf_len-ctx->buf_off; in ok_write()
301 while (ctx->blockout && n > 0) in ok_write()
303 i=BIO_write(b->next_bio,&(ctx->buf[ctx->buf_off]),n); in ok_write()
308 ctx->cont= 0; in ok_write()
311 ctx->buf_off+=i; in ok_write()
316 ctx->blockout= 0; in ok_write()
317 if (ctx->buf_len == ctx->buf_off) in ok_write()
319 ctx->buf_len=OK_BLOCK_BLOCK; in ok_write()
320 ctx->buf_off=0; in ok_write()
325 n= (inl+ ctx->buf_len > OK_BLOCK_SIZE+ OK_BLOCK_BLOCK) ? in ok_write()
326 (int)(OK_BLOCK_SIZE+OK_BLOCK_BLOCK-ctx->buf_len) : inl; in ok_write()
328 memcpy((unsigned char *)(&(ctx->buf[ctx->buf_len])),(unsigned char *)in,n); in ok_write()
329 ctx->buf_len+= n; in ok_write()
333 if(ctx->buf_len >= OK_BLOCK_SIZE+ OK_BLOCK_BLOCK) in ok_write()
346 BIO_OK_CTX *ctx; in ok_ctrl() local
352 ctx=b->ptr; in ok_ctrl()
357 ctx->buf_len=0; in ok_ctrl()
358 ctx->buf_off=0; in ok_ctrl()
359 ctx->buf_len_save=0; in ok_ctrl()
360 ctx->buf_off_save=0; in ok_ctrl()
361 ctx->cont=1; in ok_ctrl()
362 ctx->finished=0; in ok_ctrl()
363 ctx->blockout= 0; in ok_ctrl()
364 ctx->sigio=1; in ok_ctrl()
368 if (ctx->cont <= 0) in ok_ctrl()
375 ret=ctx->blockout ? ctx->buf_len-ctx->buf_off : 0; in ok_ctrl()
381 if(ctx->blockout == 0) in ok_ctrl()
384 while (ctx->blockout) in ok_ctrl()
394 ctx->finished=1; in ok_ctrl()
395 ctx->buf_off=ctx->buf_len=0; in ok_ctrl()
396 ctx->cont=(int)ret; in ok_ctrl()
407 ret=(long)ctx->cont; in ok_ctrl()
411 EVP_DigestInit_ex(&ctx->md, md, NULL); in ok_ctrl()
418 *ppmd=ctx->md.digest; in ok_ctrl()
460 BIO_OK_CTX *ctx; in sig_out() local
463 ctx=b->ptr; in sig_out()
464 md=&ctx->md; in sig_out()
466 if(ctx->buf_len+ 2* md->digest->md_size > OK_BLOCK_SIZE) return; in sig_out()
473 memcpy(&(ctx->buf[ctx->buf_len]), md->md_data, md->digest->md_size); in sig_out()
474 longswap(&(ctx->buf[ctx->buf_len]), md->digest->md_size); in sig_out()
475 ctx->buf_len+= md->digest->md_size; in sig_out()
478 EVP_DigestFinal_ex(md, &(ctx->buf[ctx->buf_len]), NULL); in sig_out()
479 ctx->buf_len+= md->digest->md_size; in sig_out()
480 ctx->blockout= 1; in sig_out()
481 ctx->sigio= 0; in sig_out()
486 BIO_OK_CTX *ctx; in sig_in() local
491 ctx=b->ptr; in sig_in()
492 md=&ctx->md; in sig_in()
494 if((int)(ctx->buf_len-ctx->buf_off) < 2*md->digest->md_size) return; in sig_in()
497 memcpy(md->md_data, &(ctx->buf[ctx->buf_off]), md->digest->md_size); in sig_in()
499 ctx->buf_off+= md->digest->md_size; in sig_in()
503 ret= memcmp(&(ctx->buf[ctx->buf_off]), tmp, md->digest->md_size) == 0; in sig_in()
504 ctx->buf_off+= md->digest->md_size; in sig_in()
507 ctx->sigio= 0; in sig_in()
508 if(ctx->buf_len != ctx->buf_off) in sig_in()
510 memmove(ctx->buf, &(ctx->buf[ctx->buf_off]), ctx->buf_len- ctx->buf_off); in sig_in()
512 ctx->buf_len-= ctx->buf_off; in sig_in()
513 ctx->buf_off= 0; in sig_in()
517 ctx->cont= 0; in sig_in()
523 BIO_OK_CTX *ctx; in block_out() local
527 ctx=b->ptr; in block_out()
528 md=&ctx->md; in block_out()
530 tl= ctx->buf_len- OK_BLOCK_BLOCK; in block_out()
531 ctx->buf[0]=(unsigned char)(tl>>24); in block_out()
532 ctx->buf[1]=(unsigned char)(tl>>16); in block_out()
533 ctx->buf[2]=(unsigned char)(tl>>8); in block_out()
534 ctx->buf[3]=(unsigned char)(tl); in block_out()
535 EVP_DigestUpdate(md, (unsigned char*) &(ctx->buf[OK_BLOCK_BLOCK]), tl); in block_out()
536 EVP_DigestFinal_ex(md, &(ctx->buf[ctx->buf_len]), NULL); in block_out()
537 ctx->buf_len+= md->digest->md_size; in block_out()
538 ctx->blockout= 1; in block_out()
543 BIO_OK_CTX *ctx; in block_in() local
548 ctx=b->ptr; in block_in()
549 md=&ctx->md; in block_in()
552 tl =ctx->buf[0]; tl<<=8; in block_in()
553 tl|=ctx->buf[1]; tl<<=8; in block_in()
554 tl|=ctx->buf[2]; tl<<=8; in block_in()
555 tl|=ctx->buf[3]; in block_in()
557 if (ctx->buf_len < tl+ OK_BLOCK_BLOCK+ md->digest->md_size) return; in block_in()
559 EVP_DigestUpdate(md, (unsigned char*) &(ctx->buf[OK_BLOCK_BLOCK]), tl); in block_in()
561 if(memcmp(&(ctx->buf[tl+ OK_BLOCK_BLOCK]), tmp, md->digest->md_size) == 0) in block_in()
564 ctx->buf_off_save= tl+ OK_BLOCK_BLOCK+ md->digest->md_size; in block_in()
565 ctx->buf_len_save= ctx->buf_len; in block_in()
566 ctx->buf_off= OK_BLOCK_BLOCK; in block_in()
567 ctx->buf_len= tl+ OK_BLOCK_BLOCK; in block_in()
568 ctx->blockout= 1; in block_in()
572 ctx->cont= 0; in block_in()