ctdb-protocol: Fix marshalling for ctdb_notify_data
[vlendec/samba-autobuild/.git] / ctdb / protocol / protocol_control.c
index 5ba54f80e6029da8d16a7d7c320dc22ba232700d..ff770b072597bf5fd9392e3e4660627a8aa209a4 100644 (file)
@@ -456,7 +456,7 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_SETVNNMAP:
-               ctdb_vnn_map_push(cd->data.vnnmap, buf);
+               ctdb_vnn_map_push(cd->data.vnnmap, buf, &np);
                break;
 
        case CTDB_CONTROL_SET_DEBUG:
@@ -464,11 +464,11 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_PULL_DB:
-               ctdb_pulldb_push(cd->data.pulldb, buf);
+               ctdb_pulldb_push(cd->data.pulldb, buf, &np);
                break;
 
        case CTDB_CONTROL_PUSH_DB:
-               ctdb_rec_buffer_push(cd->data.recbuf, buf);
+               ctdb_rec_buffer_push(cd->data.recbuf, buf, &np);
                break;
 
        case CTDB_CONTROL_SET_RECMODE:
@@ -483,15 +483,15 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_TRAVERSE_START:
-               ctdb_traverse_start_push(cd->data.traverse_start, buf);
+               ctdb_traverse_start_push(cd->data.traverse_start, buf, &np);
                break;
 
        case CTDB_CONTROL_TRAVERSE_ALL:
-               ctdb_traverse_all_push(cd->data.traverse_all, buf);
+               ctdb_traverse_all_push(cd->data.traverse_all, buf, &np);
                break;
 
        case CTDB_CONTROL_TRAVERSE_DATA:
