105 } |
105 } |
106 |
106 |
107 if (send(s, (char *)"\r\n", 2, 0) != 2) { |
107 if (send(s, (char *)"\r\n", 2, 0) != 2) { |
108 syslog(LOG_NOTICE, "srv_send failed"); |
108 syslog(LOG_NOTICE, "srv_send failed"); |
109 return -1; |
109 return -1; |
|
110 } |
|
111 |
|
112 return 0; |
|
113 } |
|
114 |
|
115 |
|
116 |
|
117 /* |
|
118 * Send unlimited size message |
|
119 */ |
|
120 int large_send(int s, char *out) |
|
121 { |
|
122 if (s == -1) |
|
123 return -1; |
|
124 |
|
125 if (send(s, out, strlen(out), 0) != strlen(out)) { |
|
126 syslog(LOG_NOTICE, "large_send failed"); |
|
127 return -1; |
|
128 } |
|
129 |
|
130 if (send(s, (char *)"\r\n", 2, 0) != 2) { |
|
131 syslog(LOG_NOTICE, "large_send failed"); |
|
132 return -1; |
110 } |
133 } |
111 |
134 |
112 return 0; |
135 return 0; |
113 } |
136 } |
114 |
137 |
378 payload = xstrcat(payload, payloadu); |
401 payload = xstrcat(payload, payloadu); |
379 free(payloadu); |
402 free(payloadu); |
380 payloadu = NULL; |
403 payloadu = NULL; |
381 payload = xstrcat(payload, (char *)"}"); |
404 payload = xstrcat(payload, (char *)"}"); |
382 srv_send(s, (char *)"213 Device json record follows:"); |
405 srv_send(s, (char *)"213 Device json record follows:"); |
383 srv_send(s, payload); |
406 large_send(s, payload); |
384 free(payload); |
407 free(payload); |
385 payload = NULL; |
408 payload = NULL; |
386 srv_send(s, (char *)"."); |
409 srv_send(s, (char *)"."); |
387 return 0; |
410 return 0; |
388 } |
411 } |
1491 payload = xstrcat(payload, unit->alias); |
1514 payload = xstrcat(payload, unit->alias); |
1492 payload = xstrcat(payload, (char *)"\",\"metric\":"); |
1515 payload = xstrcat(payload, (char *)"\",\"metric\":"); |
1493 payloadu = unit_data(unit, false); |
1516 payloadu = unit_data(unit, false); |
1494 payload = xstrcat(payload, payloadu); |
1517 payload = xstrcat(payload, payloadu); |
1495 payload = xstrcat(payload, (char *)"}"); |
1518 payload = xstrcat(payload, (char *)"}"); |
1496 srv_send(s, payload); |
1519 large_send(s, payload); |
1497 free(payload); |
1520 free(payload); |
1498 free(payloadu); |
1521 free(payloadu); |
1499 payload = payloadu = NULL; |
1522 payload = payloadu = NULL; |
1500 srv_send(s, (char *)"."); |
1523 srv_send(s, (char *)"."); |
1501 return 0; |
1524 return 0; |