off_t offset;
struct statvfs svfs;
exports export, tmp;
- struct rpc_context *mount_context;
printf("exports on server %s\n", SERVER);
- mount_context = rpc_init_context();
- export = mount_getexports(mount_context, SERVER);
+ export = mount_getexports(SERVER);
tmp = export;
while (tmp != NULL) {
printf("Export: %s\n", tmp->ex_dir);
tmp = tmp->ex_next;
}
mount_free_export_list(export);
- rpc_destroy_context(mount_context);
-
nfs = nfs_init_context();
*
* returned data must be freed by calling mount_free_export_list(exportnode);
*/
-struct exportnode *mount_getexports(struct rpc_context *rpc, const char *server);
+struct exportnode *mount_getexports(const char *server);
void mount_free_export_list(struct exportnode *exports);
}
}
-struct exportnode *mount_getexports(struct rpc_context *rpc, const char *server)
+struct exportnode *mount_getexports(const char *server)
{
struct sync_cb_data cb_data;
+ struct rpc_context *rpc;
+
cb_data.is_finished = 0;
cb_data.return_data = NULL;
+ rpc = rpc_init_context();
if (mount_getexports_async(rpc, server, mount_getexports_cb, &cb_data) != 0) {
- rpc_set_error(rpc, "mount_getexports_async failed");
+ rpc_destroy_context(rpc);
return NULL;
}
wait_for_reply(rpc, &cb_data);
+ rpc_destroy_context(rpc);
return cb_data.return_data;
}