summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Willmann <daniel@totalueberwachung.de>2011-04-08 10:46:19 +0200
committerHolger Hans Peter Freyther <zecke@selfish.org>2011-04-09 20:52:18 +0200
commit334c8e178008f3184382aae6c2cd13b9652169e2 (patch)
tree32a5edb304298d22dd6e4432fcdcc07fc360e946
parent2d42ddeba37ed7e0d54bf10dc66b7549ad43bc5b (diff)
Add a function to search for a counter by name
-rw-r--r--include/osmocom/core/statistics.h2
-rw-r--r--src/statistics.c10
2 files changed, 12 insertions, 0 deletions
diff --git a/include/osmocom/core/statistics.h b/include/osmocom/core/statistics.h
index 1d56054..2c15965 100644
--- a/include/osmocom/core/statistics.h
+++ b/include/osmocom/core/statistics.h
@@ -28,4 +28,6 @@ void counter_free(struct counter *ctr);
int counters_for_each(int (*handle_counter)(struct counter *, void *), void *data);
+struct counter *counter_get_by_name(const char *name);
+
#endif /* _STATISTICS_H */
diff --git a/src/statistics.c b/src/statistics.c
index 183005d..d1ffe52 100644
--- a/src/statistics.c
+++ b/src/statistics.c
@@ -64,3 +64,13 @@ int counters_for_each(int (*handle_counter)(struct counter *, void *), void *dat
return rc;
}
+struct counter *counter_get_by_name(const char *name)
+{
+ struct counter *ctr;
+
+ llist_for_each_entry(ctr, &counters, list) {
+ if (!strcmp(ctr->name, name))
+ return ctr;
+ }
+ return NULL;
+}