Lines Matching refs:rip
48 struct rip *, int);
50 static int ck_passwd(struct interface *, struct rip *, void *,
54 /* process RIP input
83 LOGERR("recvfrom(rip)");
87 logbad(1,"impossible recvfrom(rip) fromlen=%d",
131 input(&from, sifp, aifp, &inbuf.pbuf.rip, cc);
136 /* Process a RIP packet
142 struct rip *rip,
165 trace_rip("Recv", "from", from, sifp, rip, cc);
167 if (rip->rip_vers == 0) {
169 "RIP version 0, cmd %d, packet received from %s",
170 rip->rip_cmd, naddr_ntoa(FROM_NADDR));
172 } else if (rip->rip_vers > RIPv2) {
173 rip->rip_vers = RIPv2;
182 n = rip->rip_nets;
183 lim = (struct netinfo *)((char*)rip + cc);
195 && rip->rip_vers == RIPv2
203 switch (rip->rip_cmd) {
222 trace_pkt(" discard our own RIP request");
230 /* yes, ignore the request if RIP is off so that
236 trace_pkt(" discard request while RIP off");
244 * a bad guy can infer them with test traffic? When RIP
257 if (cc%sizeof(*n) != sizeof(struct rip)%sizeof(*n)) {
263 if (rip->rip_vers == RIPv2
273 && !ck_passwd(aifp,rip,lim,FROM_NADDR,&use_auth))
297 rip->rip_vers, ap != 0);
324 && rip->rip_vers == RIPv1) {
385 if (rip->rip_vers == RIPv1
477 if (rip->rip_cmd == RIPCMD_TRACEON) {
478 rip->rip_tracefile[cc-4] = '\0';
480 set_tracefile((char*)rip->rip_tracefile,
484 (char *) rip->rip_tracefile,
499 if (cc%sizeof(*n) != sizeof(struct rip)%sizeof(*n)) {
508 " discard RIP response from unknown port"
515 trace_pkt(" discard response while RIP off");
531 trace_pkt(" discard our own RIP response");
550 rip->rip_vers, aifp->int_name);
561 && rip->rip_vers == RIPv1)
563 && rip->rip_vers != RIPv1)) {
565 rip->rip_vers);
586 trace_pkt(" discard RIP response"
599 && rip->rip_vers != RIPv1
600 && !ck_passwd(aifp,rip,lim,FROM_NADDR,&use_auth))
642 if (rip->rip_vers == RIPv1) {
662 if (rip->rip_vers == RIPv1
674 if (rip->rip_vers == RIPv1)
938 struct rip *rip,
943 # define NA (rip->rip_auths)
976 if ((len-sizeof(*rip)) % sizeof(*NA) != 0
977 || len != (char *)lim-(char*)rip-(int)sizeof(*NA)) {
981 len, (int)((char *)lim-(char *)rip
986 na2 = (struct netauth *)((char *)rip+len);
1016 MD5Update(&md5_ctx, (u_char *)rip,