Change rpc_nfs_setattr to rpc_nfs3_setattr
[deb_libnfs.git] / lib / libnfs.c
index 38da45c75732db7c960d43d6e8513d7b6dc7509f..30366cba6ebdb1425ad2504b8e0247728a486f8c 100644 (file)
@@ -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;
 }
@@ -201,6 +201,7 @@ static struct nfs_url *nfs_parse_url(struct nfs_context *nfs, const char *url, i
                return NULL;
        }
 
+       memset(urls, 0x00, sizeof(struct nfs_url));
        urls->server = strdup(url + 6);
        if (urls->server == NULL) {
                nfs_destroy_url(urls);
@@ -287,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);
                }
        }
 
@@ -610,6 +610,7 @@ static void nfs_mount_8_cb(struct rpc_context *rpc, int status, void *command_da
 {
        struct nfs_cb_data *data = private_data;
        struct nfs_context *nfs = data->nfs;
+       struct FSINFO3args args;
 
        assert(rpc->magic == RPC_CONTEXT_MAGIC);
 
@@ -624,7 +625,8 @@ static void nfs_mount_8_cb(struct rpc_context *rpc, int status, void *command_da
                return;
        }
 
-       if (rpc_nfs_fsinfo_async(rpc, nfs_mount_9_cb, &nfs->rootfh, data) != 0) {
+       args.fsroot = nfs->rootfh;
+       if (rpc_nfs3_fsinfo_async(rpc, nfs_mount_9_cb, &args, data) != 0) {
                data->cb(-ENOMEM, nfs, command_data, data->private_data);
                free_nfs_cb_data(data);
                return;
@@ -653,7 +655,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;
@@ -727,7 +729,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;
@@ -755,7 +757,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;
@@ -1788,7 +1790,7 @@ int nfs_ftruncate_async(struct nfs_context *nfs, struct nfsfh *nfsfh, uint64_t l
        args.new_attributes.size.set_it = 1;
        args.new_attributes.size.set_size3_u.size = length;
 
-       if (rpc_nfs_setattr_async(nfs->rpc, nfs_ftruncate_cb, &args, data) != 0) {
+       if (rpc_nfs3_setattr_async(nfs->rpc, nfs_ftruncate_cb, &args, data) != 0) {
                rpc_set_error(nfs->rpc, "RPC error: Failed to send SETATTR call for %s", data->path);
                data->cb(-ENOMEM, nfs, rpc_get_error(nfs->rpc), data->private_data);
                free_nfs_cb_data(data);
@@ -2840,7 +2842,10 @@ static void nfs_statvfs_1_cb(struct rpc_context *rpc, int status, void *command_
 
 static int nfs_statvfs_continue_internal(struct nfs_context *nfs, struct nfs_cb_data *data)
 {
-       if (rpc_nfs_fsstat_async(nfs->rpc, nfs_statvfs_1_cb, &data->fh, data) != 0) {
+       FSSTAT3args args;
+
+       args.fsroot = data->fh;
+       if (rpc_nfs3_fsstat_async(nfs->rpc, nfs_statvfs_1_cb, &args, data) != 0) {
                rpc_set_error(nfs->rpc, "RPC error: Failed to send FSSTAT call for %s", data->path);
                data->cb(-ENOMEM, nfs, rpc_get_error(nfs->rpc), data->private_data);
                free_nfs_cb_data(data);
@@ -2970,7 +2975,7 @@ static int nfs_chmod_continue_internal(struct nfs_context *nfs, struct nfs_cb_da
        args.new_attributes.mode.set_it = 1;
        args.new_attributes.mode.set_mode3_u.mode = data->continue_int;
 
-       if (rpc_nfs_setattr_async(nfs->rpc, nfs_chmod_cb, &args, data) != 0) {
+       if (rpc_nfs3_setattr_async(nfs->rpc, nfs_chmod_cb, &args, data) != 0) {
                rpc_set_error(nfs->rpc, "RPC error: Failed to send SETATTR call for %s", data->path);
                data->cb(-ENOMEM, nfs, rpc_get_error(nfs->rpc), data->private_data);
                free_nfs_cb_data(data);
@@ -3082,7 +3087,7 @@ static int nfs_chown_continue_internal(struct nfs_context *nfs, struct nfs_cb_da
                args.new_attributes.gid.set_gid3_u.gid = chown_data->gid;
        }
 
-       if (rpc_nfs_setattr_async(nfs->rpc, nfs_chown_cb, &args, data) != 0) {
+       if (rpc_nfs3_setattr_async(nfs->rpc, nfs_chown_cb, &args, data) != 0) {
                rpc_set_error(nfs->rpc, "RPC error: Failed to send SETATTR call for %s", data->path);
                data->cb(-ENOMEM, nfs, rpc_get_error(nfs->rpc), data->private_data);
                free_nfs_cb_data(data);
@@ -3218,7 +3223,7 @@ static int nfs_utimes_continue_internal(struct nfs_context *nfs, struct nfs_cb_d
                args.new_attributes.mtime.set_it = SET_TO_SERVER_TIME;
        }
 
-       if (rpc_nfs_setattr_async(nfs->rpc, nfs_utimes_cb, &args, data) != 0) {
+       if (rpc_nfs3_setattr_async(nfs->rpc, nfs_utimes_cb, &args, data) != 0) {
                rpc_set_error(nfs->rpc, "RPC error: Failed to send SETATTR call for %s", data->path);
                data->cb(-ENOMEM, nfs, rpc_get_error(nfs->rpc), data->private_data);
                free_nfs_cb_data(data);
@@ -3917,7 +3922,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;