Home
TURN module (rfc5766)

PermissionPolicy

Lightweight server-side TURN permission policy.

PermissionPolicy

#include <icy/turn/server/permissionpolicy.h>
class PermissionPolicy

Defined in src/turn/include/icy/turn/server/permissionpolicy.h:25

Lightweight server-side TURN permission policy.

Keeps the explicit permission list fast and binary, while making server exceptions such as local-IP auto-grants explicit and auditable.

List of all members

NameKindOwner
PermissionPolicyfunctionDeclared here
allowsExplicitfunctionDeclared here
allowsImplicitfunctionDeclared here
allowsfunctionDeclared here
_enableLocalIPPermissionsvariableDeclared here
isLocalAutoGrantAddressfunctionDeclared here

Public Methods

ReturnNameDescription
PermissionPolicy inline explicit noexcept
boolallowsExplicit const noexcept
boolallowsImplicit const noexcept
boolallows const noexcept

PermissionPolicy

inline explicit noexcept

inline explicit PermissionPolicy(bool enableLocalIPPermissions = false) noexcept

Defined in src/turn/include/icy/turn/server/permissionpolicy.h:28


allowsExplicit

const noexcept

bool allowsExplicit(const PermissionList & permissions, const Permission::Key & peerKey) const noexcept

Defined in src/turn/include/icy/turn/server/permissionpolicy.h:33


allowsImplicit

const noexcept

bool allowsImplicit(const Permission::Key & peerKey) const noexcept

Defined in src/turn/include/icy/turn/server/permissionpolicy.h:35


allows

const noexcept

bool allows(const PermissionList & permissions, const Permission::Key & peerKey) const noexcept

Defined in src/turn/include/icy/turn/server/permissionpolicy.h:36

Private Attributes

ReturnNameDescription
bool_enableLocalIPPermissions

_enableLocalIPPermissions

bool _enableLocalIPPermissions = false

Defined in src/turn/include/icy/turn/server/permissionpolicy.h:42

Private Static Methods

ReturnNameDescription
boolisLocalAutoGrantAddress static noexcept

isLocalAutoGrantAddress

static noexcept

static bool isLocalAutoGrantAddress(const Permission::Key & peerKey) noexcept

Defined in src/turn/include/icy/turn/server/permissionpolicy.h:40