repositories
/
deb_libnfs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add a very subtle bug in nfs_set_error()
[deb_libnfs.git]
/
lib
/
libnfs-sync.c
diff --git
a/lib/libnfs-sync.c
b/lib/libnfs-sync.c
index cef644475f296f2c55719e64a8fcbbe91332dbb4..29c805c6f4bb135896025add4ca04cf045f4a3ea 100644
(file)
--- a/
lib/libnfs-sync.c
+++ b/
lib/libnfs-sync.c
@@
-1074,7
+1074,6
@@
void mount_getexports_cb(struct rpc_context *mount_context _U_, int status, void
struct sync_cb_data *cb_data = private_data;
exports export = *(exports *)data;
struct sync_cb_data *cb_data = private_data;
exports export = *(exports *)data;
- printf("got exports back\n");
cb_data->is_finished = 1;
cb_data->status = status;
cb_data->return_data = NULL;
cb_data->is_finished = 1;
cb_data->status = status;
cb_data->return_data = NULL;
@@
-1093,19
+1092,23
@@
void mount_getexports_cb(struct rpc_context *mount_context _U_, int status, void
}
}
}
}
-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 sync_cb_data cb_data;
+ struct rpc_context *rpc;
+
cb_data.is_finished = 0;
cb_data.return_data = NULL;
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) {
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);
return NULL;
}
wait_for_reply(rpc, &cb_data);
+ rpc_destroy_context(rpc);
return cb_data.return_data;
}
return cb_data.return_data;
}