aboutsummaryrefslogtreecommitdiffstats
path: root/ctrl/libhicnctrl/src/modules/hicn_light.c
diff options
context:
space:
mode:
authorMauro Sardara <msardara@cisco.com>2022-09-26 11:20:08 +0000
committerGerrit Code Review <gerrit@fd.io>2022-09-26 11:20:08 +0000
commit3f0ad924b935c304559f4fa39e165b49d8da6e16 (patch)
tree25eeb2b8f066ca8122675fb23f997157842c48e1 /ctrl/libhicnctrl/src/modules/hicn_light.c
parent80c26b9e8a8cba1c437d67a39a3844d76fcbe305 (diff)
parentd2072866a012548f1f9e9bc93d9b8d7a84b654f5 (diff)
Merge "fix(stats): fix forwarder statistics retrieval"
Diffstat (limited to 'ctrl/libhicnctrl/src/modules/hicn_light.c')
-rw-r--r--ctrl/libhicnctrl/src/modules/hicn_light.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/ctrl/libhicnctrl/src/modules/hicn_light.c b/ctrl/libhicnctrl/src/modules/hicn_light.c
index 729d98f89..379cd2fa9 100644
--- a/ctrl/libhicnctrl/src/modules/hicn_light.c
+++ b/ctrl/libhicnctrl/src/modules/hicn_light.c
@@ -41,6 +41,7 @@
#include "../objects/connection.h" // hc_connection_has_local
#include "../objects/listener.h" // hc_listener_is_local
#include "../objects/route.h" // hc_route_has_face
+#include "../objects/stats.h"
#include "../request.h"
#include "../socket_private.h"
#include "hicn_light.h"
@@ -50,6 +51,7 @@
#include "hicn_light/listener.h"
#include "hicn_light/face.h"
#include "hicn_light/route.h"
+#include "hicn_light/stats.h"
#include "hicn_light/strategy.h"
#include "hicn_light/subscription.h"
@@ -1283,20 +1285,18 @@ static ssize_t hicnlight_prepare(hc_sock_t *sock, hc_request_t *request,
break;
}
- /*
- * Generic requests should complete after a single call to hicnlight_send,
- * with *pdata = NULL. If *pdata is not NULL, that means the request has
- * completed and we can close it.
- * It is the responsability of each state machine to complete the request
- * otherwise.
- */
-#if 1
+ /*
+ * Generic requests should complete after a single call to hicnlight_send,
+ * with *pdata = NULL. If *pdata is not NULL, that means the request has
+ * completed and we can close it.
+ * It is the responsability of each state machine to complete the request
+ * otherwise.
+ */
hc_data_t *data = hc_request_get_data(current_request);
if (data) {
hc_request_set_complete(current_request);
return 0;
}
-#endif
return hicnlight_prepare_generic(sock, request, buffer);
}
@@ -1391,7 +1391,6 @@ int hc_sock_initialize_module(hc_sock_t *s) {
* We do this because initialization in the static struct fails with
* 'initializer element is not constant'
*/
-#if 1
hc_sock_light.object_vft[OBJECT_TYPE_LISTENER] =
hicnlight_listener_module_ops;
hc_sock_light.object_vft[OBJECT_TYPE_CONNECTION] =
@@ -1403,11 +1402,13 @@ int hc_sock_initialize_module(hc_sock_t *s) {
hc_sock_light.object_vft[OBJECT_TYPE_WLDR] = HC_MODULE_OBJECT_OPS_EMPTY;
hc_sock_light.object_vft[OBJECT_TYPE_POLICY] = HC_MODULE_OBJECT_OPS_EMPTY;
hc_sock_light.object_vft[OBJECT_TYPE_ROUTE] = hicnlight_route_module_ops;
+ hc_sock_light.object_vft[OBJECT_TYPE_STATS] = hicnlight_stats_module_ops;
+ hc_sock_light.object_vft[OBJECT_TYPE_FACE_STATS] =
+ hicnlight_face_stats_module_ops;
hc_sock_light.object_vft[OBJECT_TYPE_STRATEGY] =
hicnlight_strategy_module_ops;
hc_sock_light.object_vft[OBJECT_TYPE_SUBSCRIPTION] =
hicnlight_subscription_module_ops;
-#endif
if (s) s->ops = hc_sock_light;
return 0;