-               ctdb_rec_data_push(cd->data.rec_data, buf);
+               ctdb_rec_data_push(cd->data.rec_data, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_DBNAME:
@@ -511,19 +511,19 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_TCP_CLIENT:
-               ctdb_connection_push(cd->data.conn, buf);
+               ctdb_connection_push(cd->data.conn, buf, &np);
                break;
 
        case CTDB_CONTROL_TCP_ADD:
-               ctdb_connection_push(cd->data.conn, buf);
+               ctdb_connection_push(cd->data.conn, buf, &np);
                break;
 
        case CTDB_CONTROL_TCP_REMOVE:
-               ctdb_connection_push(cd->data.conn, buf);
+               ctdb_connection_push(cd->data.conn, buf, &np);
                break;
 
        case CTDB_CONTROL_SET_TUNABLE:
-               ctdb_tunable_push(cd->data.tunable, buf);
+               ctdb_tunable_push(cd->data.tunable, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_TUNABLE:
@@ -531,15 +531,15 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_MODIFY_FLAGS:
-               ctdb_node_flag_change_push(cd->data.flag_change, buf);
+               ctdb_node_flag_change_push(cd->data.flag_change, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_TCP_TICKLE_LIST:
-               ctdb_sock_addr_push(cd->data.addr, buf);
+               ctdb_sock_addr_push(cd->data.addr, buf, &np);
                break;
 
        case CTDB_CONTROL_SET_TCP_TICKLE_LIST:
-               ctdb_tickle_list_push(cd->data.tickles, buf);
+               ctdb_tickle_list_push(cd->data.tickles, buf, &np);
                break;
 
        case CTDB_CONTROL_DB_ATTACH_PERSISTENT:
@@ -547,39 +547,39 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_UPDATE_RECORD:
-               ctdb_rec_buffer_push(cd->data.recbuf, buf);
+               ctdb_rec_buffer_push(cd->data.recbuf, buf, &np);
                break;
 
        case CTDB_CONTROL_SEND_GRATUITOUS_ARP:
-               ctdb_addr_info_push(cd->data.addr_info, buf);
+               ctdb_addr_info_push(cd->data.addr_info, buf, &np);
                break;
 
        case CTDB_CONTROL_WIPE_DATABASE:
-               ctdb_transdb_push(cd->data.transdb, buf);
+               ctdb_transdb_push(cd->data.transdb, buf, &np);
                break;
 
        case CTDB_CONTROL_TRY_DELETE_RECORDS:
-               ctdb_rec_buffer_push(cd->data.recbuf, buf);
+               ctdb_rec_buffer_push(cd->data.recbuf, buf, &np);
                break;
 
        case CTDB_CONTROL_ADD_PUBLIC_IP:
-               ctdb_addr_info_push(cd->data.addr_info, buf);
+               ctdb_addr_info_push(cd->data.addr_info, buf, &np);
                break;
 
        case CTDB_CONTROL_DEL_PUBLIC_IP:
-               ctdb_addr_info_push(cd->data.addr_info, buf);
+               ctdb_addr_info_push(cd->data.addr_info, buf, &np);
                break;
 
        case CTDB_CONTROL_RELEASE_IP:
-               ctdb_public_ip_push(cd->data.pubip, buf);
+               ctdb_public_ip_push(cd->data.pubip, buf, &np);
                break;
 
        case CTDB_CONTROL_TAKEOVER_IP:
-               ctdb_public_ip_push(cd->data.pubip, buf);
+               ctdb_public_ip_push(cd->data.pubip, buf, &np);
                break;
 
        case CTDB_CONTROL_TRAVERSE_KILL:
-               ctdb_traverse_start_push(cd->data.traverse_start, buf);
+               ctdb_traverse_start_push(cd->data.traverse_start, buf, &np);
                break;
 
        case CTDB_CONTROL_RECD_RECLOCK_LATENCY:
@@ -595,11 +595,11 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_SET_BAN_STATE:
-               ctdb_ban_state_push(cd->data.ban_state, buf);
+               ctdb_ban_state_push(cd->data.ban_state, buf, &np);
                break;
 
        case CTDB_CONTROL_REGISTER_NOTIFY:
-               ctdb_notify_data_push(cd->data.notify, buf);
+               ctdb_notify_data_push(cd->data.notify, buf, &np);
                break;
 
        case CTDB_CONTROL_DEREGISTER_NOTIFY:
@@ -607,7 +607,7 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_TRANS3_COMMIT:
-               ctdb_rec_buffer_push(cd->data.recbuf, buf);
+               ctdb_rec_buffer_push(cd->data.recbuf, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_DB_SEQNUM:
@@ -629,7 +629,7 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_GET_PUBLIC_IP_INFO:
-               ctdb_sock_addr_push(cd->data.addr, buf);
+               ctdb_sock_addr_push(cd->data.addr, buf, &np);
                break;
 
        case CTDB_CONTROL_SET_IFACE_LINK_STATE:
@@ -637,7 +637,7 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_TCP_ADD_DELAYED_UPDATE:
-               ctdb_connection_push(cd->data.conn, buf);
+               ctdb_connection_push(cd->data.conn, buf, &np);
                break;
 
        case CTDB_CONTROL_SCHEDULE_FOR_DELETION:
@@ -652,7 +652,8 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_TRAVERSE_START_EXT:
-               ctdb_traverse_start_ext_push(cd->data.traverse_start_ext, buf);
+               ctdb_traverse_start_ext_push(cd->data.traverse_start_ext, buf,
+                                            &np);
                break;
 
        case CTDB_CONTROL_GET_DB_STATISTICS:
@@ -664,11 +665,12 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_TRAVERSE_ALL_EXT:
-               ctdb_traverse_all_ext_push(cd->data.traverse_all_ext, buf);
+               ctdb_traverse_all_ext_push(cd->data.traverse_all_ext, buf,
+                                          &np);
                break;
 
        case CTDB_CONTROL_RECEIVE_RECORDS:
-               ctdb_rec_buffer_push(cd->data.recbuf, buf);
+               ctdb_rec_buffer_push(cd->data.recbuf, buf, &np);
                break;
 
        case CTDB_CONTROL_DB_DETACH:
@@ -684,11 +686,11 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_DB_TRANSACTION_START:
-               ctdb_transdb_push(cd->data.transdb, buf);
+               ctdb_transdb_push(cd->data.transdb, buf, &np);
                break;
 
        case CTDB_CONTROL_DB_TRANSACTION_COMMIT:
-               ctdb_transdb_push(cd->data.transdb, buf);
+               ctdb_transdb_push(cd->data.transdb, buf, &np);
                break;
 
        case CTDB_CONTROL_DB_TRANSACTION_CANCEL:
@@ -696,11 +698,11 @@ static void ctdb_req_control_data_push(struct ctdb_req_control_data *cd,
                break;
 
        case CTDB_CONTROL_DB_PULL:
-               ctdb_pulldb_ext_push(cd->data.pulldb_ext, buf);
+               ctdb_pulldb_ext_push(cd->data.pulldb_ext, buf, &np);
                break;
 
        case CTDB_CONTROL_DB_PUSH_START:
-               ctdb_pulldb_ext_push(cd->data.pulldb_ext, buf);
+               ctdb_pulldb_ext_push(cd->data.pulldb_ext, buf, &np);
                break;
 
        case CTDB_CONTROL_DB_PUSH_CONFIRM:
@@ -739,7 +741,7 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_SETVNNMAP:
                ret = ctdb_vnn_map_pull(buf, buflen, mem_ctx,
-                                       &cd->data.vnnmap);
+                                       &cd->data.vnnmap, &np);
                break;
 
        case CTDB_CONTROL_SET_DEBUG:
@@ -748,12 +750,12 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_PULL_DB:
                ret = ctdb_pulldb_pull(buf, buflen, mem_ctx,
-                                      &cd->data.pulldb);
+                                      &cd->data.pulldb, &np);
                break;
 
        case CTDB_CONTROL_PUSH_DB:
                ret = ctdb_rec_buffer_pull(buf, buflen, mem_ctx,
-                                          &cd->data.recbuf);
+                                          &cd->data.recbuf, &np);
                break;
 
        case CTDB_CONTROL_SET_RECMODE:
@@ -770,17 +772,17 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_TRAVERSE_START:
                ret = ctdb_traverse_start_pull(buf, buflen, mem_ctx,
-                                              &cd->data.traverse_start);
+                                              &cd->data.traverse_start, &np);
                break;
 
        case CTDB_CONTROL_TRAVERSE_ALL:
                ret = ctdb_traverse_all_pull(buf, buflen, mem_ctx,
-                                            &cd->data.traverse_all);
+                                            &cd->data.traverse_all, &np);
                break;
 
        case CTDB_CONTROL_TRAVERSE_DATA:
                ret = ctdb_rec_data_pull(buf, buflen, mem_ctx,
-                                        &cd->data.rec_data);
+                                        &cd->data.rec_data, &np);
                break;
 
        case CTDB_CONTROL_GET_DBNAME:
