Merge branch 'master' into net-next
This commit is contained in:
commit
f7708201f8
14
ip/iproute.c
14
ip/iproute.c
|
|
@ -417,22 +417,22 @@ int print_route(const struct sockaddr_nl *who, struct nlmsghdr *n, void *arg)
|
|||
fprintf(fp, "dev %s ", ll_index_to_name(*(int *)RTA_DATA(tb[RTA_OIF])));
|
||||
|
||||
if (table && (table != RT_TABLE_MAIN || show_details > 0) && !filter.tb)
|
||||
fprintf(fp, " table %s ", rtnl_rttable_n2a(table, b1, sizeof(b1)));
|
||||
fprintf(fp, "table %s ", rtnl_rttable_n2a(table, b1, sizeof(b1)));
|
||||
if (!(r->rtm_flags&RTM_F_CLONED)) {
|
||||
if ((r->rtm_protocol != RTPROT_BOOT || show_details > 0) && filter.protocolmask != -1)
|
||||
fprintf(fp, " proto %s ", rtnl_rtprot_n2a(r->rtm_protocol, b1, sizeof(b1)));
|
||||
fprintf(fp, "proto %s ", rtnl_rtprot_n2a(r->rtm_protocol, b1, sizeof(b1)));
|
||||
if ((r->rtm_scope != RT_SCOPE_UNIVERSE || show_details > 0) && filter.scopemask != -1)
|
||||
fprintf(fp, " scope %s ", rtnl_rtscope_n2a(r->rtm_scope, b1, sizeof(b1)));
|
||||
fprintf(fp, "scope %s ", rtnl_rtscope_n2a(r->rtm_scope, b1, sizeof(b1)));
|
||||
}
|
||||
if (tb[RTA_PREFSRC] && filter.rprefsrc.bitlen != host_len) {
|
||||
/* Do not use format_host(). It is our local addr
|
||||
and symbolic name will not be useful.
|
||||
*/
|
||||
fprintf(fp, " src %s ",
|
||||
fprintf(fp, "src %s ",
|
||||
rt_addr_n2a_rta(r->rtm_family, tb[RTA_PREFSRC]));
|
||||
}
|
||||
if (tb[RTA_PRIORITY])
|
||||
fprintf(fp, " metric %u ", rta_getattr_u32(tb[RTA_PRIORITY]));
|
||||
fprintf(fp, "metric %u ", rta_getattr_u32(tb[RTA_PRIORITY]));
|
||||
if (r->rtm_flags & RTNH_F_DEAD)
|
||||
fprintf(fp, "dead ");
|
||||
if (r->rtm_flags & RTNH_F_ONLINK)
|
||||
|
|
@ -450,9 +450,9 @@ int print_route(const struct sockaddr_nl *who, struct nlmsghdr *n, void *arg)
|
|||
|
||||
if (mark) {
|
||||
if (mark >= 16)
|
||||
fprintf(fp, " mark 0x%x", mark);
|
||||
fprintf(fp, "mark 0x%x ", mark);
|
||||
else
|
||||
fprintf(fp, " mark %u", mark);
|
||||
fprintf(fp, "mark %u ", mark);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -26,10 +26,10 @@ police - policing action
|
|||
|
||||
.ti -8
|
||||
.IR CONTROL " :="
|
||||
.BI conform-exceed " EXCEEDACT\fR[\fB/\fIEXCEEDACT"
|
||||
.BI conform-exceed " EXCEEDACT\fR[\fB/\fINOTEXCEEDACT"
|
||||
|
||||
.ti -8
|
||||
.IR EXCEEDACT " := { "
|
||||
.IR EXCEEDACT/NOTEXCEEDACT " := { "
|
||||
.BR pipe " | " ok " | " reclassify " | " drop " | " continue " }"
|
||||
.SH DESCRIPTION
|
||||
The
|
||||
|
|
@ -94,11 +94,9 @@ Fine-tune the in-kernel packet rate estimator.
|
|||
are time values and control the frequency in which samples are taken and over
|
||||
what timespan an average is built.
|
||||
.TP
|
||||
.BI conform-exceed " EXCEEDACT\fR[\fB/\fIEXCEEDACT\fR]"
|
||||
Define how to handle packets which exceed (and, if the second
|
||||
.I EXCEEDACT
|
||||
is given, also those who don't), the configured bandwidth limit. Possible values
|
||||
are:
|
||||
.BI conform-exceed " EXCEEDACT\fR[\fB/\fINOTEXCEEDACT\fR]"
|
||||
Define how to handle packets which exceed or conform the
|
||||
configured bandwidth limit. Possible values are:
|
||||
.RS
|
||||
.IP continue
|
||||
Don't do anything, just continue with the next action in line.
|
||||
|
|
|
|||
|
|
@ -36,11 +36,12 @@ static void usage(void)
|
|||
{
|
||||
fprintf(stderr, "Usage: ... police rate BPS burst BYTES[/BYTES] [ mtu BYTES[/BYTES] ]\n");
|
||||
fprintf(stderr, " [ peakrate BPS ] [ avrate BPS ] [ overhead BYTES ]\n");
|
||||
fprintf(stderr, " [ linklayer TYPE ] [ ACTIONTERM ]\n");
|
||||
fprintf(stderr, " [ linklayer TYPE ] [ CONTROL ]\n");
|
||||
|
||||
fprintf(stderr, "New Syntax ACTIONTERM := conform-exceed <EXCEEDACT>[/NOTEXCEEDACT]\n");
|
||||
fprintf(stderr, "Where: *EXCEEDACT := pipe | ok | reclassify | drop | continue\n");
|
||||
fprintf(stderr, "Where: pipe is only valid for new syntax\n");
|
||||
fprintf(stderr, "Where: CONTROL := conform-exceed <EXCEEDACT>[/NOTEXCEEDACT]\n");
|
||||
fprintf(stderr, " Define how to handle packets which exceed (<EXCEEDACT>)\n");
|
||||
fprintf(stderr, " or conform (<NOTEXCEEDACT>) the configured bandwidth limit.\n");
|
||||
fprintf(stderr, " EXCEEDACT/NOTEXCEEDACT := { pipe | ok | reclassify | drop | continue }\n");
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
|
|
@ -322,7 +323,7 @@ int print_police(struct action_util *a, FILE *f, struct rtattr *arg)
|
|||
if (tb[TCA_POLICE_RESULT]) {
|
||||
__u32 action = rta_getattr_u32(tb[TCA_POLICE_RESULT]);
|
||||
|
||||
fprintf(f, "/%s", action_n2a(action));
|
||||
fprintf(f, "/%s ", action_n2a(action));
|
||||
} else
|
||||
fprintf(f, " ");
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue