int ctdbd_conn_get_fd(struct ctdbd_connection *conn);
-NTSTATUS ctdbd_messaging_send_iov(struct ctdbd_connection *conn,
- uint32_t dst_vnn, uint64_t dst_srvid,
- const struct iovec *iov, int iovlen);
+int ctdbd_messaging_send_iov(struct ctdbd_connection *conn,
+ uint32_t dst_vnn, uint64_t dst_srvid,
+ const struct iovec *iov, int iovlen);
bool ctdbd_process_exists(struct ctdbd_connection *conn, uint32_t vnn,
pid_t pid);
return NT_STATUS_NOT_IMPLEMENTED;
}
-NTSTATUS ctdbd_messaging_send_iov(struct ctdbd_connection *conn,
- uint32_t dst_vnn, uint64_t dst_srvid,
- const struct iovec *iov, int iovlen)
+int ctdbd_messaging_send_iov(struct ctdbd_connection *conn,
+ uint32_t dst_vnn, uint64_t dst_srvid,
+ const struct iovec *iov, int iovlen)
{
- return NT_STATUS_NOT_IMPLEMENTED;
+ return ENOSYS;
}
int register_with_ctdbd(struct ctdbd_connection *conn, uint64_t srvid,
return 0;
}
-NTSTATUS ctdbd_messaging_send_iov(struct ctdbd_connection *conn,
- uint32_t dst_vnn, uint64_t dst_srvid,
- const struct iovec *iov, int iovlen)
+int ctdbd_messaging_send_iov(struct ctdbd_connection *conn,
+ uint32_t dst_vnn, uint64_t dst_srvid,
+ const struct iovec *iov, int iovlen)
{
struct ctdb_req_message r;
struct iovec iov2[iovlen+1];
cluster_fatal("cluster dispatch daemon msg write error\n");
}
- return NT_STATUS_OK;
+ return 0;
}
/*
backend->private_data, struct messaging_ctdbd_context);
uint8_t hdr[MESSAGE_HDR_LENGTH];
struct iovec iov2[iovlen+1];
- NTSTATUS status;
if (num_fds > 0) {
return ENOSYS;
iov2[0] = (struct iovec){ .iov_base = hdr, .iov_len = sizeof(hdr) };
memcpy(&iov2[1], iov, iovlen * sizeof(*iov));
- status = ctdbd_messaging_send_iov(ctx->conn, pid.vnn, pid.pid,
- iov2, iovlen+1);
- if (NT_STATUS_IS_OK(status)) {
- return 0;
- }
- return map_errno_from_nt_status(status);
+ return ctdbd_messaging_send_iov(ctx->conn, pid.vnn, pid.pid,
+ iov2, iovlen+1);
}
static int messaging_ctdbd_destructor(struct messaging_ctdbd_context *ctx)
struct server_id src,
struct messaging_reclog *log)
{
- NTSTATUS status;
enum ndr_err_code ndr_err;
uint8_t msghdr[MESSAGE_HDR_LENGTH];
DATA_BLOB blob;
struct iovec iov[2];
+ int ret;
if (log == NULL) {
return;
iov[1] = (struct iovec) { .iov_base = blob.data,
.iov_len = blob.length };
- status = ctdbd_messaging_send_iov(
+ ret = ctdbd_messaging_send_iov(
ctdbd_conn, CTDB_BROADCAST_VNNMAP,
CTDB_SRVID_SAMBA_NOTIFY_PROXY, iov, ARRAY_SIZE(iov));
TALLOC_FREE(blob.data);
- if (!NT_STATUS_IS_OK(status)) {
+ if (ret != 0) {
DEBUG(1, ("%s: ctdbd_messaging_send failed: %s\n",
- __func__, nt_errstr(status)));
+ __func__, strerror(ret)));
goto done;
}