Home | History | Annotate | Download | only in tc

Lines Matching refs:pi

46 	struct tc_rsvp_gpi *pi = dir ? &pinfo->dpi : &pinfo->spi;
56 pi->key = htonl(((__u32)tmp)<<16);
57 pi->mask = htonl(0xFFFF0000);
60 pi->key = htonl(((__u32)tmp));
61 pi->mask = htonl(0x0000FFFF);
63 pi->offset = 0;
73 if (pi->mask || argc <= 0)
83 pi->mask = htonl(0xFFFFFFFF);
84 pi->key = htonl(gpi);
85 pi->offset = 4;
96 pi->mask = htonl(0xFFFFFFFF);
97 pi->key = htonl(gpi);
98 pi->offset = 0;
110 pi->mask = htonl(0x000FFFFF);
111 pi->key = htonl(flabel) & pi->mask;
112 pi->offset = -40;
140 if (get_integer(&pi->offset, *argv, 0))
145 if ((pi->offset & 3) == 0) {
148 } else if ((pi->offset & 3) == 1) {
151 } else if ((pi->offset & 3) == 3) {
156 if ((pi->offset & 3) == 0) {
161 pi->offset &= ~3;
162 pi->mask = htonl(mask);
163 pi->key = htonl(tmp) & pi->mask;
301 static char *sprint_spi(struct tc_rsvp_gpi *pi, int dir, char *buf)
303 if (pi->offset == 0) {
304 if (dir && pi->mask == htonl(0xFFFF)) {
305 snprintf(buf, SPRINT_BSIZE-1, "/%d", htonl(pi->key));
308 if (!dir && pi->mask == htonl(0xFFFF0000)) {
309 snprintf(buf, SPRINT_BSIZE-1, "/%d", htonl(pi->key)>>16);
312 if (pi->mask == htonl(0xFFFFFFFF)) {
313 snprintf(buf, SPRINT_BSIZE-1, " spi/esp 0x%08x", htonl(pi->key));
316 } else if (pi->offset == 4 && pi->mask == htonl(0xFFFFFFFF)) {
317 snprintf(buf, SPRINT_BSIZE-1, " spi/ah 0x%08x", htonl(pi->key));
319 } else if (pi->offset == -40 && pi->mask == htonl(0x000FFFFF)) {
320 snprintf(buf, SPRINT_BSIZE-1, " flowlabel 0x%05x", htonl(pi->key));
324 htonl(pi->key), htonl(pi->mask), pi->offset);