]> git.ipfire.org Git - thirdparty/collectd.git/commitdiff
daemon: Remove the label_t type.
authorFlorian Forster <octo@google.com>
Tue, 1 Sep 2020 12:33:47 +0000 (14:33 +0200)
committerFlorian Forster <octo@google.com>
Tue, 1 Sep 2020 12:36:13 +0000 (14:36 +0200)
It caused problems on Solaris, which also has a "label_t" type and was not used
in the API.

src/daemon/metric.c
src/daemon/metric.h
src/daemon/metric_test.c
src/utils/format_json/format_json_test.c
src/utils/format_stackdriver/format_stackdriver_test.c

index 16052be6117762e2a703c9284acb71ddf281c817..344bb4c538f5daf2137092e26c5b1ca8d5b2d0a9 100644 (file)
@@ -66,7 +66,10 @@ static label_pair_t *label_set_read(label_set_t labels, char const *name) {
     return NULL;
   }
 
-  label_t label = {
+  struct {
+    char const *name;
+    char const *value;
+  } label = {
       .name = name,
   };
 
index 0419304ede8e227e80b9a11874b7629a82ba2694..dbd24e08af4c92fd6b5c520ded2db5aa76a1709c 100644 (file)
@@ -64,16 +64,6 @@ typedef struct {
   char *value;
 } label_pair_t;
 
-/* label_t represents a key/value pair. It is similar to label_pair_t, except
- * that is has const fields. label_t is used in function arguments to prevent
- * the called function from modifying its argument. Internally labels are
- * stored as label_pair_t to allow modification, e.g. by targets in the "filter
- * chain". */
-typedef struct {
-  char const *name;
-  char const *value;
-} label_t;
-
 /* label_set_t is a sorted set of labels. */
 typedef struct {
   label_pair_t *ptr;
index 12816204609d74f13584b9aeaa3f738a3e3bee27..a3e26be448c5b33c02d28f22c53e26ac2daedfbb 100644 (file)
@@ -98,7 +98,7 @@ DEF_TEST(metric_label_set) {
 DEF_TEST(metric_identity) {
   struct {
     char *name;
-    label_t *labels;
+    label_pair_t *labels;
     size_t labels_num;
     char const *want;
   } cases[] = {
@@ -109,7 +109,7 @@ DEF_TEST(metric_identity) {
       {
           .name = "metric_with_labels",
           .labels =
-              (label_t[]){
+              (label_pair_t[]){
                   {"sorted", "yes"},
                   {"alphabetically", "true"},
               },
@@ -119,7 +119,7 @@ DEF_TEST(metric_identity) {
       {
           .name = "escape_sequences",
           .labels =
-              (label_t[]){
+              (label_pair_t[]){
                   {"newline", "\n"},
                   {"quote", "\""},
                   {"tab", "\t"},
@@ -166,7 +166,7 @@ DEF_TEST(metric_family_append) {
     gauge_t v;
     metric_t *templ;
     int want_err;
-    label_t *want_labels;
+    label_pair_t *want_labels;
     size_t want_labels_num;
     gauge_t want_value;
     cdtime_t want_time;
@@ -181,7 +181,7 @@ DEF_TEST(metric_family_append) {
           .lvalue = "test",
           .v = 42,
           .want_labels =
-              (label_t[]){
+              (label_pair_t[]){
                   {"type", "test"},
               },
           .want_labels_num = 1,
@@ -218,7 +218,7 @@ DEF_TEST(metric_family_append) {
                       },
               },
           .want_labels =
-              (label_t[]){
+              (label_pair_t[]){
                   {"common", "label"},
                   {"type", "test"},
               },
index 756a3104d67c405fd309d7acaaa0e388a243c1bf..6fa811f3bbcab09d11477011d8b0e888eb07cea4 100644 (file)
 #endif
 
 typedef struct {
-  label_t *expected_labels;
+  label_pair_t *expected_labels;
   size_t expected_labels_num;
 
-  label_t *current_label;
+  label_pair_t *current_label;
 } test_case_t;
 
 #if HAVE_YAJL_V2
@@ -58,7 +58,7 @@ static int test_map_key(void *ctx, unsigned char const *key,
 
   c->current_label = NULL;
   for (i = 0; i < c->expected_labels_num; i++) {
-    label_t *l = c->expected_labels + i;
+    label_pair_t *l = c->expected_labels + i;
     if ((strlen(l->name) == key_len) &&
         (strncmp(l->name, (char const *)key, key_len) == 0)) {
       c->current_label = l;
@@ -93,7 +93,7 @@ static int test_string(void *ctx, unsigned char const *value,
   test_case_t *c = ctx;
 
   if (c->current_label != NULL) {
-    label_t *l = c->current_label;
+    label_pair_t *l = c->current_label;
     char *got;
     int status;
 
@@ -112,7 +112,8 @@ static int test_string(void *ctx, unsigned char const *value,
   return 1; /* continue */
 }
 
-static int expect_json_labels(char *json, label_t *labels, size_t labels_num) {
+static int expect_json_labels(char *json, label_pair_t *labels,
+                              size_t labels_num) {
   yajl_callbacks funcs = {
       .yajl_string = test_string,
       .yajl_map_key = test_map_key,
@@ -134,7 +135,7 @@ static int expect_json_labels(char *json, label_t *labels, size_t labels_num) {
 }
 
 DEF_TEST(notification) {
-  label_t labels[] = {
+  label_pair_t labels[] = {
       {"summary", "this is a message"},
       {"alertname", "collectd_unit_test"},
       {"instance", "example.com"},
index 5992b2aee574fd89e854dd2fc2e3e25fe29665e7..8597bcc07f00d4ebfb99a5922e7e04e91ee1d500 100644 (file)
@@ -29,7 +29,7 @@ DEF_TEST(sd_format_metric_descriptor) {
   struct {
     char *name;
     metric_type_t type;
-    label_t *labels;
+    label_pair_t *labels;
     size_t labels_num;
     char *want;
   } cases[] = {
@@ -58,7 +58,7 @@ DEF_TEST(sd_format_metric_descriptor) {
           .name = "metric_with_labels",
           .type = METRIC_TYPE_GAUGE,
           .labels =
-              (label_t[]){
+              (label_pair_t[]){
                   {"region", "here be dragons"},
                   {"instance", "example.com"},
               },
@@ -86,7 +86,7 @@ DEF_TEST(sd_format_metric_descriptor) {
         .family = &fam,
     };
     for (size_t j = 0; j < cases[i].labels_num; j++) {
-      label_t *l = cases[i].labels + j;
+      label_pair_t *l = cases[i].labels + j;
       EXPECT_EQ_INT(0, metric_label_set(&m, l->name, l->value));
     }