session: more show cli output
Type: feature Change-Id: I7f64fb1a13d90fa1679ca2ca35206092682f0c8f Signed-off-by: Florin Coras <fcoras@cisco.com>
This commit is contained in:

committed by
Dave Barach

parent
1b81e6ef66
commit
91f90d0826
@ -43,6 +43,52 @@ format_session_fifos (u8 * s, va_list * args)
|
|||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char *session_state_str[] = {
|
||||||
|
#define _(sym, str) str,
|
||||||
|
foreach_session_state
|
||||||
|
#undef _
|
||||||
|
};
|
||||||
|
|
||||||
|
u8 *
|
||||||
|
format_session_state (u8 * s, va_list * args)
|
||||||
|
{
|
||||||
|
session_t *ss = va_arg (*args, session_t *);
|
||||||
|
|
||||||
|
if (ss->session_state < SESSION_N_STATES)
|
||||||
|
s = format (s, "%s", session_state_str[ss->session_state]);
|
||||||
|
else
|
||||||
|
s = format (s, "UNKNOWN STATE (%d)", ss->session_state);
|
||||||
|
|
||||||
|
return s;
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *session_flags_str[] = {
|
||||||
|
#define _(sym, str) str,
|
||||||
|
foreach_session_flag
|
||||||
|
#undef _
|
||||||
|
};
|
||||||
|
|
||||||
|
u8 *
|
||||||
|
format_session_flags (u8 * s, va_list * args)
|
||||||
|
{
|
||||||
|
session_t *ss = va_arg (*args, session_t *);
|
||||||
|
int i, last = -1;
|
||||||
|
|
||||||
|
for (i = 0; i < SESSION_N_FLAGS; i++)
|
||||||
|
if (ss->flags & (1 << i))
|
||||||
|
last = i;
|
||||||
|
|
||||||
|
for (i = 0; i < last; i++)
|
||||||
|
{
|
||||||
|
if (ss->flags & (1 << i))
|
||||||
|
s = format (s, "%s, ", session_flags_str[i]);
|
||||||
|
}
|
||||||
|
if (last >= 0)
|
||||||
|
s = format (s, "%s", session_flags_str[last]);
|
||||||
|
|
||||||
|
return s;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Format stream session as per the following format
|
* Format stream session as per the following format
|
||||||
*
|
*
|
||||||
@ -85,7 +131,11 @@ format_session (u8 * s, va_list * args)
|
|||||||
if (verbose == 1)
|
if (verbose == 1)
|
||||||
s = format (s, "%v", str);
|
s = format (s, "%v", str);
|
||||||
if (verbose > 1)
|
if (verbose > 1)
|
||||||
s = format (s, "%U", format_session_fifos, ss, verbose);
|
{
|
||||||
|
s = format (s, "%U", format_session_fifos, ss, verbose);
|
||||||
|
s = format (s, " session: state: %U flags: %U\n",
|
||||||
|
format_session_state, ss, format_session_flags, ss);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (ss->session_state == SESSION_STATE_LISTENING)
|
else if (ss->session_state == SESSION_STATE_LISTENING)
|
||||||
{
|
{
|
||||||
|
@ -147,12 +147,25 @@ typedef enum
|
|||||||
SESSION_N_STATES,
|
SESSION_N_STATES,
|
||||||
} session_state_t;
|
} session_state_t;
|
||||||
|
|
||||||
|
#define foreach_session_flag \
|
||||||
|
_(RX_EVT, "rx-event") \
|
||||||
|
_(PROXY, "proxy") \
|
||||||
|
_(CUSTOM_TX, "custom-tx") \
|
||||||
|
_(IS_MIGRATING, "migrating") \
|
||||||
|
|
||||||
|
typedef enum session_flags_bits_
|
||||||
|
{
|
||||||
|
#define _(sym, str) SESSION_F_BIT_ ## sym,
|
||||||
|
foreach_session_flag
|
||||||
|
#undef _
|
||||||
|
SESSION_N_FLAGS
|
||||||
|
} session_flag_bits_t;
|
||||||
|
|
||||||
typedef enum session_flags_
|
typedef enum session_flags_
|
||||||
{
|
{
|
||||||
SESSION_F_RX_EVT = 1,
|
#define _(sym, str) SESSION_F_ ## sym = 1 << SESSION_F_BIT_ ## sym,
|
||||||
SESSION_F_PROXY = (1 << 1),
|
foreach_session_flag
|
||||||
SESSION_F_CUSTOM_TX = (1 << 2),
|
#undef _
|
||||||
SESSION_F_IS_MIGRATING = (1 << 3),
|
|
||||||
} session_flags_t;
|
} session_flags_t;
|
||||||
|
|
||||||
typedef struct session_
|
typedef struct session_
|
||||||
|
Reference in New Issue
Block a user