rodbus (C API) 1.3.1
Loading...
Searching...
No Matches
rodbus_authorization_handler_t Struct Reference

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

#include <rodbus.h>

Data Fields

rodbus_authorization_t(* read_coils )(uint8_t, rodbus_address_range_t, const char *, void *)
 Authorize a Read Coils request. More...
 
rodbus_authorization_t(* read_discrete_inputs )(uint8_t, rodbus_address_range_t, const char *, void *)
 Authorize a Read Discrete Inputs request. More...
 
rodbus_authorization_t(* read_holding_registers )(uint8_t, rodbus_address_range_t, const char *, void *)
 Authorize a Read Holding Registers request. More...
 
rodbus_authorization_t(* read_input_registers )(uint8_t, rodbus_address_range_t, const char *, void *)
 Authorize a Read Input Registers request. More...
 
rodbus_authorization_t(* write_single_coil )(uint8_t, uint16_t, const char *, void *)
 Authorize a Write Single Coil request. More...
 
rodbus_authorization_t(* write_single_register )(uint8_t, uint16_t, const char *, void *)
 Authorize a Write Single Register request. More...
 
rodbus_authorization_t(* write_multiple_coils )(uint8_t, rodbus_address_range_t, const char *, void *)
 Authorize a Write Multiple Coils request. More...
 
rodbus_authorization_t(* write_multiple_registers )(uint8_t, rodbus_address_range_t, const char *, void *)
 Authorize a Write Multiple Registers request. More...
 
void(* on_destroy )(void *arg)
 Callback when the underlying owner doesn't need the interface anymore. More...
 
void * ctx
 Context data. More...
 

Detailed Description

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

Field Documentation

◆ ctx

void* rodbus_authorization_handler_t::ctx

Context data.

◆ on_destroy

void(* rodbus_authorization_handler_t::on_destroy) (void *arg)

Callback when the underlying owner doesn't need the interface anymore.

Parameters
argContext data

◆ read_coils

rodbus_authorization_t(* rodbus_authorization_handler_t::read_coils) (uint8_t, rodbus_address_range_t, const char *, void *)

Authorize a Read Coils request.

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

◆ read_discrete_inputs

rodbus_authorization_t(* rodbus_authorization_handler_t::read_discrete_inputs) (uint8_t, rodbus_address_range_t, const char *, void *)

Authorize a Read Discrete Inputs request.

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

◆ read_holding_registers

rodbus_authorization_t(* rodbus_authorization_handler_t::read_holding_registers) (uint8_t, rodbus_address_range_t, const char *, void *)

Authorize a Read Holding Registers request.

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

◆ read_input_registers

rodbus_authorization_t(* rodbus_authorization_handler_t::read_input_registers) (uint8_t, rodbus_address_range_t, const char *, void *)

Authorize a Read Input Registers request.

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

◆ write_multiple_coils

rodbus_authorization_t(* rodbus_authorization_handler_t::write_multiple_coils) (uint8_t, rodbus_address_range_t, const char *, void *)

Authorize a Write Multiple Coils request.

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

◆ write_multiple_registers

rodbus_authorization_t(* rodbus_authorization_handler_t::write_multiple_registers) (uint8_t, rodbus_address_range_t, const char *, void *)

Authorize a Write Multiple Registers request.

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

◆ write_single_coil

rodbus_authorization_t(* rodbus_authorization_handler_t::write_single_coil) (uint8_t, uint16_t, const char *, void *)

Authorize a Write Single Coil request.

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

◆ write_single_register

rodbus_authorization_t(* rodbus_authorization_handler_t::write_single_register) (uint8_t, uint16_t, const char *, void *)

Authorize a Write Single Register request.

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

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