@@ -801,22 +803,22 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_TCP_CLIENT:
                ret = ctdb_connection_pull(buf, buflen, mem_ctx,
-                                          &cd->data.conn);
+                                          &cd->data.conn, &np);
                break;
 
        case CTDB_CONTROL_TCP_ADD:
                ret = ctdb_connection_pull(buf, buflen, mem_ctx,
-                                          &cd->data.conn);
+                                          &cd->data.conn, &np);
                break;
 
        case CTDB_CONTROL_TCP_REMOVE:
                ret = ctdb_connection_pull(buf, buflen, mem_ctx,
-                                          &cd->data.conn);
+                                          &cd->data.conn, &np);
                break;
 
        case CTDB_CONTROL_SET_TUNABLE:
                ret = ctdb_tunable_pull(buf, buflen, mem_ctx,
-                                       &cd->data.tunable);
+                                       &cd->data.tunable, &np);
                break;
 
        case CTDB_CONTROL_GET_TUNABLE:
@@ -826,17 +828,17 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_MODIFY_FLAGS:
                ret = ctdb_node_flag_change_pull(buf, buflen, mem_ctx,
-                                                &cd->data.flag_change);
+                                                &cd->data.flag_change, &np);
                break;
 
        case CTDB_CONTROL_GET_TCP_TICKLE_LIST:
                ret = ctdb_sock_addr_pull(buf, buflen, mem_ctx,
-                                         &cd->data.addr);
+                                         &cd->data.addr, &np);
                break;
 
        case CTDB_CONTROL_SET_TCP_TICKLE_LIST:
                ret = ctdb_tickle_list_pull(buf, buflen, mem_ctx,
-                                           &cd->data.tickles);
+                                           &cd->data.tickles, &np);
                break;
 
        case CTDB_CONTROL_DB_ATTACH_PERSISTENT:
