Lines Matching defs:ifr
2031 struct ifreq *ifr = (struct ifreq *)data;
2036 if (ifr->ifr_mtu < 576) {
2040 ifp->if_mtu = ifr->ifr_mtu;
2047 error = gre_set_vnetid(tunnel, ifr);
2051 error = gre_get_vnetid(tunnel, ifr);
2058 error = gre_set_vnetflowid(tunnel, ifr);
2062 error = gre_get_vnetflowid(tunnel, ifr);
2076 if (ifr->ifr_rdomainid < 0 ||
2077 ifr->ifr_rdomainid > RT_TABLEID_MAX ||
2078 !rtable_exists(ifr->ifr_rdomainid)) {
2082 tunnel->t_rtableid = ifr->ifr_rdomainid;
2085 ifr->ifr_rdomainid = tunnel->t_rtableid;
2090 tunnel->t_df = ifr->ifr_df ? htons(IP_DF) : htons(0);
2093 ifr->ifr_df = tunnel->t_df ? 1 : 0;
2144 struct ifreq *ifr = (struct ifreq *)data;
2200 if (ifr->ifr_ttl != -1 &&
2201 (ifr->ifr_ttl < 1 || ifr->ifr_ttl > 0xff)) {
2207 sc->sc_tunnel.t_ttl = ifr->ifr_ttl;
2211 ifr->ifr_ttl = sc->sc_tunnel.t_ttl;
2216 ifr->ifr_metric ? ECN_ALLOWED : ECN_FORBIDDEN;
2219 ifr->ifr_metric = (sc->sc_tunnel.t_ecn == ECN_ALLOWED);
2223 error = if_txhprio_l3_check(ifr->ifr_hdrprio);
2227 sc->sc_tunnel.t_txhprio = ifr->ifr_hdrprio;
2230 ifr->ifr_hdrprio = sc->sc_tunnel.t_txhprio;
2234 error = if_rxhprio_l3_check(ifr->ifr_hdrprio);
2238 sc->sc_tunnel.t_rxhprio = ifr->ifr_hdrprio;
2241 ifr->ifr_hdrprio = sc->sc_tunnel.t_rxhprio;
2256 struct ifreq *ifr = (struct ifreq *)data;
2275 if (ifr->ifr_ttl != -1 &&
2276 (ifr->ifr_ttl < 1 || ifr->ifr_ttl > 0xff)) {
2282 sc->sc_tunnel.t_ttl = ifr->ifr_ttl;
2286 ifr->ifr_ttl = sc->sc_tunnel.t_ttl;
2291 ifr->ifr_metric ? ECN_ALLOWED : ECN_FORBIDDEN;
2294 ifr->ifr_metric = (sc->sc_tunnel.t_ecn == ECN_ALLOWED);
2309 error = if_txhprio_l3_check(ifr->ifr_hdrprio);
2313 sc->sc_tunnel.t_txhprio = ifr->ifr_hdrprio;
2316 ifr->ifr_hdrprio = sc->sc_tunnel.t_txhprio;
2320 error = if_rxhprio_l3_check(ifr->ifr_hdrprio);
2324 sc->sc_tunnel.t_rxhprio = ifr->ifr_hdrprio;
2327 ifr->ifr_hdrprio = sc->sc_tunnel.t_rxhprio;
2450 struct ifreq *ifr = (struct ifreq *)data;
2469 if (ifr->ifr_ttl < 1 || ifr->ifr_ttl > 0xff) {
2475 sc->sc_tunnel.t_ttl = (uint8_t)ifr->ifr_ttl;
2479 ifr->ifr_ttl = (int)sc->sc_tunnel.t_ttl;
2483 error = if_txhprio_l2_check(ifr->ifr_hdrprio);
2487 sc->sc_tunnel.t_txhprio = ifr->ifr_hdrprio;
2490 ifr->ifr_hdrprio = sc->sc_tunnel.t_txhprio;
2494 error = if_rxhprio_l2_check(ifr->ifr_hdrprio);
2498 sc->sc_tunnel.t_rxhprio = ifr->ifr_hdrprio;
2501 ifr->ifr_hdrprio = sc->sc_tunnel.t_rxhprio;
2537 struct ifreq *ifr = (struct ifreq *)data;
2615 if (ifr->ifr_vnetid < GRE_KEY_ENTROPY_MIN ||
2616 ifr->ifr_vnetid > GRE_KEY_ENTROPY_MAX) {
2622 tunnel->t_key = htonl(ifr->ifr_vnetid << GRE_KEY_ENTROPY_SHIFT);
2626 error = gre_get_vnetid(tunnel, ifr);
2630 if (ifr->ifr_rdomainid < 0 ||
2631 ifr->ifr_rdomainid > RT_TABLEID_MAX ||
2632 !rtable_exists(ifr->ifr_rdomainid)) {
2636 tunnel->t_rtableid = ifr->ifr_rdomainid;
2640 ifr->ifr_rdomainid = tunnel->t_rtableid;
2645 tunnel->t_df = ifr->ifr_df ? htons(IP_DF) : htons(0);
2648 ifr->ifr_df = tunnel->t_df ? 1 : 0;
2652 if (ifr->ifr_ttl < 1 || ifr->ifr_ttl > 0xff) {
2658 tunnel->t_ttl = ifr->ifr_ttl;
2662 ifr->ifr_ttl = tunnel->t_ttl;
2666 error = if_txhprio_l2_check(ifr->ifr_hdrprio);
2670 sc->sc_tunnel.t_txhprio = ifr->ifr_hdrprio;
2673 ifr->ifr_hdrprio = sc->sc_tunnel.t_txhprio;
2677 error = if_rxhprio_l2_check(ifr->ifr_hdrprio);
2681 sc->sc_tunnel.t_rxhprio = ifr->ifr_hdrprio;
2684 ifr->ifr_hdrprio = sc->sc_tunnel.t_rxhprio;
2737 struct ifreq *ifr = (struct ifreq *)data;
2787 if (ifr->ifr_vnetid < 0 || ifr->ifr_vnetid > 0xffff)
2790 sc->sc_tunnel.t_key = htole16(ifr->ifr_vnetid); /* for cmp */
2791 sc->sc_tunnel_id = htole16(ifr->ifr_vnetid);
2795 ifr->ifr_vnetid = letoh16(sc->sc_tunnel_id);
2826 if (ifr->ifr_rdomainid < 0 ||
2827 ifr->ifr_rdomainid > RT_TABLEID_MAX ||
2828 !rtable_exists(ifr->ifr_rdomainid)) {
2832 sc->sc_tunnel.t_rtableid = ifr->ifr_rdomainid;
2835 ifr->ifr_rdomainid = sc->sc_tunnel.t_rtableid;
2839 if (ifr->ifr_ttl < 1 || ifr->ifr_ttl > 0xff) {
2845 sc->sc_tunnel.t_ttl = (uint8_t)ifr->ifr_ttl;
2848 ifr->ifr_ttl = (int)sc->sc_tunnel.t_ttl;
2853 sc->sc_tunnel.t_df = ifr->ifr_df ? htons(IP_DF) : htons(0);
2856 ifr->ifr_df = sc->sc_tunnel.t_df ? 1 : 0;
2860 error = if_txhprio_l2_check(ifr->ifr_hdrprio);
2864 sc->sc_tunnel.t_txhprio = ifr->ifr_hdrprio;
2867 ifr->ifr_hdrprio = sc->sc_tunnel.t_txhprio;
2871 error = if_rxhprio_l2_check(ifr->ifr_hdrprio);
2875 sc->sc_tunnel.t_rxhprio = ifr->ifr_hdrprio;
2878 ifr->ifr_hdrprio = sc->sc_tunnel.t_rxhprio;
3212 gre_set_vnetid(struct gre_tunnel *tunnel, struct ifreq *ifr)
3227 if (ifr->ifr_vnetid < min || ifr->ifr_vnetid > max)
3230 key = htonl(ifr->ifr_vnetid << shift);
3240 gre_get_vnetid(struct gre_tunnel *tunnel, struct ifreq *ifr)
3255 ifr->ifr_vnetid = ntohl(tunnel->t_key) >> shift;
3269 gre_set_vnetflowid(struct gre_tunnel *tunnel, struct ifreq *ifr)
3276 mask = ifr->ifr_vnetid ? GRE_KEY_ENTROPY : GRE_KEY_MASK;
3299 gre_get_vnetflowid(struct gre_tunnel *tunnel, struct ifreq *ifr)
3304 ifr->ifr_vnetid = tunnel->t_key_mask == GRE_KEY_ENTROPY;