| plan 9 kernel history: overview | file list | diff list |
1998/0308/ip/ip.c (diff list | history)
| 1998/0307/sys/src/9/ip/ip.c:100,106 – 1998/0308/sys/src/9/ip/ip.c:100,106 (short | long | prev | next) | ||
| 1997/0327 | chunk = nhgets(eh->length); if(chunk > len){ netlog(Logip, "short gated packet\n"); | |
| 1998/0308 | goto free; | |
| 1997/0327 | } if(chunk < len) len = chunk; | |
| 1998/0307/sys/src/9/ip/ip.c:107,113 – 1998/0308/sys/src/9/ip/ip.c:107,113 | ||
| 1997/0327 | } | |
| 1998/0306 | if(len >= IP_MAX){ netlog(Logip, "exceeded ip max size %V\n", eh->dst); | |
| 1997/0327 |
| |
| 1998/0308 | goto free; | |
| 1997/0327 | } | |
| 1998/0306 | r = v4lookup(eh->dst); | |
| 1998/0307/sys/src/9/ip/ip.c:114,120 – 1998/0308/sys/src/9/ip/ip.c:114,120 | ||
| 1998/0306 | if(r == nil){ | |
| 1997/0916 | stats.noroute++; | |
| 1998/0306 | netlog(Logip, "no interface %V\n", eh->dst); | |
| 1997/0327 |
| |
| 1998/0308 | goto free; | |
| 1997/0327 | } | |
| 1998/0306 | if(r->type & (Rifc|Runi|Rbcast|Rmulti)) gate = eh->dst; | |
| 1998/0307/sys/src/9/ip/ip.c:224,229 – 1998/0308/sys/src/9/ip/ip.c:224,230 | ||
| 1997/0327 | raise: | |
| 1998/0307 | runlock(ifc); poperror(); | |
| 1998/0308 | free: | |
| 1997/0327 | freeblist(bp); } | |