@@ -846,47 +848,47 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_UPDATE_RECORD:
                ret = ctdb_rec_buffer_pull(buf, buflen, mem_ctx,
-                                          &cd->data.recbuf);
+                                          &cd->data.recbuf, &np);
                break;
 
        case CTDB_CONTROL_SEND_GRATUITOUS_ARP:
                ret = ctdb_addr_info_pull(buf, buflen, mem_ctx,
-                                         &cd->data.addr_info);
+                                         &cd->data.addr_info, &np);
                break;
 
        case CTDB_CONTROL_WIPE_DATABASE:
                ret = ctdb_transdb_pull(buf, buflen, mem_ctx,
-                                      &cd->data.transdb);
+                                      &cd->data.transdb, &np);
                break;
 
        case CTDB_CONTROL_TRY_DELETE_RECORDS:
                ret = ctdb_rec_buffer_pull(buf, buflen, mem_ctx,
-                                          &cd->data.recbuf);
+                                          &cd->data.recbuf, &np);
                break;
 
        case CTDB_CONTROL_ADD_PUBLIC_IP:
                ret = ctdb_addr_info_pull(buf, buflen, mem_ctx,
-                                         &cd->data.addr_info);
+                                         &cd->data.addr_info, &np);
                break;
 
        case CTDB_CONTROL_DEL_PUBLIC_IP:
                ret = ctdb_addr_info_pull(buf, buflen, mem_ctx,
-                                         &cd->data.addr_info);
+                                         &cd->data.addr_info, &np);
                break;
 
        case CTDB_CONTROL_RELEASE_IP:
                ret = ctdb_public_ip_pull(buf, buflen, mem_ctx,
-                                         &cd->data.pubip);
+                                         &cd->data.pubip, &np);
                break;
 
        case CTDB_CONTROL_TAKEOVER_IP:
                ret = ctdb_public_ip_pull(buf, buflen, mem_ctx,
-                                         &cd->data.pubip);
+                                         &cd->data.pubip, &np);
                break;
 
        case CTDB_CONTROL_TRAVERSE_KILL:
                ret = ctdb_traverse_start_pull(buf, buflen, mem_ctx,
-                                              &cd->data.traverse_start);
+                                              &cd->data.traverse_start, &np);
                break;
 
        case CTDB_CONTROL_RECD_RECLOCK_LATENCY:
@@ -904,12 +906,12 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_SET_BAN_STATE:
                ret = ctdb_ban_state_pull(buf, buflen, mem_ctx,
-                                         &cd->data.ban_state);
+                                         &cd->data.ban_state, &np);
                break;
 
        case CTDB_CONTROL_REGISTER_NOTIFY:
                ret = ctdb_notify_data_pull(buf, buflen, mem_ctx,
-                                           &cd->data.notify);
+                                           &cd->data.notify, &np);
                break;
 
        case CTDB_CONTROL_DEREGISTER_NOTIFY:
