Code

write_riemann plugin: Reorder the functions to get rid or prototypes.
authorFlorian Forster <octo@collectd.org>
Sun, 7 Apr 2013 15:45:47 +0000 (17:45 +0200)
committerFlorian Forster <octo@collectd.org>
Sun, 7 Apr 2013 15:45:47 +0000 (17:45 +0200)
src/write_riemann.c

index 6ef27ca209c633d74387620ae06d36ad6d4c697a..d31a988e76de275fe52adb50d3d23557095e4de9 100644 (file)
@@ -56,16 +56,6 @@ struct riemann_host {
 static char    **riemann_tags;
 static size_t    riemann_tags_num;
 
-static int     riemann_send(struct riemann_host *, Msg const *);
-static int     riemann_notification(const notification_t *, user_data_t *);
-static int     riemann_write(const data_set_t *, const value_list_t *, user_data_t *);
-static int     riemann_connect(struct riemann_host *);
-static int     riemann_disconnect (struct riemann_host *host);
-static void    riemann_free(void *);
-static int     riemann_config_node(oconfig_item_t *);
-static int     riemann_config(oconfig_item_t *);
-void   module_register(void);
-
 static void riemann_event_protobuf_free (Event *event) /* {{{ */
 {
        if (event == NULL)
@@ -102,6 +92,79 @@ static void riemann_msg_protobuf_free (Msg *msg) /* {{{ */
        sfree (msg);
 } /* }}} void riemann_msg_protobuf_free */
 
+/* host->lock must be held when calling this function. */
+static int
+riemann_connect(struct riemann_host *host)
+{
+       int                      e;
+       struct addrinfo         *ai, *res, hints;
+       char const              *node;
+       char const              *service;
+
+       if (host->flags & F_CONNECT)
+               return 0;
+
+       memset(&hints, 0, sizeof(hints));
+       memset(&service, 0, sizeof(service));
+       hints.ai_family = AF_UNSPEC;
+       hints.ai_socktype = host->use_tcp ? SOCK_STREAM : SOCK_DGRAM;
+#ifdef AI_ADDRCONFIG
+       hints.ai_flags |= AI_ADDRCONFIG;
+#endif
+
+       node = (host->node != NULL) ? host->node : RIEMANN_HOST;
+       service = (host->service != NULL) ? host->service : RIEMANN_PORT;
+
+       if ((e = getaddrinfo(node, service, &hints, &res)) != 0) {
+               ERROR ("write_riemann plugin: Unable to resolve host \"%s\": %s",
+                       node, gai_strerror(e));
+               return -1;
+       }
+
+       host->s = -1;
+       for (ai = res; ai != NULL; ai = ai->ai_next) {
+               if ((host->s = socket(ai->ai_family,
+                                     ai->ai_socktype,
+                                     ai->ai_protocol)) == -1) {
+                       continue;
+               }
+
+               if (connect(host->s, ai->ai_addr, ai->ai_addrlen) != 0) {
+                       close(host->s);
+                       host->s = -1;
+                       continue;
+               }
+
+               host->flags |= F_CONNECT;
+               DEBUG("write_riemann plugin: got a succesful connection for: %s:%s",
+                               node, service);
+               break;
+       }
+
+       freeaddrinfo(res);
+
+       if (host->s < 0) {
+               WARNING("write_riemann plugin: Unable to connect to Riemann at %s:%s",
+                               node, service);
+               return -1;
+       }
+       return 0;
+}
+
+/* host->lock must be held when calling this function. */
+static int
+riemann_disconnect (struct riemann_host *host)
+{
+       if ((host->flags & F_CONNECT) == 0)
+               return (0);
+
+       close (host->s);
+       host->s = -1;
+       host->flags &= ~F_CONNECT;
+
+       return (0);
+}
+
 static int
 riemann_send(struct riemann_host *host, Msg const *msg)
 {
@@ -489,79 +552,6 @@ riemann_write(const data_set_t *ds,
        return status;
 }
 
-/* host->lock must be held when calling this function. */
-static int
-riemann_connect(struct riemann_host *host)
-{
-       int                      e;
-       struct addrinfo         *ai, *res, hints;
-       char const              *node;
-       char const              *service;
-
-       if (host->flags & F_CONNECT)
-               return 0;
-
-       memset(&hints, 0, sizeof(hints));
-       memset(&service, 0, sizeof(service));
-       hints.ai_family = AF_UNSPEC;
-       hints.ai_socktype = host->use_tcp ? SOCK_STREAM : SOCK_DGRAM;
-#ifdef AI_ADDRCONFIG
-       hints.ai_flags |= AI_ADDRCONFIG;
-#endif
-
-       node = (host->node != NULL) ? host->node : RIEMANN_HOST;
-       service = (host->service != NULL) ? host->service : RIEMANN_PORT;
-
-       if ((e = getaddrinfo(node, service, &hints, &res)) != 0) {
-               ERROR ("write_riemann plugin: Unable to resolve host \"%s\": %s",
-                       node, gai_strerror(e));
-               return -1;
-       }
-
-       host->s = -1;
-       for (ai = res; ai != NULL; ai = ai->ai_next) {
-               if ((host->s = socket(ai->ai_family,
-                                     ai->ai_socktype,
-                                     ai->ai_protocol)) == -1) {
-                       continue;
-               }
-
-               if (connect(host->s, ai->ai_addr, ai->ai_addrlen) != 0) {
-                       close(host->s);
-                       host->s = -1;
-                       continue;
-               }
-
-               host->flags |= F_CONNECT;
-               DEBUG("write_riemann plugin: got a succesful connection for: %s:%s",
-                               node, service);
-               break;
-       }
-
-       freeaddrinfo(res);
-
-       if (host->s < 0) {
-               WARNING("write_riemann plugin: Unable to connect to Riemann at %s:%s",
-                               node, service);
-               return -1;
-       }
-       return 0;
-}
-
-/* host->lock must be held when calling this function. */
-static int
-riemann_disconnect (struct riemann_host *host)
-{
-       if ((host->flags & F_CONNECT) == 0)
-               return (0);
-
-       close (host->s);
-       host->s = -1;
-       host->flags &= ~F_CONNECT;
-
-       return (0);
-}
-
 static void
 riemann_free(void *p)
 {