pvAccessCPP  7.1.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Attributes | Static Public Attributes | List of all members
epics::pvAccess::PeerInfo Struct Reference

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

#include <remote/pv/security.h>

Collaboration diagram for epics::pvAccess::PeerInfo:
Collaboration graph

Public Types

typedef std::tr1::shared_ptr
< PeerInfo
typedef std::tr1::shared_ptr
< const PeerInfo
typedef std::tr1::weak_ptr
< PeerInfo
typedef std::tr1::weak_ptr
< const PeerInfo
typedef std::set< std::stringroles_t

Public Attributes

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

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.

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