62 lines
1018 B
C
62 lines
1018 B
C
/******************************************************************************
|
|
*
|
|
* Copyright (c) 2017-2019 by Löwenware Ltd
|
|
* Please, refer LICENSE file for legal information
|
|
*
|
|
******************************************************************************/
|
|
|
|
/**
|
|
* @file agent.h
|
|
* @author Ilja Kartašov <ik@lowenware.com>
|
|
* @brief
|
|
*
|
|
* @see https://lowenware.com/
|
|
*/
|
|
|
|
#ifndef AGENT_H_D0CDB429_AC49_4BC6_83FA_9163404D387E
|
|
#define AGENT_H_D0CDB429_AC49_4BC6_83FA_9163404D387E
|
|
|
|
#include <stdbool.h>
|
|
|
|
|
|
#ifndef ARC_AGENT_BUFFER_SIZE
|
|
#define ARC_AGENT_BUFFER_SIZE (4*1024)
|
|
#endif
|
|
|
|
|
|
typedef enum {
|
|
AGENT_TYPE__UNKNOWN
|
|
#ifdef ARC_WITH_SURGARD
|
|
, AGENT_TYPE_SURGARD
|
|
#endif
|
|
} AgentType;
|
|
|
|
|
|
struct agent {
|
|
char *name;
|
|
AgentType agent_type;
|
|
};
|
|
|
|
|
|
struct agent *
|
|
agent_alloc(const char *name, AgentType agent_type, size_t sz);
|
|
|
|
|
|
void
|
|
agent_free(struct agent *agent);
|
|
|
|
|
|
int
|
|
agent_set(const char *name, char *uri);
|
|
|
|
|
|
int
|
|
agent_run(void);
|
|
|
|
|
|
void
|
|
agent_unset_all(void);
|
|
|
|
|
|
#endif /* !AGENT_H */
|