libcryfs/src/cryfs_lib/CryNode.cpp
Sebastian Messmer e561f52dd5 rename
2014-11-12 12:43:49 +01:00

33 lines
690 B
C++

#include "CryNode.h"
#include "CryDevice.h"
#include "CryErrnoException.h"
namespace cryfs {
CryNode::CryNode(CryDevice *device, const bf::path &path)
:_device(device), _path(path) {
}
CryNode::~CryNode() {
}
void CryNode::stat(struct ::stat *result) const {
int retval = ::lstat(base_path().c_str(), result);
CHECK_RETVAL(retval);
}
void CryNode::access(int mask) const {
int retval = ::access(base_path().c_str(), mask);
CHECK_RETVAL(retval);
}
void CryNode::rename(const bf::path &to) {
auto new_base_path = device()->RootDir() / to;
int retval = ::rename(base_path().c_str(), new_base_path.c_str());
CHECK_RETVAL(retval);
_path = to;
}
} /* namespace cryfs */