Transport.cc File Reference
#include "squid.h"
#include "ip/Address.h"
#include "ip/tools.h"
#include "tools/squidclient/Ping.h"
#include "tools/squidclient/Transport.h"
#include <iostream>
Include dependency graph for Transport.cc:

Go to the source code of this file.

Functions

static int client_comm_bind (int sock, const Ip::Address &addr)
 Set up the source socket address from which to send. More...
 
static void resolveDestination (Ip::Address &iaddr)
 
static int client_comm_connect (int sock, const Ip::Address &addr)
 Set up the destination socket address for message to send to. More...
 
static int verifyByCA (gnutls_session_t session)
 
static int verifyTlsCertificate (gnutls_session_t session)
 
static void gnutlsDebugHandler (int level, const char *msg)
 
static bool doTlsHandshake (const char *type)
 
static bool loadTlsParameters ()
 
static bool tryTlsAnonymous ()
 
static bool tryTlsCertificate (const char *hostname)
 

Variables

int conn = -1
 the current server connection FD More...
 

Function Documentation

◆ client_comm_bind()

static int client_comm_bind ( int  sock,
const Ip::Address addr 
)
static

◆ client_comm_connect()

static int client_comm_connect ( int  sock,
const Ip::Address addr 
)
static

◆ doTlsHandshake()

static bool doTlsHandshake ( const char *  type)
static

Definition at line 403 of file Transport.cc.

References Transport::Config, conn, debugVerbose, and type.

Referenced by tryTlsAnonymous(), and tryTlsCertificate().

◆ gnutlsDebugHandler()

static void gnutlsDebugHandler ( int  level,
const char *  msg 
)
static

Definition at line 346 of file Transport.cc.

References debugVerbose.

Referenced by Transport::InitTls().

◆ loadTlsParameters()

static bool loadTlsParameters ( )
static

Definition at line 432 of file Transport.cc.

References Transport::Config, and NULL.

Referenced by tryTlsAnonymous(), and tryTlsCertificate().

◆ resolveDestination()

◆ tryTlsAnonymous()

static bool tryTlsAnonymous ( )
static

Definition at line 449 of file Transport.cc.

References Transport::Config, doTlsHandshake(), and loadTlsParameters().

Referenced by Transport::MaybeStartTls().

◆ tryTlsCertificate()

static bool tryTlsCertificate ( const char *  hostname)
static

Definition at line 468 of file Transport.cc.

References Transport::Config, conn, doTlsHandshake(), and loadTlsParameters().

Referenced by Transport::MaybeStartTls().

◆ verifyByCA()

static int verifyByCA ( gnutls_session_t  session)
static

Definition at line 296 of file Transport.cc.

References type.

Referenced by verifyTlsCertificate().

◆ verifyTlsCertificate()

static int verifyTlsCertificate ( gnutls_session_t  session)
static

Definition at line 328 of file Transport.cc.

References verifyByCA().

Referenced by Transport::InitTls().

Variable Documentation

◆ conn

int conn = -1

Definition at line 26 of file Transport.cc.

