net: rbridge: insert VLAN in the inner header on ingress

Handle VLAN as payload when encapsulating native frames: upon ingress,
the native frame's VLAN is to be set in the inner header. References
to this VLAN must also be dropped from the sk_buff, otherwise it would
be restored in the outer header upon xmit.

(this patch was in fact already present in the VNT which is not merged
at the moment, but we forgot to import it in the TRILL part)

[slightly edit comment]
Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
Signed-off-by: William Dauchy <william@gandi.net>
Signed-off-by: Ahmed Amamou <ahmed@gandi.net>
net: rbridge: fix memory leaks when deleting a bridge

Stop trill and free rbridge data structure associated with a bridge being
deleted.

Signed-off-by: François Cachereul <f.cachereul@alphalink.fr>
Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
Signed-off-by: William Dauchy <william@gandi.net>
Signed-off-by: Ahmed Amamou <ahmed@gandi.net>
net: bridge: define trill functions only if CONFIG_TRILL is set

Implementation of rbr_handle_ether_frame_finish() and rbr_handle_frame()
depend on CONFIG_TRILL.

Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
Signed-off-by: William Dauchy <william@gandi.net>
Signed-off-by: Ahmed Amamou <ahmed@gandi.net>
net: rbridge: coding style update

Improve conformance with Linux coding style: indentation,
newlines/curly brackets/parentheses usage, 80 columns restriction,
no string splitting...

No code updated.

Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
Signed-off-by: William Dauchy <william@gandi.net>
Signed-off-by: Ahmed Amamou <ahmed@gandi.net>