utils.h: share 'sock_state' struct from 'utils.c'

This commit is contained in:
Vadim Yanitskiy 2018-10-31 19:14:20 +07:00
parent 6424fba52d
commit 0578d751b1
2 changed files with 9 additions and 8 deletions

View File

@ -47,19 +47,11 @@ static char *hexdump(const unsigned char *buf, int len, char *delim)
return hexd_buff;
}
typedef void (*udtrace_dissector)(int fd, bool is_out, const char *fn, const uint8_t *data, unsigned int len);
static void default_dissector(int fd, bool is_out, const char *fn, const uint8_t *data, unsigned int len)
{
fprintf(stderr, "%d %s %c %s\n", fd, fn, is_out ? 'W' : 'R', hexdump(data, len, ""));
}
struct sock_state {
int fd;
const char *path;
udtrace_dissector dissector;
};
static struct sock_state unix_fds[MAX_UNIX_FDS];
__attribute__ ((constructor)) static void udtrace_init(void)

View File

@ -6,6 +6,15 @@
#define LOG(fmt, args ...) \
fprintf(stderr, ">>> UDTRACE: " fmt, ## args)
typedef void (*udtrace_dissector)(int fd, bool is_out, const char *fn,
const uint8_t *data, unsigned int len);
struct sock_state {
int fd;
const char *path;
udtrace_dissector dissector;
};
/* find the state corresponding to a given file descriptor */
struct sock_state *udtrace_sstate_by_fd(int fd);