bio.cc File Reference
#include "squid.h"
#include "ssl/support.h"
#include "base/Raw.h"
#include "comm.h"
#include "fd.h"
#include "fde.h"
#include "globals.h"
#include "ip/Address.h"
#include "parser/BinaryTokenizer.h"
#include "ssl/bio.h"
Include dependency graph for bio.cc:

Go to the source code of this file.

Functions

static int squid_bio_write (BIO *table, const char *buf, int size)
 wrapper for Bio::write() More...
 
static int squid_bio_read (BIO *table, char *buf, int size)
 wrapper for Bio::read() More...
 
static int squid_bio_puts (BIO *table, const char *str)
 implements puts() via write() More...
 
static long squid_bio_ctrl (BIO *table, int cmd, long arg1, void *arg2)
 other BIO manipulations (those without dedicated callbacks in BIO table) More...
 
static int squid_bio_create (BIO *bi)
 initializes BIO table after allocation More...
 
static int squid_bio_destroy (BIO *table)
 cleans BIO table before deallocation More...
 
static void squid_ssl_info (const SSL *ssl, int where, int ret)
 wrapper for Bio::stateChanged() More...
 
void applyTlsDetailsToSSL (SSL *ssl, Security::TlsDetails::Pointer const &details, Ssl::BumpMode bumpMode)
 

Variables

static BIO_METHOD SquidMethods
 

Function Documentation

◆ applyTlsDetailsToSSL()

void applyTlsDetailsToSSL ( SSL *  ssl,
Security::TlsDetails::Pointer const &  details,
Ssl::BumpMode  bumpMode 
)

◆ squid_bio_create()

static int squid_bio_create ( BIO *  h)
static

Definition at line 446 of file bio.cc.

References BIO_set_data().

Referenced by Ssl::Bio::Create().

◆ squid_bio_ctrl()

static long squid_bio_ctrl ( BIO *  h,
int  cmd,
long  arg1,
void *  arg2 
)
static

◆ squid_bio_destroy()

static int squid_bio_destroy ( BIO *  data)
static

Definition at line 462 of file bio.cc.

References BIO_get_data(), and BIO_set_data().

Referenced by Ssl::Bio::Create().

◆ squid_bio_puts()

static int squid_bio_puts ( BIO *  h,
const char *  str 
)
static

Definition at line 489 of file bio.cc.

References assert, and squid_bio_write().

Referenced by Ssl::Bio::Create().

◆ squid_bio_read()

static int squid_bio_read ( BIO *  h,
char *  buf,
int  size 
)
static

Definition at line 480 of file bio.cc.

References assert, BIO_get_data(), Ssl::Bio::read(), and size.

Referenced by Ssl::Bio::Create().

◆ squid_bio_write()

static int squid_bio_write ( BIO *  h,
const char *  buf,
int  num 
)
static

Definition at line 471 of file bio.cc.

References assert, BIO_get_data(), size, and Ssl::Bio::write().

Referenced by Ssl::Bio::Create(), and squid_bio_puts().

◆ squid_ssl_info()

static void squid_ssl_info ( const SSL *  ssl,
int  where,
int  ret 
)
static

Definition at line 560 of file bio.cc.

References BIO_get_data().

Referenced by Ssl::Bio::Link().

Variable Documentation

◆ SquidMethods

BIO_METHOD SquidMethods
static
Initial value:
= {
BIO_TYPE_SOCKET,
"squid",
nullptr,
}
static int squid_bio_puts(BIO *h, const char *str)
implements puts() via write()
Definition: bio.cc:489
static int squid_bio_create(BIO *h)
initializes BIO table after allocation
Definition: bio.cc:446
static int squid_bio_write(BIO *h, const char *buf, int num)
wrapper for Bio::write()
Definition: bio.cc:471
static int squid_bio_destroy(BIO *data)
cleans BIO table before deallocation
Definition: bio.cc:462
static long squid_bio_ctrl(BIO *h, int cmd, long arg1, void *arg2)
other BIO manipulations (those without dedicated callbacks in BIO table)
Definition: bio.cc:497
static int squid_bio_read(BIO *h, char *buf, int size)
wrapper for Bio::read()
Definition: bio.cc:480
#define NULL
Definition: types.h:145

Initialization structure for the BIO table with Squid-specific methods and BIO method wrappers.

Definition at line 47 of file bio.cc.

Referenced by Ssl::Bio::Create().

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors