[mpls-linux-general] bug: mpls/tc and mpls/netfilter, the same problem ?
Status: Beta
Brought to you by:
jleu
From: Vincent J. <ja...@en...> - 2001-07-03 12:20:07
|
Hi, I can see the following problem that could explain why MPLS/tc and MPLS/netfilter do not work for me: 1/ in sch_ingress.c: ... sch_ingress.c: skb->mpls_index = res.classid; ... I could check that skb->mpls_index = res.classid = 0x0x40005006 but in ip_output, skb->mpls_index remains always to 0x0. 2/ When I was doing another test, I could see the same problem with netfilter: in ipt_MPLS.c, the skb's mpls_index is set to 0x40005006, ipt_MPLS.c: ... if((*pskb)->mpls_index != mplsinfo->index) { (*pskb)->mpls_index = mplsinfo->index; <- It is set properly. (*pskb)->nfcache |= NFC_ALTERED; } ... But in ip_output, skb->mpls_index remains always to 0x0 ;-( Then the skb is not processed by mpls_output in ip_output, but it is processed by the regular ip_output. The datagram is not labeled and is not sent in the LSP. Who would have an idea in order to get the right skb->mpls_index in ip_output ? Vincent |