index += 1;
backend_info->backend_status = atoi(index);
+ index = (char *) memchr(index, '\0', len);
+ if (index == NULL)
+ goto INVALID_RESPONSE;
+ index += 1;
+ backend_info->quarantine = atoi(index);
+
index = (char *) memchr(index, '\0', len);
if (index == NULL)
goto INVALID_RESPONSE;
{
char port_str[6];
char status[2];
+ char quarantine[2];
char weight_str[20];
char role_str[10];
char standby_delay_str[20];
snprintf(port_str, sizeof(port_str), "%d", bi->backend_port);
snprintf(status, sizeof(status), "%d", bi->backend_status);
+ snprintf(quarantine, sizeof(quarantine), "%d", bi->quarantine);
snprintf(weight_str, sizeof(weight_str), "%f", bi->backend_weight);
if (STREAM)
strlen(bi->backend_hostname) + 1 +
strlen(port_str) + 1 +
strlen(status) + 1 +
+ strlen(quarantine) + 1 +
strlen(nodes[i].pg_status) + 1 +
strlen(weight_str) + 1 +
strlen(role_str) + 1 +
pcp_write(frontend, bi->backend_hostname, strlen(bi->backend_hostname) + 1);
pcp_write(frontend, port_str, strlen(port_str) + 1);
pcp_write(frontend, status, strlen(status) + 1);
+ pcp_write(frontend, quarantine, strlen(quarantine) + 1);
pcp_write(frontend, nodes[i].pg_status, strlen(nodes[i].pg_status) + 1);
pcp_write(frontend, weight_str, strlen(weight_str) + 1);
pcp_write(frontend, role_str, strlen(role_str) + 1);