diff options
author | Bill Fenner <fenner@FreeBSD.org> | 2003-01-22 23:30:26 +0000 |
---|---|---|
committer | Bill Fenner <fenner@FreeBSD.org> | 2003-01-22 23:30:26 +0000 |
commit | b3cca1086473ffce01d1e2ad7706c65154a9c4fc (patch) | |
tree | e76e71f4724d7febfcc2686ab05a4de20224e4d8 /sys/net/if_vlan.c | |
parent | 19ad2450428cc91d6d4ef2737382c72e32eb95a6 (diff) | |
download | src-test2-b3cca1086473ffce01d1e2ad7706c65154a9c4fc.tar.gz src-test2-b3cca1086473ffce01d1e2ad7706c65154a9c4fc.zip |
Notes
Diffstat (limited to 'sys/net/if_vlan.c')
-rw-r--r-- | sys/net/if_vlan.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/sys/net/if_vlan.c b/sys/net/if_vlan.c index 56712924f4b3..421a8b571a3f 100644 --- a/sys/net/if_vlan.c +++ b/sys/net/if_vlan.c @@ -679,6 +679,29 @@ vlan_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) } break; + case SIOCGIFMEDIA: + if (ifv->ifv_p != NULL) { + error = (ifv->ifv_p->if_ioctl)(ifv->ifv_p, SIOCGIFMEDIA, data); + /* Limit the result to the parent's current config. */ + if (error == 0) { + struct ifmediareq *ifmr; + + ifmr = (struct ifmediareq *) data; + if (ifmr->ifm_count >= 1 && ifmr->ifm_ulist) { + ifmr->ifm_count = 1; + error = copyout(&ifmr->ifm_current, + ifmr->ifm_ulist, + sizeof(int)); + } + } + } else + error = EINVAL; + break; + + case SIOCSIFMEDIA: + error = EINVAL; + break; + case SIOCSIFMTU: /* * Set the interface MTU. |