diff options
| author | Renato Westphal <renato@opensourcerouting.org> | 2017-08-22 17:01:54 -0300 |
|---|---|---|
| committer | Renato Westphal <renato@opensourcerouting.org> | 2017-08-22 17:37:58 -0300 |
| commit | 5e8c8947e3fb53d2fdbdf804c6014d6ecdb0b904 (patch) | |
| tree | 6d88033457ec6eb6022ba189b90afc47827f85d1 /zebra/zebra_static.h | |
| parent | 1d84515ca9d0a5e543be7e8e7ca9afc8b744e662 (diff) | |
zebra: increase maximum label stack depth
* Bump MPLS_MAX_LABELS from 2 to 16;
* Adjust the static_nh_label structure and the mpls_label2str() function;
* On OpenBSD, print an error message when trying to push more than one
label at once (kernel limitation). While here, add support for MPLSv6
FTNs in OpenBSD.
This is not the full package. We still can't pop multiple labels at once,
or do things like swap a label and push other ones. We'll address that
in the future.
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
Diffstat (limited to 'zebra/zebra_static.h')
| -rw-r--r-- | zebra/zebra_static.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/zebra/zebra_static.h b/zebra/zebra_static.h index 6ab47094a1..ff9f0f59e7 100644 --- a/zebra/zebra_static.h +++ b/zebra/zebra_static.h @@ -22,11 +22,13 @@ #ifndef __ZEBRA_STATIC_H__ #define __ZEBRA_STATIC_H__ +#include "zebra/zebra_mpls.h" + /* Static route label information */ struct static_nh_label { u_int8_t num_labels; u_int8_t reserved[3]; - mpls_label_t label[2]; + mpls_label_t label[MPLS_MAX_LABELS]; }; typedef enum { |
