File: ingin

package info (click to toggle)
tcng 10b-2
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 3,636 kB
  • ctags: 2,515
  • sloc: ansic: 19,040; pascal: 4,640; yacc: 2,619; sh: 1,914; perl: 1,546; lex: 772; makefile: 756
file content (163 lines) | stat: -rw-r--r-- 3,463 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
# ingress accepts inner qdisc (plain)  ----------------------------------------
tcc -c
ingress {
    fifo;
}
EOF
# ingress accepts inner qdisc (with class)  -----------------------------------
tcc -c 2>&1
ingress {
    class {
	fifo;
    }
}
EOF
<stdin>:2: warning: class for shared qdisc should be implicit
# ingress suggests unnumbered class for inner qdisc ---------------------------
tcc -c 2>&1
ingress {
    class (1) {
        fifo;
    }
}
EOF
<stdin>:2: warning: suggest unnumbered class for ingress' inner qdisc
<stdin>:2: warning: class for shared qdisc should be implicit
# ingress does not complain about class numbers in other cases ----------------
tcc -c
ingress {
    class (1) if raw[0] == 1;
    class (2) if raw[0] == 2;
}
EOF
# ingress refuses more than one inner qdisc (plain) ---------------------------
tcc -c 2>&1
ingress {
    fifo;
    fifo;
}
EOF
ERROR
<stdin>:3: ingress has only one inner qdisc
# ingress refuses more than one inner qdisc (with unnumbered class) -----------
tcc -c 2>&1
ingress {
    class {
	fifo;
    }
    class {
	fifo;
    }
}
EOF
ERROR
<stdin>:6: ingress has only one inner qdisc
# ingress refuses more than one inner qdisc (with numbered class) -------------
tcc -c 2>&1
ingress {
    class (1) {
	fifo;
    }
    class (2) {
	fifo;
    }
}
EOF
ERROR
<stdin>:2: warning: suggest unnumbered class for ingress' inner qdisc
<stdin>:5: warning: suggest unnumbered class for ingress' inner qdisc
<stdin>:6: ingress has only one inner qdisc
# ingress does not auto-assign class numbers ----------------------------------
tcc -c 2>&1
ingress {
    class;
    class;
}
EOF
ERROR
<stdin>:2: ingress does not auto-assign class numbers
# ingress accepts class selection paths ---------------------------------------
tcc -c
ingress {
    class (<$a>) if raw[0] == 1;
    class (<$b>) if raw[0] == 1;
    prio {
	$a = class (1);
	$b = class (2);
    }
}
EOF
# tc ingress refuses class selection paths ------------------------------------
tcc 2>&1
ingress {
    class (<$a>) if raw[0] == 1;
    class (<$b>) if raw[0] == 2;
    prio {
	$a = class (1);
	$b = class (2);
    }
}
EOF
ERROR
<stdin>:4: tc ingress does not support inner qdisc
# ext ingress accepts class selection paths -----------------------------------
tcc -xif:err -Xx,all 2>&1 | grep -v '^#'
ingress {
    class (<$a>) if raw[0] == 1;
    class (<$b>) if raw[0] == 2;
    prio {
	$a = class (1);
	$b = class (2);
    }
}
EOF
block eth0 ingress
qdisc 1 = prio bands 3
class 1 =
class 2 =
qdisc 65535 = ingress
class 0 = qdisc 1
class 1 =
class 2 =
action 0 = unspec
action 2 = class 65535:2,1:2
action 1 = class 65535:1,1:1
match 0:0:8=0x01 action 1
match 0:0:8=0x02 action 2
match action 0
# ext ingress accepts class selection paths (tcc-ext-echo) --------------------
PATH=$PATH:tcc/ext tcc -xif:echo -Xx,all 2>&1
ingress {
    class (<$a>) if raw[0] == 1;
    class (<$b>) if raw[0] == 2;
    prio {
	$a = class (1);
	$b = class (2);
    }
}
EOF
block eth0 ingress
qdisc 65535 = ingress
class 0 = qdisc 1
class 1 =
class 2 =
qdisc 1 = prio bands 3
class 1 =
class 2 =
action 1 = class 65535:1,1:1
action 2 = class 65535:2,1:2
action 0 = unspec
match 0:0:8=0x1 action 1
match 0:0:8=0x2 action 2
match action 0
# ingress assigns default class number 0 --------------------------------------
tcc -xif:err -Xx,all 2>&1 | grep -v '^#'
ingress {
    class if 1;
}
EOF
block eth0 ingress
qdisc 65535 = ingress
class 0 =
action 0 = class 65535:0
match action 0