package
0.6.1
Repository: https://github.com/project-faster/qpep.git
Documentation: pkg.go.dev

# Functions

AssertParamChoice panics with error ErrImpossibleValidationRequested if the value string provided is not among the provided values.
AssertParamHostsDifferent panics with ErrConfigurationValidationFailed if the provided list of addresses contains duplicates or are invalid addresses.
AssertParamIP panics with ErrConfigurationValidationFailed if the value does not represent a valid ip address.
AssertParamNumeric panics with error ErrImpossibleValidationRequested if the min and max values do not represent a valid range or pamics with ErrConfigurationValidationFailed if the provided value is not inside the range.
AssertParamPort panics with error ErrConfigurationValidationFailed if the port value is not inside the expected range [1-65536] for an address port.
AssertParamPortsDifferent panics with ErrConfigurationValidationFailed if the provided list of ports contains duplicates or are invalid ports.
AssertParamString panics with error ErrImpossibleValidationRequested if the value string provided is empty after trimming.
No description provided by the author
GetAddressSpeedLimit returns the limit a value about the indicated address in incoming or outgoing direction, a value false indicates that the limit was never set and should be ignored.
GetConfigurationPaths returns the current paths for handling the configuration files, creating them if those don't exist: configuration directory, configuration filename and the configuration user filename.
LoadAddressSpeedLimitMap loads the speed limit definitions in either incoming or outgoing directions.
ReadConfiguration method loads the global configuration from the yaml files, if the _ignoreCustom_ value is true then only the main file is loaded, ignoring the user one, if false then the user file is loaded and its config values Merge the main ones.
WriteConfigurationOverrideFile method writes the indicated map of values to the user yaml configuration file warning: can potentially contain values which are not recognized by the configuration.

# Constants

CONFIG_FILENAME Name of the main configuration file of the qpep service.
CONFIG_OVERRIDE_FILENAME Name of the yaml configuration file for overrides by the tray.
CONFIG_PATH Directory name for the configuration files.
DEFAULT_REDIRECT_RETRIES Value of default number of total tries for a connection before terminating.
LOGS_PATH Directory name for the log files.
No description provided by the author
No description provided by the author
WEBGUI_URL URL of the web gui served by the service.

# Variables

No description provided by the author
QPepConfig Global variable for the configuration loaded from the qpep.yml file with optional overrides from the qpep.user.yml configuration file.

# Structs

AnalyticsDefinition struct models the configuration values for the analytics client, by default it remains disabled.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
LimitsDefinition struct models the map of possible speed limits for incoming and outgoing connections an example of a limit definition would be "wikipedia.org: 100K" which would limit the speed to 100Kb/s (or a suffix M for 100Mb/s) either for clients connecting from wikipedia.org or for connections established to it.
No description provided by the author
QPepConfigType Struct that represents all the parameters than influence the workings of the service and are loaded from the yaml main configuration file plus the additional user yaml file that overrides those values.
No description provided by the author