rodbus (C++ API) 1.3.1
Loading...
Searching...
No Matches
rodbus::AuthorizationHandler Class Referenceabstract

User implemented interface defines which request and roles are allowed for different functions when implementing Modbus security. More...

#include <rodbus.hpp>

Public Member Functions

virtual Authorization read_coils (uint8_t unit_id, const AddressRange &range, const char *role)=0
 Authorize a Read Coils request. More...
 
virtual Authorization read_discrete_inputs (uint8_t unit_id, const AddressRange &range, const char *role)=0
 Authorize a Read Discrete Inputs request. More...
 
virtual Authorization read_holding_registers (uint8_t unit_id, const AddressRange &range, const char *role)=0
 Authorize a Read Holding Registers request. More...
 
virtual Authorization read_input_registers (uint8_t unit_id, const AddressRange &range, const char *role)=0
 Authorize a Read Input Registers request. More...
 
virtual Authorization write_single_coil (uint8_t unit_id, uint16_t index, const char *role)=0
 Authorize a Write Single Coil request. More...
 
virtual Authorization write_single_register (uint8_t unit_id, uint16_t index, const char *role)=0
 Authorize a Write Single Register request. More...
 
virtual Authorization write_multiple_coils (uint8_t unit_id, const AddressRange &range, const char *role)=0
 Authorize a Write Multiple Coils request. More...
 
virtual Authorization write_multiple_registers (uint8_t unit_id, const AddressRange &range, const char *role)=0
 Authorize a Write Multiple Registers request. More...
 

Detailed Description

User implemented interface defines which request and roles are allowed for different functions when implementing Modbus security.

Note
this class is an "interface" and only has virtual methods, some of which may have default implementations.

Member Function Documentation

◆ read_coils()

virtual Authorization rodbus::AuthorizationHandler::read_coils ( uint8_t  unit_id,
const AddressRange range,
const char *  role 
)
pure virtual

Authorize a Read Coils request.

Parameters
unit_idTarget unit ID
rangeRange to read
roleAuthenticated Modbus role
Returns
Authorization result

◆ read_discrete_inputs()

virtual Authorization rodbus::AuthorizationHandler::read_discrete_inputs ( uint8_t  unit_id,
const AddressRange range,
const char *  role 
)
pure virtual

Authorize a Read Discrete Inputs request.

Parameters
unit_idTarget unit ID
rangeRange to read
roleAuthenticated Modbus role
Returns
Authorization result

◆ read_holding_registers()

virtual Authorization rodbus::AuthorizationHandler::read_holding_registers ( uint8_t  unit_id,
const AddressRange range,
const char *  role 
)
pure virtual

Authorize a Read Holding Registers request.

Parameters
unit_idTarget unit ID
rangeRange to read
roleAuthenticated Modbus role
Returns
Authorization result

◆ read_input_registers()

virtual Authorization rodbus::AuthorizationHandler::read_input_registers ( uint8_t  unit_id,
const AddressRange range,
const char *  role 
)
pure virtual

Authorize a Read Input Registers request.

Parameters
unit_idTarget unit ID
rangeRange to read
roleAuthenticated Modbus role
Returns
Authorization result

◆ write_multiple_coils()

virtual Authorization rodbus::AuthorizationHandler::write_multiple_coils ( uint8_t  unit_id,
const AddressRange range,
const char *  role 
)
pure virtual

Authorize a Write Multiple Coils request.

Parameters
unit_idTarget unit ID
rangeRange to read
roleAuthenticated Modbus role
Returns
Authorization result

◆ write_multiple_registers()

virtual Authorization rodbus::AuthorizationHandler::write_multiple_registers ( uint8_t  unit_id,
const AddressRange range,
const char *  role 
)
pure virtual

Authorize a Write Multiple Registers request.

Parameters
unit_idTarget unit ID
rangeRange to read
roleAuthenticated Modbus role
Returns
Authorization result

◆ write_single_coil()

virtual Authorization rodbus::AuthorizationHandler::write_single_coil ( uint8_t  unit_id,
uint16_t  index,
const char *  role 
)
pure virtual

Authorize a Write Single Coil request.

Parameters
unit_idTarget unit ID
indexTarget index
roleAuthenticated Modbus role
Returns
Authorization result

◆ write_single_register()

virtual Authorization rodbus::AuthorizationHandler::write_single_register ( uint8_t  unit_id,
uint16_t  index,
const char *  role 
)
pure virtual

Authorize a Write Single Register request.

Parameters
unit_idTarget unit ID
indexTarget index
roleAuthenticated Modbus role
Returns
Authorization result

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