utils.h: share 'sock_state' struct from 'utils.c'
This commit is contained in:
parent
6424fba52d
commit
0578d751b1
8
utils.c
8
utils.c
|
@ -47,19 +47,11 @@ static char *hexdump(const unsigned char *buf, int len, char *delim)
|
||||||
return hexd_buff;
|
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)
|
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, ""));
|
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];
|
static struct sock_state unix_fds[MAX_UNIX_FDS];
|
||||||
|
|
||||||
__attribute__ ((constructor)) static void udtrace_init(void)
|
__attribute__ ((constructor)) static void udtrace_init(void)
|
||||||
|
|
9
utils.h
9
utils.h
|
@ -6,6 +6,15 @@
|
||||||
#define LOG(fmt, args ...) \
|
#define LOG(fmt, args ...) \
|
||||||
fprintf(stderr, ">>> UDTRACE: " 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 */
|
/* find the state corresponding to a given file descriptor */
|
||||||
struct sock_state *udtrace_sstate_by_fd(int fd);
|
struct sock_state *udtrace_sstate_by_fd(int fd);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue