Lines Matching full:ctx
95 BIO_F_BUFFER_CTX *ctx;
97 ctx=(BIO_F_BUFFER_CTX *)OPENSSL_malloc(sizeof(BIO_F_BUFFER_CTX));
98 if (ctx == NULL) return(0);
99 ctx->ibuf=(char *)OPENSSL_malloc(DEFAULT_BUFFER_SIZE);
100 if (ctx->ibuf == NULL) { OPENSSL_free(ctx); return(0); }
101 ctx->obuf=(char *)OPENSSL_malloc(DEFAULT_BUFFER_SIZE);
102 if (ctx->obuf == NULL) { OPENSSL_free(ctx->ibuf); OPENSSL_free(ctx); return(0); }
103 ctx->ibuf_size=DEFAULT_BUFFER_SIZE;
104 ctx->obuf_size=DEFAULT_BUFFER_SIZE;
105 ctx->ibuf_len=0;
106 ctx->ibuf_off=0;
107 ctx->obuf_len=0;
108 ctx->obuf_off=0;
111 bi->ptr=(char *)ctx;
134 BIO_F_BUFFER_CTX *ctx;
137 ctx=(BIO_F_BUFFER_CTX *)b->ptr;
139 if ((ctx == NULL) || (b->next_bio == NULL)) return(0);
144 i=ctx->ibuf_len;
149 memcpy(out,&(ctx->ibuf[ctx->ibuf_off]),i);
150 ctx->ibuf_off+=i;
151 ctx->ibuf_len-=i;
163 if (outl > ctx->ibuf_size)
183 i=BIO_read(b->next_bio,ctx->ibuf,ctx->ibuf_size);
190 ctx->ibuf_off=0;
191 ctx->ibuf_len=i;
200 BIO_F_BUFFER_CTX *ctx;
203 ctx=(BIO_F_BUFFER_CTX *)b->ptr;
204 if ((ctx == NULL) || (b->next_bio == NULL)) return(0);
208 i=ctx->obuf_size-(ctx->obuf_len+ctx->obuf_off);
212 memcpy(&(ctx->obuf[ctx->obuf_off+ctx->obuf_len]),in,inl);
213 ctx->obuf_len+=inl;
218 if (ctx->obuf_len != 0)
222 memcpy(&(ctx->obuf[ctx->obuf_off+ctx->obuf_len]),in,i);
226 ctx->obuf_len+=i;
231 i=BIO_write(b->next_bio,&(ctx->obuf[ctx->obuf_off]),
232 ctx->obuf_len);
240 ctx->obuf_off+=i;
241 ctx->obuf_len-=i;
242 if (ctx->obuf_len == 0) break;
247 ctx->obuf_off=0;
250 while (inl >= ctx->obuf_size)
273 BIO_F_BUFFER_CTX *ctx;
279 ctx=(BIO_F_BUFFER_CTX *)b->ptr;
284 ctx->ibuf_off=0;
285 ctx->ibuf_len=0;
286 ctx->obuf_off=0;
287 ctx->obuf_len=0;
292 ret=(long)ctx->obuf_len;
296 p1=ctx->ibuf;
297 for (i=0; i<ctx->ibuf_len; i++)
299 if (p1[ctx->ibuf_off + i] == '\n') ret++;
303 ret=(long)ctx->obuf_len;
311 ret=(long)ctx->ibuf_len;
319 if (num > ctx->ibuf_size)
323 if (ctx->ibuf != NULL) OPENSSL_free(ctx->ibuf);
324 ctx->ibuf=p1;
326 ctx->ibuf_off=0;
327 ctx->ibuf_len=(int)num;
328 memcpy(ctx->ibuf,ptr,(int)num);
338 obs=ctx->obuf_size;
342 ibs=ctx->ibuf_size;
351 p1=ctx->ibuf;
352 p2=ctx->obuf;
353 if ((ibs > DEFAULT_BUFFER_SIZE) && (ibs != ctx->ibuf_size))
358 if ((obs > DEFAULT_BUFFER_SIZE) && (obs != ctx->obuf_size))
363 if (p1 != ctx->ibuf) OPENSSL_free(p1);
367 if (ctx->ibuf != p1)
369 OPENSSL_free(ctx->ibuf);
370 ctx->ibuf=p1;
371 ctx->ibuf_off=0;
372 ctx->ibuf_len=0;
373 ctx->ibuf_size=ibs;
375 if (ctx->obuf != p2)
377 OPENSSL_free(ctx->obuf);
378 ctx->obuf=p2;
379 ctx->obuf_off=0;
380 ctx->obuf_len=0;
381 ctx->obuf_size=obs;
393 if (ctx->obuf_len <= 0)
402 if (ctx->obuf_len > 0)
405 &(ctx->obuf[ctx->obuf_off]),
406 ctx->obuf_len);
408 fprintf(stderr,"FLUSH [%3d] %3d -> %3d\n",ctx->obuf_off,ctx->obuf_len,r);
412 ctx->obuf_off+=r;
413 ctx->obuf_len-=r;
417 ctx->obuf_len=0;
418 ctx->obuf_off=0;
427 if ( !BIO_set_read_buffer_size(dbio,ctx->ibuf_size) ||
428 !BIO_set_write_buffer_size(dbio,ctx->obuf_size))
458 BIO_F_BUFFER_CTX *ctx;
462 ctx=(BIO_F_BUFFER_CTX *)b->ptr;
468 if (ctx->ibuf_len > 0)
470 p= &(ctx->ibuf[ctx->ibuf_off]);
472 for (i=0; (i<ctx->ibuf_len) && (i<size); i++)
484 ctx->ibuf_len-=i;
485 ctx->ibuf_off+=i;
494 i=BIO_read(b->next_bio,ctx->ibuf,ctx->ibuf_size);
502 ctx->ibuf_len=i;
503 ctx->ibuf_off=0;