iface: rewrite interface handling