diff options
| author | Alexander Wirt <formorer@debian.org> | 2012-06-03 08:49:55 +0200 |
|---|---|---|
| committer | Alexander Wirt <formorer@debian.org> | 2012-06-03 08:49:55 +0200 |
| commit | ceecc8855af313c14e8a164f1cd0399716174398 (patch) | |
| tree | 0d58f5cf7075dea5ff7ddeff6f9a3c89d9eb6352 /include/local.h | |
| parent | 10f2c00aa6ef875e7998838c200681c6ea5eeebe (diff) | |
| parent | ea27bb406e3d8fe9466ba274af38e6f540ff5bfc (diff) | |
| download | conntrack-tools-ceecc8855af313c14e8a164f1cd0399716174398.tar.gz conntrack-tools-ceecc8855af313c14e8a164f1cd0399716174398.zip | |
Merge tag 'upstream/1.2.1'
Upstream version 1.2.1
Diffstat (limited to 'include/local.h')
| -rw-r--r-- | include/local.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/include/local.h b/include/local.h new file mode 100644 index 0000000..f9121b1 --- /dev/null +++ b/include/local.h @@ -0,0 +1,37 @@ +#ifndef _LOCAL_SOCKET_H_ +#define _LOCAL_SOCKET_H_ + +#ifndef UNIX_PATH_MAX +#define UNIX_PATH_MAX 108 +#endif + +struct local_conf { + int backlog; + int reuseaddr; + char path[UNIX_PATH_MAX]; +}; + +struct local_server { + int fd; + char path[UNIX_PATH_MAX]; +}; + +/* callback return values */ +#define LOCAL_RET_ERROR -1 +#define LOCAL_RET_OK 0 +#define LOCAL_RET_STOLEN 1 + +/* local server */ +int local_server_create(struct local_server *server, struct local_conf *conf); +void local_server_destroy(struct local_server *server); +int do_local_server_step(struct local_server *server, void *data, + int (*process)(int fd, void *data)); + +/* local client */ +int local_client_create(struct local_conf *conf); +void local_client_destroy(int fd); +int do_local_client_step(int fd, void (*process)(char *buf)); +int do_local_request(int, struct local_conf *,void (*step)(char *buf)); +void local_step(char *buf); + +#endif |
