*/
#define _GNU_SOURCE
+
+#if defined(WIN32)
+#include <winsock2.h>
+#define DllExport
+#define O_SYNC 0
+typedef int uid_t;
+typedef int gid_t;
+#else
+#include <strings.h>
+#include <sys/statvfs.h>
+#include <utime.h>
+#include <unistd.h>
+#endif
+
#include <stdio.h>
#include <stdarg.h>
#include <stdlib.h>
#include <string.h>
-#include <strings.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
-#include <sys/statvfs.h>
-#include <utime.h>
-#include <unistd.h>
#include <fcntl.h>
#include "libnfs.h"
#include "libnfs-raw.h"
}
path = data->path;
- str = index(path, '/');
+ str = strchr(path, '/');
if (str != NULL) {
*str = 0;
data->path = str+1;
st.st_gid = res->GETATTR3res_u.resok.obj_attributes.gid;
st.st_rdev = 0;
st.st_size = res->GETATTR3res_u.resok.obj_attributes.size;
+#if !defined(WIN32)
st.st_blksize = 4096;
st.st_blocks = res->GETATTR3res_u.resok.obj_attributes.size / 4096;
+#endif
st.st_atime = res->GETATTR3res_u.resok.obj_attributes.atime.seconds;
st.st_mtime = res->GETATTR3res_u.resok.obj_attributes.mtime.seconds;
st.st_ctime = res->GETATTR3res_u.resok.obj_attributes.ctime.seconds;
return -1;
}
- ptr = rindex(new_path, '/');
+ ptr = strrchr(new_path, '/');
if (ptr == NULL) {
rpc_set_error(nfs->rpc, "Invalid path %s", path);
return -1;
return -1;
}
- ptr = rindex(new_path, '/');
+ ptr = strrchr(new_path, '/');
if (ptr == NULL) {
rpc_set_error(nfs->rpc, "Invalid path %s", path);
return -1;
return -1;
}
- ptr = rindex(new_path, '/');
+ ptr = strrchr(new_path, '/');
if (ptr == NULL) {
rpc_set_error(nfs->rpc, "Invalid path %s", path);
return -1;
return -1;
}
- ptr = rindex(new_path, '/');
+ ptr = strrchr(new_path, '/');
if (ptr == NULL) {
rpc_set_error(nfs->rpc, "Invalid path %s", path);
return -1;
READDIR3res *res;
struct nfs_cb_data *data = private_data;
struct nfs_context *nfs = data->nfs;
- struct nfsdir *nfsdir = data->continue_data;;
+ struct nfsdir *nfsdir = data->continue_data;
struct entry3 *entry;
uint64_t cookie;
return -1;
}
- ptr = rindex(symlink_data->newpathparent, '/');
+ ptr = strrchr(symlink_data->newpathparent, '/');
if (ptr == NULL) {
rpc_set_error(nfs->rpc, "Invalid path %s", oldpath);
free_nfs_symlink_data(symlink_data);
free_nfs_rename_data(rename_data);
return -1;
}
- ptr = rindex(rename_data->oldpath, '/');
+ ptr = strrchr(rename_data->oldpath, '/');
if (ptr == NULL) {
rpc_set_error(nfs->rpc, "Invalid path %s", oldpath);
free_nfs_rename_data(rename_data);
free_nfs_rename_data(rename_data);
return -1;
}
- ptr = rindex(rename_data->newpath, '/');
+ ptr = strrchr(rename_data->newpath, '/');
if (ptr == NULL) {
rpc_set_error(nfs->rpc, "Invalid path %s", newpath);
free_nfs_rename_data(rename_data);
free_nfs_link_data(link_data);
return -1;
}
- ptr = rindex(link_data->newpath, '/');
+ ptr = strrchr(link_data->newpath, '/');
if (ptr == NULL) {
rpc_set_error(nfs->rpc, "Invalid path %s", newpath);
free_nfs_link_data(link_data);
char *str = NULL;
va_start(ap, error_string);
- vasprintf(&str, error_string, ap);
- if (nfs->rpc->error_string != NULL) {
- free(nfs->rpc->error_string);
- }
- nfs->rpc->error_string = str;
+ // vasprintf(&str, error_string, ap);
+ // if (nfs->rpc->error_string != NULL) {
+ // free(nfs->rpc->error_string);
+ //}
+ //nfs->rpc->error_string = str;
va_end(ap);
}