Subject: Re: [PATCH iproute2] ss: Filter inet dgram sockets with established state by default

From: Vadim Kochan <[email-masked]>
Date: Wed, 14 Jan 2015 08:49:44 +0200

On Tue, Jan 13, 2015 at 05:31:50PM -0800, Stephen Hemminger wrote:
> On Thu,  8 Jan 2015 19:32:22 +0200
> Vadim Kochan <[email-masked]> wrote:
> 
> > From: Vadim Kochan <[email-masked]>
> > 
> > As inet dgram sockets (udp, raw) can call connect(...)  - they
> > might be set in ESTABLISHED state. So keep the original behaviour of
> > 'ss' which filtered them by ESTABLISHED state by default. So:
> > 
> >     $ ss -u
> > 
> >     or
> > 
> >     $ ss -w
> > 
> > Will show only ESTABLISHED UDP sockets by default.
> > 
> > Signed-off-by: Vadim Kochan <[email-masked]>
> > ---
> >  misc/ss.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/misc/ss.c b/misc/ss.c
> > index 08d210a..015d829 100644
> > --- a/misc/ss.c
> > +++ b/misc/ss.c
> > @@ -170,11 +170,11 @@ static const struct filter default_dbs[MAX_DB] = {
> >  		.families = (1 << AF_INET) | (1 << AF_INET6),
> >  	},
> >  	[UDP_DB] = {
> > -		.states   = (1 << SS_CLOSE),
> > +		.states   = (1 << SS_ESTABLISHED),
> >  		.families = (1 << AF_INET) | (1 << AF_INET6),
> >  	},
> >  	[RAW_DB] = {
> > -		.states   = (1 << SS_CLOSE),
> > +		.states   = (1 << SS_ESTABLISHED),
> >  		.families = (1 << AF_INET) | (1 << AF_INET6),
> >  	},
> >  	[UNIX_DG_DB] = {
> 
> This is a change likely to break somebody using 'ss -u' now and the bound
> sockets will disappear from the output.
> 

But thats was as original behaviour before I added table-driven code
(about few commits ago), so thats a rather fix (sorry I did not noticed
about it) to keep the previous behaviour for dgram sockets - show
established states by default.

Regards,