67 # define OPENELP_API __declspec(dllimport)
76 #define PROXY_PASS_RES_LEN 16
char * calls_denied
Regular expression for matching denied callsigns.
Definition: openelp.h:145
int OPENELP_API get_nonce(uint32_t *nonce)
Get a single-use 32-bit number.
char ** bind_addr_ext_add
Additional addresses to bind to for additional clients' data.
Definition: openelp.h:136
#define PROXY_PASS_RES_LEN
Length in bytes of the expected password response from the client.
Definition: openelp.h:76
void OPENELP_API proxy_update_registration(struct proxy_handle *ph)
Updates the registration status of the proxy instance.
Discard all log messages.
Definition: openelp.h:105
void OPENELP_API proxy_drop(struct proxy_handle *ph)
Drops all currently connected clients from the proxy.
void * priv
Private data - used internally by proxy functions.
Definition: openelp.h:176
int OPENELP_API proxy_load_conf(struct proxy_handle *ph, const char *path)
Loads the configuration from the file at the given path.
uint16_t port
Port on which to listen for client connections.
Definition: openelp.h:151
A fatal event, which will result in program termination.
Definition: openelp.h:84
char * bind_addr
Address to bind to for listening for client connections.
Definition: openelp.h:130
void OPENELP_API proxy_shutdown(struct proxy_handle *ph)
Gracefully shut down all proxy operations asynchronously.
An unusual event which could indicate a problem.
Definition: openelp.h:90
A failure event which should not have happened under normal circumstances.
Definition: openelp.h:87
struct proxy_conf conf
Configuration for the proxy.
Definition: openelp.h:173
Send all log messages to Syslog.
Definition: openelp.h:114
Configuration instance for a proxy_handle.
Definition: openelp.h:127
int OPENELP_API proxy_authorize_callsign(struct proxy_handle *ph, const char *callsign)
Authorizes the given callsign against the proxy's configuration.
int OPENELP_API get_password_response(const uint32_t nonce, const char *password, uint8_t response[PROXY_PASS_RES_LEN])
Gets the expected response for a given nonce and password.
char * password
Required password for access.
Definition: openelp.h:148
Represents an instance of an EchoLink proxy.
Definition: openelp.h:170
void OPENELP_API proxy_log_level(struct proxy_handle *ph, const enum LOG_LEVEL lvl)
Changes the log message importance threshold.
void OPENELP_API proxy_log(struct proxy_handle *ph, enum LOG_LEVEL lvl, const char *fmt,...)
Logs the given message to the current medium if lvl is high enough.
An event which is part of the normal lifecycle of the program.
Definition: openelp.h:93
#define OPENELP_API
Public API decorator.
Definition: openelp.h:72
int OPENELP_API proxy_start(struct proxy_handle *ph)
Starts the client processing thread(s)
Send all log messages to the Windows Event Log.
Definition: openelp.h:117
int OPENELP_API proxy_log_select_medium(struct proxy_handle *ph, const enum LOG_MEDIUM medium, const char *target)
Changes the target logging medium.
char * public_addr
Registered address override.
Definition: openelp.h:160
int OPENELP_API proxy_process(struct proxy_handle *ph)
Blocking call to process new clients.
char * reg_comment
Optional comment showen in the official proxy list.
Definition: openelp.h:157
void OPENELP_API proxy_ident(struct proxy_handle *ph)
Instructs the proxy to identify itself to the current log medium.
int OPENELP_API proxy_init(struct proxy_handle *ph)
Initializes the private data in a proxy_handle.
LOG_LEVEL
Severity level of log information.
Definition: openelp.h:81
char * calls_allowed
Regular expression for matching allowed callsigns.
Definition: openelp.h:142
LOG_MEDIUM
Logging facilities to write logging events to.
Definition: openelp.h:102
int OPENELP_API proxy_open(struct proxy_handle *ph)
Opens the proxy for client connections.
char * bind_addr_ext
Address to bind to for sending and receiving the client's data.
Definition: openelp.h:133
uint16_t bind_addr_ext_add_len
Number of additional addresses specified by bind_addr_ext_add.
Definition: openelp.h:139
Print all log messages to stdout and stderr.
Definition: openelp.h:108
char * reg_name
Name to use when registering in the official list.
Definition: openelp.h:154
void OPENELP_API proxy_close(struct proxy_handle *ph)
Closes the proxy so no more clients can connect.
void OPENELP_API proxy_free(struct proxy_handle *ph)
Frees data allocated by proxy_init.
A verbose event.
Definition: openelp.h:96
Append all log messages to the given file.
Definition: openelp.h:111