7 int onewire_parser(char *rrd_data, const char **parser_data)
10 const char *server_addr;
13 int max_str = RRD_DATA_MAX_LEN;
16 pr_err("No parser data available\n");
20 server_addr = parser_data[0];
23 pr_err("Server address not specified\n");
27 h = OWNET_init(server_addr);
29 pr_err("Failed to connect to server %s\n", server_addr);
33 while (parser_data[i]) {
34 if (!strcmp("U", parser_data[i])) {
36 ret = snprintf(rrd_data, max_str, "U");
42 pr_info("Reading data for entry %s\n", parser_data[i]);
43 ret = OWNET_read(h, parser_data[i], &tmp);
45 pr_err("Failed to read entry %s\n", parser_data[i]);
49 /* The data from OWNET_read appears to not be NULL terminated */
50 memcpy(buf, tmp, MIN(ret, sizeof(buf) -1));
54 ret = snprintf(rrd_data, max_str, "%s", buf);
63 ret = snprintf(rrd_data, max_str, ":");