From: Ronnie Sahlberg Date: Thu, 26 Dec 2013 19:00:04 +0000 (-0800) Subject: Merge pull request #44 from plieven/master X-Git-Tag: upstream/1.9.6^2~154 X-Git-Url: https://git.piment-noir.org/?a=commitdiff_plain;h=8aab33e33c541a8ac66c031d9b6f7b7f764143ed;hp=22fbc5dad8a1d5a136c37db6299dd40f1878802c;p=deb_libnfs.git Merge pull request #44 from plieven/master fix 3 flaws detected by valgrind and bump version to intermediate version --- diff --git a/examples/nfs-ls.c b/examples/nfs-ls.c index 6efbbd6..e87ffa8 100644 --- a/examples/nfs-ls.c +++ b/examples/nfs-ls.c @@ -100,7 +100,7 @@ void process_dir(struct nfs_context *nfs, char *dir, int level) { ret = nfs_opendir(nfs, dir, &nfsdir); if (ret != 0) { - printf("Failed to opendir(\"%s\")\n", dir, nfs_get_error(nfs)); + printf("Failed to opendir(\"%s\") %s\n", dir, nfs_get_error(nfs)); exit(10); } while((nfsdirent = nfs_readdir(nfs, nfsdir)) != NULL) { diff --git a/examples/nfsclient-sync.c b/examples/nfsclient-sync.c index 9ca58b4..29a4daf 100644 --- a/examples/nfsclient-sync.c +++ b/examples/nfsclient-sync.c @@ -163,7 +163,7 @@ int main(int argc, char *argv[]) ret = nfs_opendir(nfs, "/", &nfsdir); if (ret != 0) { - printf("Failed to opendir(\"/\")\n", nfs_get_error(nfs)); + printf("Failed to opendir(\"/\") %s\n", nfs_get_error(nfs)); exit(10); } while((nfsdirent = nfs_readdir(nfs, nfsdir)) != NULL) { @@ -212,7 +212,7 @@ int main(int argc, char *argv[]) "-w"[!!(st.st_mode & S_IWOTH)], "-x"[!!(st.st_mode & S_IXOTH)] ); - printf(" %2d", st.st_nlink); + printf(" %2d", (int)st.st_nlink); printf(" %5d", st.st_uid); printf(" %5d", st.st_gid); printf(" %12" PRId64, st.st_size); diff --git a/lib/Makefile.am b/lib/Makefile.am index e35a6c0..97beb83 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -18,7 +18,10 @@ libnfs_la_SOURCES = \ pdu.c \ socket.c -libnfs_la_LDFLAGS = -version-info 1:8:0 +SOCURRENT=1 +SOREVISION=8 +SOAGE=0 +libnfs_la_LDFLAGS = -version-info $(SOCURRENT):$(SOREVISION):$(SOAGE) libnfs_la_LIBADD = \ ../mount/libmount.la \ ../nfs/libnfs.la \ diff --git a/lib/libnfs.c b/lib/libnfs.c index 4eb1851..029c9c9 100644 --- a/lib/libnfs.c +++ b/lib/libnfs.c @@ -173,14 +173,14 @@ char *nfs_get_error(struct nfs_context *nfs) return rpc_get_error(nfs->rpc); }; -int rpc_set_context_args(struct rpc_context *rpc, char *arg, char *val) +static int nfs_set_context_args(struct nfs_context *nfs, char *arg, char *val) { if (!strncmp(arg, "tcp-syncnt", 10)) { - rpc_set_tcp_syncnt(rpc, atoi(val)); + rpc_set_tcp_syncnt(nfs_get_rpc_context(nfs), atoi(val)); } else if (!strncmp(arg, "uid", 3)) { - rpc_set_uid(rpc, atoi(val)); + rpc_set_uid(nfs_get_rpc_context(nfs), atoi(val)); } else if (!strncmp(arg, "gid", 3)) { - rpc_set_gid(rpc, atoi(val)); + rpc_set_gid(nfs_get_rpc_context(nfs), atoi(val)); } return 0; } @@ -288,8 +288,7 @@ flags: if (strp2) { *strp2 = 0; strp2++; - rpc_set_context_args(nfs_get_rpc_context(nfs), - strp, strp2); + nfs_set_context_args(nfs, strp, strp2); } } @@ -654,7 +653,7 @@ static void nfs_mount_7_cb(struct rpc_context *rpc, int status, void *command_da return; } - if (rpc_nfs_null_async(rpc, nfs_mount_8_cb, data) != 0) { + if (rpc_nfs3_null_async(rpc, nfs_mount_8_cb, data) != 0) { data->cb(-ENOMEM, nfs, command_data, data->private_data); free_nfs_cb_data(data); return; @@ -728,7 +727,7 @@ static void nfs_mount_5_cb(struct rpc_context *rpc, int status, void *command_da return; } - if (rpc_mount_mnt_async(rpc, nfs_mount_6_cb, nfs->export, data) != 0) { + if (rpc_mount3_mnt_async(rpc, nfs_mount_6_cb, nfs->export, data) != 0) { data->cb(-ENOMEM, nfs, command_data, data->private_data); free_nfs_cb_data(data); return; @@ -756,7 +755,7 @@ static void nfs_mount_4_cb(struct rpc_context *rpc, int status, void *command_da return; } - if (rpc_mount_null_async(rpc, nfs_mount_5_cb, data) != 0) { + if (rpc_mount3_null_async(rpc, nfs_mount_5_cb, data) != 0) { data->cb(-ENOMEM, nfs, command_data, data->private_data); free_nfs_cb_data(data); return; @@ -3918,7 +3917,7 @@ static void mount_export_4_cb(struct rpc_context *rpc, int status, void *command return; } - if (rpc_mount_export_async(rpc, mount_export_5_cb, data) != 0) { + if (rpc_mount3_export_async(rpc, mount_export_5_cb, data) != 0) { data->cb(rpc, -ENOMEM, command_data, data->private_data); free_mount_cb_data(data); return; diff --git a/nfs/nfs.c b/nfs/nfs.c index ab8e4df..a97d40a 100644 --- a/nfs/nfs.c +++ b/nfs/nfs.c @@ -771,7 +771,7 @@ int rpc_nfs_fsinfo_async(struct rpc_context *rpc, rpc_cb cb, struct nfs_fh3 *fh, args.fsroot.data.data_len = fh->data.data_len; args.fsroot.data.data_val = fh->data.data_val; - return rpc_nfs3_fsinfo_async(rpc, cb, fh, private_data); + return rpc_nfs3_fsinfo_async(rpc, cb, &args, private_data); } int rpc_nfs3_readlink_async(struct rpc_context *rpc, rpc_cb cb, READLINK3args *args, void *private_data)