@@ -918,7 +920,7 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_TRANS3_COMMIT:
                ret = ctdb_rec_buffer_pull(buf, buflen, mem_ctx,
-                                          &cd->data.recbuf);
+                                          &cd->data.recbuf, &np);
                break;
 
        case CTDB_CONTROL_GET_DB_SEQNUM:
@@ -943,7 +945,7 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_GET_PUBLIC_IP_INFO:
                ret = ctdb_sock_addr_pull(buf, buflen, mem_ctx,
-                                         &cd->data.addr);
+                                         &cd->data.addr, &np);
                break;
 
        case CTDB_CONTROL_SET_IFACE_LINK_STATE:
@@ -953,7 +955,7 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_TCP_ADD_DELAYED_UPDATE:
                ret = ctdb_connection_pull(buf, buflen, mem_ctx,
-                                          &cd->data.conn);
+                                          &cd->data.conn, &np);
                break;
 
        case CTDB_CONTROL_SCHEDULE_FOR_DELETION:
@@ -970,7 +972,8 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_TRAVERSE_START_EXT:
                ret = ctdb_traverse_start_ext_pull(buf, buflen, mem_ctx,
-                                                  &cd->data.traverse_start_ext);
+                                                  &cd->data.traverse_start_ext,
+                                                  &np);
                break;
 
        case CTDB_CONTROL_GET_DB_STATISTICS:
@@ -983,12 +986,13 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_TRAVERSE_ALL_EXT:
                ret = ctdb_traverse_all_ext_pull(buf, buflen, mem_ctx,
-                                                &cd->data.traverse_all_ext);
+                                                &cd->data.traverse_all_ext,
+                                                &np);
                break;
 
        case CTDB_CONTROL_RECEIVE_RECORDS:
                ret = ctdb_rec_buffer_pull(buf, buflen, mem_ctx,
-                                          &cd->data.recbuf);
+                                          &cd->data.recbuf, &np);
                break;
 
        case CTDB_CONTROL_DB_DETACH:
@@ -1005,12 +1009,12 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_DB_TRANSACTION_START:
                ret = ctdb_transdb_pull(buf, buflen, mem_ctx,
-                                       &cd->data.transdb);
+                                       &cd->data.transdb, &np);
                break;
 
        case CTDB_CONTROL_DB_TRANSACTION_COMMIT:
                ret = ctdb_transdb_pull(buf, buflen, mem_ctx,
-                                       &cd->data.transdb);
+                                       &cd->data.transdb, &np);
                break;
 
        case CTDB_CONTROL_DB_TRANSACTION_CANCEL:
@@ -1019,12 +1023,12 @@ static int ctdb_req_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_DB_PULL:
                ret = ctdb_pulldb_ext_pull(buf, buflen, mem_ctx,
-                                          &cd->data.pulldb_ext);
+                                          &cd->data.pulldb_ext, &np);
                break;
 
        case CTDB_CONTROL_DB_PUSH_START:
                ret = ctdb_pulldb_ext_pull(buf, buflen, mem_ctx,
-                                          &cd->data.pulldb_ext);
+                                          &cd->data.pulldb_ext, &np);
                break;
 
        case CTDB_CONTROL_DB_PUSH_CONFIRM:
