Commit 89f634f9 authored by Vadim Kochan's avatar Vadim Kochan Committed by Stephen Hemminger

ss: Replace pktstat struct by new sockstat struct

Signed-off-by: default avatarVadim Kochan <vadim4j@gmail.com>
parent 055840f2
...@@ -693,6 +693,8 @@ static const char *sstate_namel[] = { ...@@ -693,6 +693,8 @@ static const char *sstate_namel[] = {
struct sockstat struct sockstat
{ {
uint8_t type;
uint16_t prot;
inet_prefix local; inet_prefix local;
inet_prefix remote; inet_prefix remote;
int lport; int lport;
...@@ -2731,29 +2733,18 @@ static int unix_show(struct filter *f) ...@@ -2731,29 +2733,18 @@ static int unix_show(struct filter *f)
return 0; return 0;
} }
struct pktstat { static int packet_stats_print(struct sockstat *s, const struct filter *f)
uint8_t type;
uint16_t prot;
uint32_t iface;
int state;
uint32_t rq;
uid_t uid;
ino_t ino;
};
static int packet_stats_print(struct pktstat *s, const struct filter *f)
{ {
char *buf = NULL; char *buf = NULL;
if (f->f) { if (f->f) {
struct sockstat st; s->local.family = AF_PACKET;
st.local.family = AF_PACKET; s->remote.family = AF_PACKET;
st.remote.family = AF_PACKET; s->rport = 0;
st.rport = 0; s->lport = s->iface;
st.lport = s->iface; s->local.data[0] = s->prot;
st.local.data[0] = s->prot; s->remote.data[0] = 0;
st.remote.data[0] = 0; if (run_ssfilter(f->f, s) == 0)
if (run_ssfilter(f->f, &st) == 0)
return 1; return 1;
} }
...@@ -2802,7 +2793,7 @@ static int packet_show_sock(const struct sockaddr_nl *addr, ...@@ -2802,7 +2793,7 @@ static int packet_show_sock(const struct sockaddr_nl *addr,
const struct filter *f = arg; const struct filter *f = arg;
struct packet_diag_msg *r = NLMSG_DATA(nlh); struct packet_diag_msg *r = NLMSG_DATA(nlh);
struct rtattr *tb[PACKET_DIAG_MAX+1]; struct rtattr *tb[PACKET_DIAG_MAX+1];
struct pktstat stat = {}; struct sockstat stat = {};
parse_rtattr(tb, PACKET_DIAG_MAX, (struct rtattr*)(r+1), parse_rtattr(tb, PACKET_DIAG_MAX, (struct rtattr*)(r+1),
nlh->nlmsg_len - NLMSG_LENGTH(sizeof(*r))); nlh->nlmsg_len - NLMSG_LENGTH(sizeof(*r)));
...@@ -2871,7 +2862,7 @@ static int packet_show_netlink(struct filter *f) ...@@ -2871,7 +2862,7 @@ static int packet_show_netlink(struct filter *f)
static int packet_show_line(char *buf, const struct filter *f, int fam) static int packet_show_line(char *buf, const struct filter *f, int fam)
{ {
unsigned long long sk; unsigned long long sk;
struct pktstat stat = {}; struct sockstat stat = {};
int type, prot, iface, state, rq, uid, ino; int type, prot, iface, state, rq, uid, ino;
sscanf(buf, "%llx %*d %d %x %d %d %u %u %u", sscanf(buf, "%llx %*d %d %x %d %d %u %u %u",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment