One other discussion that was had during our I-Team today that others out there might be interested in was whether dladm should require one to supply a link name when creating links like VLANs and IP tunnels, or whether it's at all beneficial for dladm to pick a default name when none is supplied.
The discussion stemmed from my work on the IP tunneling code. Currently, the design document for Clearview IP tunneling states that the kernel will pick an appropriate name for a datalink when user-space sends down a create ioctl for which a link name is not supplied. This would happen, for example, if someone types "dladm create-iptun -T ipv4" without supplying a link name argument. Implementing this is not trivial, which led me to the question of whether this flexibility (not requiring a link name) is at all useful. I'd actually prefer having the link name be a required part of the create-* subcommands of dladm. The consensus during the meeting was that whatever we decide to do for the create-iptun subcommand should also apply to the other create-* subcommands. The only exception being the create-aggr subcommand which requires a "key", which is really just like specifying a link name (aggr<key>). We also agreed that the default IP tunnel names (if we decide to have the link name be an optional parameter) should match the fixed tunnel names currently used to plumb IP tunnels in ifconfig today (ip.tun#, ip6.tun#, ip.6to4tun#). Otherwise, I don't believe that we decided either way. I'm leaning towards requiring a link name. I think this simplifies the implementation, and I'm also not a big fan of having too much flexibility in user-interfaces where flexibility isn't really needed. Other thoughts on this? -Seb
