Merge branch 'master' into net-next

This commit is contained in:
Stephen Hemminger 2016-09-20 09:13:03 -07:00
commit 6831acc8ef
4 changed files with 25 additions and 4 deletions

1
.gitignore vendored
View File

@ -10,6 +10,7 @@ Config
# cscope # cscope
cscope.* cscope.*
ncscope.* ncscope.*
tags
TAGS TAGS
# git files that we don't want to ignore even it they are dot-files # git files that we don't want to ignore even it they are dot-files

View File

@ -39,7 +39,7 @@ static void usage(void)
{ {
fprintf(stderr, "Usage: ip tuntap { add | del | show | list | lst | help } [ dev PHYS_DEV ]\n"); fprintf(stderr, "Usage: ip tuntap { add | del | show | list | lst | help } [ dev PHYS_DEV ]\n");
fprintf(stderr, " [ mode { tun | tap } ] [ user USER ] [ group GROUP ]\n"); fprintf(stderr, " [ mode { tun | tap } ] [ user USER ] [ group GROUP ]\n");
fprintf(stderr, " [ one_queue ] [ pi ] [ vnet_hdr ] [ multi_queue ]\n"); fprintf(stderr, " [ one_queue ] [ pi ] [ vnet_hdr ] [ multi_queue ] [ name NAME ]\n");
fprintf(stderr, "\n"); fprintf(stderr, "\n");
fprintf(stderr, "Where: USER := { STRING | NUMBER }\n"); fprintf(stderr, "Where: USER := { STRING | NUMBER }\n");
fprintf(stderr, " GROUP := { STRING | NUMBER }\n"); fprintf(stderr, " GROUP := { STRING | NUMBER }\n");

View File

@ -93,7 +93,7 @@ Each policy routing rule consists of a
.B selector .B selector
and an and an
.B action predicate. .B action predicate.
The RPDB is scanned in order of increasing priority. The selector The RPDB is scanned in order of decreasing priority. The selector
of each rule is applied to {source address, destination address, incoming of each rule is applied to {source address, destination address, incoming
interface, tos, fwmark} and, if the selector matches the packet, interface, tos, fwmark} and, if the selector matches the packet,
the action is performed. The action predicate may return with success. the action is performed. The action predicate may return with success.
@ -221,8 +221,10 @@ value to match.
.TP .TP
.BI priority " PREFERENCE" .BI priority " PREFERENCE"
the priority of this rule. Each rule should have an explicitly the priority of this rule.
set .I PREFERENCE
is an unsigned integer value, higher number means lower priority. Each rule
should have an explicitly set
.I unique .I unique
priority value. priority value.
The options preference and order are synonyms with priority. The options preference and order are synonyms with priority.

View File

@ -76,6 +76,11 @@ static int net_snmp6_open(void)
return generic_proc_open("PROC_NET_SNMP6", "net/snmp6"); return generic_proc_open("PROC_NET_SNMP6", "net/snmp6");
} }
static int net_sctp_snmp_open(void)
{
return generic_proc_open("PROC_NET_SCTP_SNMP", "net/sctp/snmp");
}
struct nstat_ent { struct nstat_ent {
struct nstat_ent *next; struct nstat_ent *next;
char *id; char *id;
@ -247,6 +252,16 @@ static void load_ugly_table(FILE *fp)
} }
} }
static void load_sctp_snmp(void)
{
FILE *fp = fdopen(net_sctp_snmp_open(), "r");
if (fp) {
load_good_table(fp);
fclose(fp);
}
}
static void load_snmp(void) static void load_snmp(void)
{ {
FILE *fp = fdopen(net_snmp_open(), "r"); FILE *fp = fdopen(net_snmp_open(), "r");
@ -391,6 +406,7 @@ static void update_db(int interval)
load_netstat(); load_netstat();
load_snmp6(); load_snmp6();
load_snmp(); load_snmp();
load_sctp_snmp();
h = kern_db; h = kern_db;
kern_db = n; kern_db = n;
@ -450,6 +466,7 @@ static void server_loop(int fd)
load_netstat(); load_netstat();
load_snmp6(); load_snmp6();
load_snmp(); load_snmp();
load_sctp_snmp();
for (;;) { for (;;) {
int status; int status;
@ -706,6 +723,7 @@ int main(int argc, char *argv[])
load_netstat(); load_netstat();
load_snmp6(); load_snmp6();
load_snmp(); load_snmp();
load_sctp_snmp();
if (info_source[0] == 0) if (info_source[0] == 0)
strcpy(info_source, "kernel"); strcpy(info_source, "kernel");
} }