Referenced by Comm::TcpAcceptor::acceptNext(), Comm::TcpAcceptor::acceptOne(), Mgr::ActionWriter::ActionWriter(), AddOpenedHttpSocket(), FwdState::advanceDestination(), TunnelStateData::advanceDestination(), Format::Format::assemble(), Auth::UserRequest::authenticate(), authenticateAuthenticateUser(), authTryGetUser(), clientReplyContext::buildReplyHeader(), buildUrlFromHost(), IdentLookup::checkForAsync(), checkTimeouts(), Snmp::Inquirer::cleanup(), Mgr::Inquirer::cleanup(), Ftp::Channel::clear(), IdleConnList::clearHandlers(), Ipc::UdsOp::clearTimeout(), clientAclChecklistFill(), clientBuildError(), clientFollowXForwardedForCheck(), clientIdentDone(), clientLifetimeTimeout(), clientNegotiateSSL(), clientProcessRequest(), clientProcessRequestFinished(), ClientSocketContextPushDeferredIfNeeded(), clientTunnelOnError(), Ftp::Channel::close(), Transport::CloseConnection(), IdleConnList::closeN(), FwdState::closePendingConnection(), TunnelStateData::closePendingConnection(), comm_import_opened(), comm_init_opened(), comm_open_listener(), comm_openex(), comm_read(), comm_read_base(), comm_reset_close(), commHalfClosedReader(), commSetConnTimeout(), commUnsetConnTimeout(), Transport::Connect(), Ftp::Client::connectDataChannel(), Log::TcpLogger::connectDone(), TunnelStateData::connectDone(), TunnelStateData::connectedToPeer(), FwdState::connectingTimeout(), ResolvedPeers::ConnectionFamily(), TunnelStateData::connectToPeer(), Ftp::Server::createDataConnection(), CreateSession(), StoreEntry::delayAwareRead(), Log::TcpLogger::delayedReconnect(), Log::TcpLogger::disconnect(), Log::TcpLogger::doConnect(), clientReplyContext::doGetMoreData(), Ipc::Port::doListen(), Comm::TcpAcceptor::doneAll(), Log::TcpLogger::doneAll(), Ip::Qos::doNfmarkLocalHit(), Ip::Qos::doNfmarkLocalMiss(), doTlsHandshake(), Ip::Qos::doTosLocalHit(), Ip::Qos::doTosLocalMiss(), TunnelStateData::Connection::error(), errorSend(), errorSendComplete(), FwdState::establishTunnelThruProxy(), TunnelStateData::establishTunnelThruProxy(), Mgr::Filler::Filler(), PeerConnectionPointer::finalize(), IdleConnList::findAndClose(), IdleConnList::findIndexOf(), FindListeningPortAddressInConn(), Comm::IoCallback::finish(), Http::Stream::finished(), Ftp::Channel::forget(), HappyConnOpener::futureAnswer(), GetMarkingsToServer(), Ip::Qos::getNfConnmark(), GetNfmarkToServer(), getOutgoingAddress(), GetTosToServer(), gopherReadReply(), gopherSendComplete(), Log::TcpLogger::handleClosure(), Comm::TcpAcceptor::handleClosure(), Mgr::Forwarder::handleException(), helperHandleRead(), helperStatefulHandleRead(), htcpIncomingConnectionOpened(), httpsCreate(), icpIncomingConnectionOpened(), idnsInitVC(), idnsInitVCConnected(), idnsReadVC(), idnsReadVCHeader(), idnsSentQueryVC(), Ipc::ImportFdIntoComm(), TunnelStateData::Connection::initConnection(), IdleConnList::isAvailable(), Comm::IsConnOpen(), Ftp::Gateway::listenForDataChannel(), Ftp::Server::listenForDataConnection(), main(), ACLAnnotateClientStrategy::match(), ACLServerNameStrategy::match(), Acl::ConnMark::match(), ACLDestinationIP::match(), TunnelStateData::Connection::noteClosure(), Snmp::Inquirer::noteCommClosed(), Mgr::Inquirer::noteCommClosed(), Mgr::Forwarder::noteCommClosed(), Adaptation::Icap::ServiceRep::noteConnectionUse(), Ftp::Server::notePeerConnection(), TunnelStateData::notePeerReadyToShovel(), Mgr::Inquirer::noteWroteHeader(), Comm::TcpAcceptor::notify(), Comm::TcpAcceptor::oldAccept(), Ftp::Channel::opened(), PeerPoolMgr::openNewConnection(), operator<<(), Mgr::Request::pack(), peerProbeConnect(), peerProbeConnectDone(), prepareAcceleratedURL(), prepareTransparentURL(), clientReplyContext::processExpired(), clientReplyContext::processMiss(), IdleConnList::push(), PconnPool::push(), PeerPoolMgr::pushNewConnection(), Adaptation::Icap::ServiceRep::putConnection(), Comm::Read(), Transport::Read(), WhoisState::readReply(), Mgr::Inquirer::removeCloseHandler(), Comm::IoCallback::reset(), ResetMarkingsToServer(), resolveDestination(), FwdState::secureConnectionToPeer(), TunnelStateData::secureConnectionToPeer(), FwdState::secureConnectionToPeerIfNeeded(), Comm::IoCallback::selectOrQueueWrite(), clientReplyContext::sendMoreData(), Client::sendMoreRequestBody(), Mgr::Inquirer::sendResponse(), Snmp::Inquirer::sendResponse(), HappyConnOpener::sendSuccess(), Comm::TcpAcceptor::setListen(), clientReplyContext::setReplyToError(), Ip::Qos::setSockNfmark(), Ip::Qos::setSockTos(), Ipc::UdsOp::setTimeout(), snmpPortOpened(), Ident::Start(), Snmp::Inquirer::start(), Mgr::Inquirer::start(), Comm::TcpAcceptor::start(), Ipc::StartListeningCb::startPrint(), statClientRequests(), Comm::TcpAcceptor::status(), FwdState::successfullyConnectedToPeer(), Mgr::Forwarder::swanSong(), Comm::TcpAcceptor::swanSong(), Ident::IdentStateData::swanSong(), switchToTunnel(), TunnelStateData::syncHierNote(), FwdState::syncWithServerConn(), tlsAttemptHandshake(), tryTlsCertificate(), Auth::UserRequest::tryToAuthenticateAndSetAuthUser(), tunnelConnectedWriteDone(), FwdState::unregister(), whoisReadReply(), Comm::Write(), Ipc::UdsSender::write(), Transport::Write(), TunnelStateData::Connection::write(), Log::TcpLogger::writeIfPossible(), and Ipc::UdsSender::wrote().

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors