Lines Matching refs:ifr

225 	struct ifreq *ifr;
989 struct ifreq *ifr = tun->ifr;
1015 (ifr->ifr_flags & TUN_FEATURES);
1018 err = tun_attach(tun, tun->file, false, ifr->ifr_flags & IFF_NAPI,
1019 ifr->ifr_flags & IFF_NAPI_FRAGS, false);
2740 static int tun_set_iff(struct net *net, struct file *file, struct ifreq *ifr)
2750 if ((ifr->ifr_flags & IFF_NAPI_FRAGS)) {
2754 if (!(ifr->ifr_flags & IFF_NAPI) ||
2755 (ifr->ifr_flags & TUN_TYPE_MASK) != IFF_TAP)
2759 dev = __dev_get_by_name(net, ifr->ifr_name);
2761 if (ifr->ifr_flags & IFF_TUN_EXCL)
2763 if ((ifr->ifr_flags & IFF_TUN) && dev->netdev_ops == &tun_netdev_ops)
2765 else if ((ifr->ifr_flags & IFF_TAP) && dev->netdev_ops == &tap_netdev_ops)
2770 if (!!(ifr->ifr_flags & IFF_MULTI_QUEUE) !=
2780 err = tun_attach(tun, file, ifr->ifr_flags & IFF_NOFILTER,
2781 ifr->ifr_flags & IFF_NAPI,
2782 ifr->ifr_flags & IFF_NAPI_FRAGS, true);
2796 (ifr->ifr_flags & TUN_FEATURES);
2802 int queues = ifr->ifr_flags & IFF_MULTI_QUEUE ?
2812 if (ifr->ifr_flags & IFF_TUN) {
2816 } else if (ifr->ifr_flags & IFF_TAP) {
2823 if (*ifr->ifr_name)
2824 name = ifr->ifr_name;
2850 tun->ifr = ifr;
2874 strcpy(ifr->ifr_name, tun->dev->name);
2878 static void tun_get_iff(struct tun_struct *tun, struct ifreq *ifr)
2880 strcpy(ifr->ifr_name, tun->dev->name);
2882 ifr->ifr_flags = tun_flags(tun);
2970 static int tun_set_queue(struct file *file, struct ifreq *ifr)
2978 if (ifr->ifr_flags & IFF_ATTACH_QUEUE) {
2989 } else if (ifr->ifr_flags & IFF_DETACH_QUEUE) {
3073 struct ifreq ifr;
3085 if (copy_from_user(&ifr, argp, ifreq_len))
3088 memset(&ifr, 0, sizeof(ifr));
3098 return tun_set_queue(file, &ifr);
3114 ifr.ifr_name[IFNAMSIZ-1] = '\0';
3116 ret = tun_set_iff(net, file, &ifr);
3121 if (copy_to_user(argp, &ifr, ifreq_len))
3151 tun_get_iff(tun, &ifr);
3154 ifr.ifr_flags |= IFF_DETACH_QUEUE;
3156 ifr.ifr_flags |= IFF_NOFILTER;
3158 if (copy_to_user(argp, &ifr, ifreq_len))
3248 dev_get_mac_address(&ifr.ifr_hwaddr, net, tun->dev->name);
3249 if (copy_to_user(argp, &ifr, ifreq_len))
3255 ret = dev_set_mac_address_user(tun->dev, &ifr.ifr_hwaddr, NULL);
3495 struct ifreq ifr;
3497 memset(&ifr, 0, sizeof(ifr));
3502 tun_get_iff(tun, &ifr);
3508 seq_printf(m, "iff:\t%s\n", ifr.ifr_name);