This is Unofficial EPICS BASE Doxygen Site
epics::pvAccess::PeerInfo Struct Reference

Information provded by a client to a server-type ChannelProvider. More...

#include "security.h"

+ Collaboration diagram for epics::pvAccess::PeerInfo:

Public Types

typedef std::set< std::string > roles_t
 

Public Member Functions

 POINTER_DEFINITIONS (PeerInfo)
 
 PeerInfo ()
 
virtual ~PeerInfo ()
 

Public Attributes

std::string peer
 network address of remote peer. eg. "192.168.1.1:5075". More...
 
std::string transport
 transport protocol used eg. "pva". Must not be empty. More...
 
std::string authority
 authentication mechanism used. eg. "anonymous" or "gssapi". Must not be empty. More...
 
std::string realm
 scope of authority. eg. "mylab.gov" More...
 
std::string account
 aka. user name More...
 
pvData::PVStructure::const_shared_pointer aux
 NULL or extra authority specific information. More...
 
roles_t roles
 Set of strings which may be used to modify access control decisions. More...
 
unsigned transportVersion
 If applicable, the protocol minor version number. More...
 
bool local
 Short-hand for transport=="local". More...
 
bool identified
 Short-hand for authority!="anonymous". More...
 

Static Public Attributes

static size_t num_instances
 

Detailed Description

Information provded by a client to a server-type ChannelProvider.

All peers must be identified by a peer name, which may be a network address (IP+port#) and transport. Peer names must be unique for a given transport.

Transport names include:

"local" in-process client. Peer name is optional and arbitrary. Must set local flag.

"pva" PVA over TCP. Used by PVA client provider. Peer name is IP address and TCP port number as "XXX.XXX.XXX.XXX:YYYYY".

Authority names include:

"anonymous" - No credentials provided. Must not set identified flag. "plain" - Unauthenticated credential.

Definition at line 119 of file security.h.

Member Typedef Documentation

typedef std::set<std::string> epics::pvAccess::PeerInfo::roles_t

Definition at line 133 of file security.h.

Constructor & Destructor Documentation

epics::pvAccess::PeerInfo::PeerInfo ( )

Definition at line 133 of file security.cpp.

134  :transportVersion(0u)
135  ,local(false)
136  ,identified(false)
137 {
138  REFTRACE_INCREMENT(num_instances);
139 }
static size_t num_instances
Definition: security.h:122
bool identified
Short-hand for authority!="anonymous".
Definition: security.h:141
bool local
Short-hand for transport=="local".
Definition: security.h:140
unsigned transportVersion
If applicable, the protocol minor version number.
Definition: security.h:137
epics::pvAccess::PeerInfo::~PeerInfo ( )
virtual

Definition at line 141 of file security.cpp.

142 {
143  REFTRACE_DECREMENT(num_instances);
144 }
static size_t num_instances
Definition: security.h:122

Member Function Documentation

epics::pvAccess::PeerInfo::POINTER_DEFINITIONS ( PeerInfo  )

Member Data Documentation

std::string epics::pvAccess::PeerInfo::account

aka. user name

Definition at line 128 of file security.h.

std::string epics::pvAccess::PeerInfo::authority

authentication mechanism used. eg. "anonymous" or "gssapi". Must not be empty.

Definition at line 126 of file security.h.

pvData::PVStructure::const_shared_pointer epics::pvAccess::PeerInfo::aux

NULL or extra authority specific information.

Definition at line 131 of file security.h.

bool epics::pvAccess::PeerInfo::identified

Short-hand for authority!="anonymous".

Definition at line 141 of file security.h.

bool epics::pvAccess::PeerInfo::local

Short-hand for transport=="local".

Definition at line 140 of file security.h.

size_t epics::pvAccess::PeerInfo::num_instances
static

Definition at line 122 of file security.h.

std::string epics::pvAccess::PeerInfo::peer

network address of remote peer. eg. "192.168.1.1:5075".

Definition at line 124 of file security.h.

std::string epics::pvAccess::PeerInfo::realm

scope of authority. eg. "mylab.gov"

Definition at line 127 of file security.h.

roles_t epics::pvAccess::PeerInfo::roles

Set of strings which may be used to modify access control decisions.

Definition at line 135 of file security.h.

std::string epics::pvAccess::PeerInfo::transport

transport protocol used eg. "pva". Must not be empty.

Definition at line 125 of file security.h.

unsigned epics::pvAccess::PeerInfo::transportVersion

If applicable, the protocol minor version number.

Definition at line 137 of file security.h.


The documentation for this struct was generated from the following files: