pvAccessCPP  7.1.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | List of all members
epics::pvAccess::AuthenticationPlugin Class Referenceabstract

Actor through which authentication exchanges are initiated. More...

#include <remote/pv/security.h>

Public Types

typedef std::tr1::shared_ptr
< AuthenticationPlugin
shared_pointer
 
typedef std::tr1::shared_ptr
< const AuthenticationPlugin
const_shared_pointer
 
typedef std::tr1::weak_ptr
< AuthenticationPlugin
weak_pointer
 
typedef std::tr1::weak_ptr
< const AuthenticationPlugin
const_weak_pointer
 

Public Member Functions

virtual bool isValidFor (const PeerInfo &peer) const
 Allow this plugin to be advertised to a particular peer. More...
 
virtual std::tr1::shared_ptr
< AuthenticationSession
createSession (const std::tr1::shared_ptr< PeerInfo > &peer, std::tr1::shared_ptr< AuthenticationPluginControl > const &control, epics::pvData::PVStructure::shared_pointer const &data)=0
 Begin a new session with a peer. More...
 

Detailed Description

Actor through which authentication exchanges are initiated.

Definition at line 198 of file security.h.

Member Function Documentation

virtual std::tr1::shared_ptr<AuthenticationSession> epics::pvAccess::AuthenticationPlugin::createSession ( const std::tr1::shared_ptr< PeerInfo > &  peer,
std::tr1::shared_ptr< AuthenticationPluginControl > const &  control,
epics::pvData::PVStructure::shared_pointer const &  data 
)
pure virtual

Begin a new session with a peer.

Parameters
peerPartially initialized PeerInfo. See isValidFor(). PeerInfo::authority is also set. Caller transfers ownership to callee, which may modify.
controlcallee uses to asynchronously continue, and complete the session.
dataAlways NULL for client-type plugins. For server-type plugins, the result of initializationData() from the peer
virtual bool epics::pvAccess::AuthenticationPlugin::isValidFor ( const PeerInfo peer) const
inlinevirtual

Allow this plugin to be advertised to a particular peer.

At this point the PeerInfo has only been partially initialized with transport/protocol specific information: PeerInfo::peer, PeerInfo::transport, and PeerInfo::transportVersion.

Definition at line 209 of file security.h.


The documentation for this class was generated from the following file: