summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_script.h
diff options
context:
space:
mode:
authorDonald Lee <dlqs@gmx.com>2021-06-21 23:03:07 +0200
committerDonald Lee <dlqs@gmx.com>2021-06-21 23:03:07 +0200
commitb7da61c1d1b2824b139bfce73b1d6849d4b75b6a (patch)
treef2462d0d2710228d1b74795a976f74798031e63e /bgpd/bgp_script.h
parentlib: Update script SCRIPT command (diff)
downloadfrr-b7da61c1d1b2824b139bfce73b1d6849d4b75b6a.tar.xz
frr-b7da61c1d1b2824b139bfce73b1d6849d4b75b6a.zip
bgpd: Update bgp_script encoders and decoders
This is an example of creating encoders and decoders for user defined structs and registering them in the ENCODE_ARGS DECODE_ARGS macro in frrscript. Signed-off-by: Donald Lee <dlqs@gmx.com>
Diffstat (limited to 'bgpd/bgp_script.h')
-rw-r--r--bgpd/bgp_script.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/bgpd/bgp_script.h b/bgpd/bgp_script.h
index 6682c2eeb..f8178aa98 100644
--- a/bgpd/bgp_script.h
+++ b/bgpd/bgp_script.h
@@ -21,14 +21,25 @@
#define __BGP_SCRIPT__
#include <zebra.h>
+#include "bgpd.h"
#ifdef HAVE_SCRIPTING
+#include "frrlua.h"
+
/*
* Initialize scripting stuff.
*/
void bgp_script_init(void);
+void lua_pushpeer(lua_State *L, const struct peer *peer);
+
+void lua_pushattr(lua_State *L, const struct attr *attr);
+
+void lua_decode_attr(lua_State *L, int idx, struct attr *attr);
+
+void *lua_toattr(lua_State *L, int idx);
+
#endif /* HAVE_SCRIPTING */
#endif /* __BGP_SCRIPT__ */