@@ -1427,7 +1431,7 @@ static void ctdb_reply_control_data_push(struct ctdb_reply_control_data *cd,
                break;
 
        case CTDB_CONTROL_GETVNNMAP:
-               ctdb_vnn_map_push(cd->data.vnnmap, buf);
+               ctdb_vnn_map_push(cd->data.vnnmap, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_DEBUG:
@@ -1435,11 +1439,11 @@ static void ctdb_reply_control_data_push(struct ctdb_reply_control_data *cd,
                break;
 
        case CTDB_CONTROL_GET_DBMAP:
-               ctdb_dbid_map_push(cd->data.dbmap, buf);
+               ctdb_dbid_map_push(cd->data.dbmap, buf, &np);
                break;
 
        case CTDB_CONTROL_PULL_DB:
-               ctdb_rec_buffer_push(cd->data.recbuf, buf);
+               ctdb_rec_buffer_push(cd->data.recbuf, buf, &np);
                break;
 
        case CTDB_CONTROL_PUSH_DB:
@@ -1468,15 +1472,15 @@ static void ctdb_reply_control_data_push(struct ctdb_reply_control_data *cd,
                break;
 
        case CTDB_CONTROL_LIST_TUNABLES:
-               ctdb_var_list_push(cd->data.tun_var_list, buf);
+               ctdb_var_list_push(cd->data.tun_var_list, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_ALL_TUNABLES:
-               ctdb_tunable_list_push(cd->data.tun_list, buf);
+               ctdb_tunable_list_push(cd->data.tun_list, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_TCP_TICKLE_LIST:
-               ctdb_tickle_list_push(cd->data.tickles, buf);
+               ctdb_tickle_list_push(cd->data.tickles, buf, &np);
                break;
 
        case CTDB_CONTROL_DB_ATTACH_PERSISTENT:
@@ -1484,11 +1488,11 @@ static void ctdb_reply_control_data_push(struct ctdb_reply_control_data *cd,
                break;
 
        case CTDB_CONTROL_UPTIME:
-               ctdb_uptime_push(cd->data.uptime, buf);
+               ctdb_uptime_push(cd->data.uptime, buf, &np);
                break;
 
        case CTDB_CONTROL_TRY_DELETE_RECORDS:
-               ctdb_rec_buffer_push(cd->data.recbuf, buf);
+               ctdb_rec_buffer_push(cd->data.recbuf, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_CAPABILITIES:
@@ -1496,11 +1500,11 @@ static void ctdb_reply_control_data_push(struct ctdb_reply_control_data *cd,
                break;
 
        case CTDB_CONTROL_GET_PUBLIC_IPS:
-               ctdb_public_ip_list_push(cd->data.pubip_list, buf);
+               ctdb_public_ip_list_push(cd->data.pubip_list, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_NODEMAP:
-               ctdb_node_map_push(cd->data.nodemap, buf);
+               ctdb_node_map_push(cd->data.nodemap, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_RECLOCK_FILE:
@@ -1508,7 +1512,7 @@ static void ctdb_reply_control_data_push(struct ctdb_reply_control_data *cd,
                break;
 
        case CTDB_CONTROL_GET_BAN_STATE:
-               ctdb_ban_state_push(cd->data.ban_state, buf);
+               ctdb_ban_state_push(cd->data.ban_state, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_DB_PRIORITY:
@@ -1542,7 +1546,7 @@ static void ctdb_reply_control_data_push(struct ctdb_reply_control_data *cd,
                break;
 
        case CTDB_CONTROL_RECEIVE_RECORDS:
-               ctdb_rec_buffer_push(cd->data.recbuf, buf);
+               ctdb_rec_buffer_push(cd->data.recbuf, buf, &np);
                break;
 
        case CTDB_CONTROL_GET_RUNSTATE:
@@ -1550,7 +1554,7 @@ static void ctdb_reply_control_data_push(struct ctdb_reply_control_data *cd,
                break;
 
        case CTDB_CONTROL_GET_NODES_FILE:
-               ctdb_node_map_push(cd->data.nodemap, buf);
+               ctdb_node_map_push(cd->data.nodemap, buf, &np);
                break;
 
        case CTDB_CONTROL_DB_PULL:
@@ -1593,7 +1597,7 @@ static int ctdb_reply_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_GETVNNMAP:
                ret = ctdb_vnn_map_pull(buf, buflen, mem_ctx,
-                                       &cd->data.vnnmap);
+                                       &cd->data.vnnmap, &np);
                break;
 
        case CTDB_CONTROL_GET_DEBUG:
@@ -1602,12 +1606,12 @@ static int ctdb_reply_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_GET_DBMAP:
                ret = ctdb_dbid_map_pull(buf, buflen, mem_ctx,
-                                        &cd->data.dbmap);
+                                        &cd->data.dbmap, &np);
                break;
 
        case CTDB_CONTROL_PULL_DB:
                ret = ctdb_rec_buffer_pull(buf, buflen, mem_ctx,
-                                          &cd->data.recbuf);
+                                          &cd->data.recbuf, &np);
                break;
 
        case CTDB_CONTROL_PUSH_DB:
@@ -1640,17 +1644,17 @@ static int ctdb_reply_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_LIST_TUNABLES:
                ret = ctdb_var_list_pull(buf, buflen, mem_ctx,
-                                        &cd->data.tun_var_list);
+                                        &cd->data.tun_var_list, &np);
                break;
 
        case CTDB_CONTROL_GET_ALL_TUNABLES:
                ret = ctdb_tunable_list_pull(buf, buflen, mem_ctx,
-                                            &cd->data.tun_list);
+                                            &cd->data.tun_list, &np);
                break;
 
        case CTDB_CONTROL_GET_TCP_TICKLE_LIST:
                ret = ctdb_tickle_list_pull(buf, buflen, mem_ctx,
-                                           &cd->data.tickles);
+                                           &cd->data.tickles, &np);
                break;
 
        case CTDB_CONTROL_DB_ATTACH_PERSISTENT:
@@ -1659,12 +1663,12 @@ static int ctdb_reply_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_UPTIME:
                ret = ctdb_uptime_pull(buf, buflen, mem_ctx,
-                                      &cd->data.uptime);
+                                      &cd->data.uptime, &np);
                break;
 
        case CTDB_CONTROL_TRY_DELETE_RECORDS:
                ctdb_rec_buffer_pull(buf, buflen, mem_ctx,
-                                    &cd->data.recbuf);
+                                    &cd->data.recbuf, &np);
                break;
 
        case CTDB_CONTROL_GET_CAPABILITIES:
@@ -1673,12 +1677,12 @@ static int ctdb_reply_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_GET_PUBLIC_IPS:
                ret = ctdb_public_ip_list_pull(buf, buflen, mem_ctx,
-                                              &cd->data.pubip_list);
+                                              &cd->data.pubip_list, &np);
                break;
 
        case CTDB_CONTROL_GET_NODEMAP:
                ret = ctdb_node_map_pull(buf, buflen, mem_ctx,
-                                        &cd->data.nodemap);
+                                        &cd->data.nodemap, &np);
                break;
 
        case CTDB_CONTROL_GET_RECLOCK_FILE:
@@ -1688,7 +1692,7 @@ static int ctdb_reply_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_GET_BAN_STATE:
                ret = ctdb_ban_state_pull(buf, buflen, mem_ctx,
-                                         &cd->data.ban_state);
+                                         &cd->data.ban_state, &np);
                break;
 
        case CTDB_CONTROL_GET_DB_PRIORITY:
@@ -1728,7 +1732,7 @@ static int ctdb_reply_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_RECEIVE_RECORDS:
                ret = ctdb_rec_buffer_pull(buf, buflen, mem_ctx,
-                                          &cd->data.recbuf);
+                                          &cd->data.recbuf, &np);
                break;
 
        case CTDB_CONTROL_GET_RUNSTATE:
@@ -1737,7 +1741,7 @@ static int ctdb_reply_control_data_pull(uint8_t *buf, size_t buflen,
 
        case CTDB_CONTROL_GET_NODES_FILE:
                ret = ctdb_node_map_pull(buf, buflen, mem_ctx,
-                                        &cd->data.nodemap);
+                                        &cd->data.nodemap, &np);
                break;
 
        case CTDB_CONTROL_DB_PULL: