uint64_t tunnel_id);
int ctdb_reply_control_tunnel_deregister(struct ctdb_reply_control *reply);
+void ctdb_req_control_vacuum_fetch(struct ctdb_req_control *request,
+ struct ctdb_rec_buffer *recbuf);
+int ctdb_reply_control_vacuum_fetch(struct ctdb_reply_control *reply);
+
/* From protocol/protocol_debug.c */
void ctdb_packet_print(uint8_t *buf, size_t buflen, FILE *fp);
return reply->status;
}
+
+/* CTDB_CONTROL_VACUUM_FETCH */
+
+void ctdb_req_control_vacuum_fetch(struct ctdb_req_control *request,
+ struct ctdb_rec_buffer *recbuf)
+{
+ request->opcode = CTDB_CONTROL_VACUUM_FETCH;
+ request->pad = 0;
+ request->srvid = 0;
+ request->client_id = 0;
+ request->flags = 0;
+
+ request->rdata.opcode = CTDB_CONTROL_VACUUM_FETCH;
+ request->rdata.data.recbuf = recbuf;
+}
+
+int ctdb_reply_control_vacuum_fetch(struct ctdb_reply_control *reply)
+{
+ if (reply->rdata.opcode != CTDB_CONTROL_VACUUM_FETCH) {
+ return EPROTO;
+ }
+
+ return reply->status;
+}
case CTDB_CONTROL_TUNNEL_DEREGISTER:
break;
+
+ case CTDB_CONTROL_VACUUM_FETCH:
+ len = ctdb_rec_buffer_len(cd->data.recbuf);
+ break;
}
return len;
case CTDB_CONTROL_CHECK_PID_SRVID:
ctdb_pid_srvid_push(cd->data.pid_srvid, buf, &np);
break;
+
+ case CTDB_CONTROL_VACUUM_FETCH:
+ ctdb_rec_buffer_push(cd->data.recbuf, buf, &np);
+ break;
}
*npush = np;
ret = ctdb_pid_srvid_pull(buf, buflen, mem_ctx,
&cd->data.pid_srvid, &np);
break;
+
+ case CTDB_CONTROL_VACUUM_FETCH:
+ ret = ctdb_rec_buffer_pull(buf, buflen, mem_ctx,
+ &cd->data.recbuf, &np);
+ break;
}
if (ret != 0) {
case CTDB_CONTROL_TUNNEL_DEREGISTER:
break;
+
+ case CTDB_CONTROL_VACUUM_FETCH:
+ break;
}
return len;
case CTDB_CONTROL_CHECK_PID_SRVID:
break;
+
+ case CTDB_CONTROL_VACUUM_FETCH:
+ break;
}
*npush = np;
case CTDB_CONTROL_CHECK_PID_SRVID:
break;
+
+ case CTDB_CONTROL_VACUUM_FETCH:
+ break;
}
if (ret != 0) {
{ CTDB_CONTROL_CHECK_PID_SRVID, "CHECK_PID_SRVID" },
{ CTDB_CONTROL_TUNNEL_REGISTER, "TUNNEL_REGISTER" },
{ CTDB_CONTROL_TUNNEL_DEREGISTER, "TUNNEL_DEREGISTER" },
+ { CTDB_CONTROL_VACUUM_FETCH, "VACUUM_FETCH" },
{ MAP_END, "" },
};