MPLS_LABEL_OFFSET
su->smpls.smpls_label = htonl(label << MPLS_LABEL_OFFSET);
su->smpls.smpls_label = htonl(label << MPLS_LABEL_OFFSET);
ntohl(smpls->smpls_label) >> MPLS_LABEL_OFFSET);
shim |= htonl(flow << MPLS_LABEL_OFFSET) &
#define MPLS_LABEL2SHIM(_l) (htonl((_l) << MPLS_LABEL_OFFSET))
#define MPLS_SHIM2LABEL(_s) (ntohl((_s)) >> MPLS_LABEL_OFFSET)
#define MPLS_LABEL_GET(l) ((ntohl((l) & MPLS_LABEL_MASK)) >> MPLS_LABEL_OFFSET)
#define MPLS_LABEL_GET(l) ((ntohl((l) & MPLS_LABEL_MASK)) >> MPLS_LABEL_OFFSET)
ntohl(smpls->smpls_label) >> MPLS_LABEL_OFFSET);
printf(" mpls %d", ntohl(kf->mplslabel) >> MPLS_LABEL_OFFSET);
ntohl(kf->mplslabel) >> MPLS_LABEL_OFFSET);
htonl(kr->local_label << MPLS_LABEL_OFFSET);
htonl(kr->remote_label << MPLS_LABEL_OFFSET);
htonl(kr->local_label << MPLS_LABEL_OFFSET);
htonl(kr->remote_label << MPLS_LABEL_OFFSET);
#define MPLS_LABEL(m) ((m & MPLS_LABEL_MASK) >> MPLS_LABEL_OFFSET)