diff options
author | Ting-Wei Lan <lantw44@gmail.com> | 2014-06-07 21:59:18 +0800 |
---|---|---|
committer | Ting-Wei Lan <lantw44@gmail.com> | 2014-06-07 21:59:18 +0800 |
commit | 3c6035cfd2ee4cdfb1268d02486f9c741d0690e7 (patch) | |
tree | ac2698cc619eb645d7164b515cfbb8a761ddedcc /falgproto/falgproto.h | |
download | fastalg-protocol-0.1.0.tar.gz fastalg-protocol-0.1.0.tar.zst fastalg-protocol-0.1.0.zip |
Initial commit - import existing project filesv0.1.0
Diffstat (limited to 'falgproto/falgproto.h')
-rw-r--r-- | falgproto/falgproto.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/falgproto/falgproto.h b/falgproto/falgproto.h new file mode 100644 index 0000000..0f66fe8 --- /dev/null +++ b/falgproto/falgproto.h @@ -0,0 +1,48 @@ +/* vim: set sw=4 ts=4 sts=4 et: */ +#ifndef FALGPROTO_H +#define FALGPROTO_H + +#include <stdbool.h> +#include <stdio.h> + +typedef enum falgproto_type { + FALGPROTO_TYPE_HTTP, + FALGPROTO_TYPE_HTTPS, + FALGPROTO_TYPE_DNS, + FALGPROTO_TYPE_FTP, + FALGPROTO_TYPE_SSH, + FALGPROTO_TYPE_LDAP, + FALGPROTO_TYPE_MAX +} FalgprotoType; + +typedef enum falgproto_transport { + FALGPROTO_TRANSPORT_TCP, + FALGPROTO_TRANSPORT_UDP +} FalgprotoTransport; + +typedef struct falgproto_param { + char* param; + size_t len; + bool dup; + int result; +} FalgprotoParam; + +#define FALGPROTO_PARAM_RESULT_ERROR -1 +#define FALGPROTO_PARAM_RESULT_OK 0 +#define FALGPROTO_PARAM_RESULT_NOT_FOUND 1 +#define FALGPROTO_PARAM_RESULT_INCOMPLETE 2 + +typedef FalgprotoParam (*FalgprotoParamGetter) (const char *pkt); +typedef void (*FalgprotoPrinter) (const char *pkt, FILE *fp); + + +unsigned falgproto_get_count (void); +int falgproto_get_protocol (const char *name); +const char* falgproto_get_name (FalgprotoType protocol); +const char* falgproto_get_description (FalgprotoType protocol); +FalgprotoTransport falgproto_get_transport (FalgprotoType protocol); +FalgprotoParamGetter falgproto_get_param_getter (FalgprotoType protocol); +FalgprotoPrinter falgproto_get_printer (FalgprotoType protocol); + + +#endif /* FALGPROTO_H */ |