- if (rtm->rtm_type != RTM_GET) {/* XXX: too grotty */
- struct radix_node *rn;
- extern struct radix_node_head *mask_rnhead;
-
- if (Bcmp(dst, rt_key(rt), dst->sa_len) != 0)
- senderr(ESRCH);
- if (netmask && (rn = rn_search(netmask,
- mask_rnhead->rnh_treetop)))
- netmask = (struct sockaddr *)rn->rn_key;
- for (rn = rt->rt_nodes; rn; rn = rn->rn_dupedkey)
- if (netmask == (struct sockaddr *)rn->rn_mask)
- break;
- if (rn == 0)
- senderr(ETOOMANYREFS);
- rt = (struct rtentry *)rn;
- }