extern int name_unpublish_up(char *name) { Buf buf = NULL, resp_buf = NULL; uint32_t size, tmp_32; int rc; buf = init_buf(1024); pack16((uint16_t)TREE_CMD_NAME_UNPUBLISH, buf); packstr(name, buf); size = get_buf_offset(buf); rc = tree_msg_to_srun_with_resp(size, get_buf_data(buf), &resp_buf); free_buf(buf); if (rc == SLURM_SUCCESS) { safe_unpack32(&tmp_32, resp_buf); rc = (int) tmp_32; } unpack_error: if (resp_buf) free_buf(resp_buf); return rc; }
extern int spawn_req_send_to_srun(spawn_req_t *req, spawn_resp_t **resp_ptr) { Buf req_buf = NULL, resp_buf = NULL; int rc; uint16_t cmd; req_buf = init_buf(2048); cmd = TREE_CMD_SPAWN; pack16(cmd, req_buf); spawn_req_pack(req, req_buf); rc = tree_msg_to_srun_with_resp(get_buf_offset(req_buf), get_buf_data(req_buf), &resp_buf); free_buf(req_buf); if (rc == SLURM_SUCCESS) { rc = spawn_resp_unpack(resp_ptr, resp_buf); free_buf(resp_buf); } return rc; }
extern char * name_lookup_up(char *name) { Buf buf = NULL, resp_buf = NULL; uint32_t size; char * port = NULL; int rc; buf = init_buf(1024); pack16((uint16_t)TREE_CMD_NAME_LOOKUP, buf); packstr(name, buf); size = get_buf_offset(buf); rc = tree_msg_to_srun_with_resp(size, get_buf_data(buf), &resp_buf); free_buf(buf); if (rc == SLURM_SUCCESS) safe_unpackstr_xmalloc(&port, (uint32_t *)&size, resp_buf); unpack_error: if (resp_buf) free_buf(resp_buf); return port; }