Recognize files/dirs correctly
This commit is contained in:
parent
629eacb4b7
commit
70a1e72428
13
CryNode.cpp
13
CryNode.cpp
@ -3,6 +3,8 @@
|
|||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
|
|
||||||
#include "CryDevice.h"
|
#include "CryDevice.h"
|
||||||
|
#include "CryDir.h"
|
||||||
|
#include "CryFile.h"
|
||||||
#include "messmer/fspp/fuse/FuseErrnoException.h"
|
#include "messmer/fspp/fuse/FuseErrnoException.h"
|
||||||
|
|
||||||
namespace bf = boost::filesystem;
|
namespace bf = boost::filesystem;
|
||||||
@ -20,7 +22,16 @@ CryNode::~CryNode() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void CryNode::stat(struct ::stat *result) const {
|
void CryNode::stat(struct ::stat *result) const {
|
||||||
result->st_mode = S_IFDIR | S_IRUSR | S_IXUSR | S_IWUSR;
|
if (dynamic_cast<const CryDir*>(this) != nullptr) {
|
||||||
|
//printf("Stat: dir\n");
|
||||||
|
result->st_mode = S_IFDIR;
|
||||||
|
} else if (dynamic_cast<const CryFile*>(this) != nullptr) {
|
||||||
|
//printf("Stat: file\n");
|
||||||
|
result->st_mode = S_IFREG;
|
||||||
|
} else {
|
||||||
|
throw FuseErrnoException(EIO);
|
||||||
|
}
|
||||||
|
result->st_mode |= S_IRUSR | S_IXUSR | S_IWUSR;
|
||||||
return;
|
return;
|
||||||
throw FuseErrnoException(ENOTSUP);
|
throw FuseErrnoException(ENOTSUP);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user