Lines Matching refs:node

71 notify_if_stat_changed(Volume *volume, Node *node)
73 if (volume && node && node->IsModified()) {
74 uint32 statFields = node->MarkUnmodified();
75 notify_stat_changed(volume->GetID(), -1, node->GetID(), statFields);
203 Node *node = NULL;
208 if (volume->GetVNode(*_vnodeID, &node) != B_OK)
212 if (parent && volume->GetVNode(parent->GetID(), &node) == B_OK)
213 *_vnodeID = node->GetID();
220 error = dir->FindAndGetNode(entryName, &node);
223 *_vnodeID = node->GetID();
234 ramfs_get_vnode(fs_volume* _volume, ino_t vnid, fs_vnode* node, int* _type,
238 FUNCTION(("node: %lld\n", vnid));
245 node->private_node = foundNode;
262 //FUNCTION(("node: %lld\n", ((Node*)_node)->GetID()));
272 FUNCTION(("node: %lld\n", ((Node*)_node)->GetID()));
274 Node* node = (Node*)_node->private_node;
278 volume->NodeRemoved(node);
279 delete node;
291 ramfs_ioctl(fs_volume* _volume, fs_vnode* /*node*/, void* /*cookie*/,
341 ramfs_set_flags(fs_volume* /*fs*/, fs_vnode* /*node*/, void* /*cookie*/,
352 ramfs_fsync(fs_volume* /*fs*/, fs_vnode* /*node*/)
366 Node* node = (Node*)_node->private_node;
371 if (!node->IsSymLink())
374 if (SymLink *symLink = dynamic_cast<SymLink*>(node)) {
385 node->GetID());
421 Node *node = NULL;
424 if (dir->FindNode(name, &node) == B_OK) {
431 node = symLink;
433 node->SetMode(mode);
434 node->SetUID(geteuid());
435 node->SetGID(getegid());
436 // put the node
437 volume->PutVNode(node->GetID());
441 NodeMTimeUpdater mTimeUpdater2(node);
445 node->GetID());
461 Node* node = (Node*)_node->private_node;
484 error = dir->CreateEntry(node, name);
490 node->GetID());
510 // check node
520 Node *node = NULL;
522 if (dir->FindAndGetNode(name, &node, &entry) == B_OK) {
523 nodeID = node->GetID();
525 if (node->IsDirectory()
526 && !dynamic_cast<Directory*>(node)->IsEmpty()) {
530 volume->PutVNode(node);
573 Node *node = NULL;
577 if (oldDir->FindAndGetNode(oldName, &node, &entry) != B_OK) {
586 if (parent == node) {
611 // sure the node isn't deleted when we remove the entry
612 error = node->AddReference();
619 error = clobberEntry->Link(node);
621 error = newDir->CreateEntry(node, newName);
634 newDir->CreateEntry(node, oldName);
637 node->RemoveReference();
645 volume->PutVNode(node);
651 newDir->GetID(), newName, node->GetID());
666 Node* node = (Node*)_node->private_node;
670 error = node->CheckPermissions(mode);
683 Node* node = (Node*)_node->private_node;
685 FUNCTION(("node: %lld\n", node->GetID()));
689 st->st_ino = node->GetID();
690 st->st_mode = node->GetMode();
691 st->st_nlink = node->GetRefCount();
692 st->st_uid = node->GetUID();
693 st->st_gid = node->GetGID();
694 st->st_size = node->GetSize();
697 st->st_atime = node->GetATime();
698 st->st_mtime = node->GetMTime();
699 st->st_ctime = node->GetCTime();
700 st->st_crtime = node->GetCrTime();
713 Node* node = (Node*)_node->private_node;
718 NodeMTimeUpdater mTimeUpdater(node);
720 error = node->CheckPermissions(ACCESS_W);
723 error = node->SetSize(st->st_size);
727 node->SetMode((node->GetMode() & ~S_IUMSK)
732 node->SetUID(st->st_uid);
735 node->SetGID(st->st_gid);
738 node->SetMTime(st->st_mtime);
741 node->SetCrTime(st->st_crtime);
745 notify_if_stat_changed(volume, node);
816 Node *node = NULL;
819 if (dir->FindNode(name, &node) == B_OK) {
825 } else if (!node->IsFile()) {
828 } else if ((error = node->CheckPermissions(ACCESS_W)) == B_OK) {
831 error = node->SetSize(0);
835 *vnid = node->GetID();
836 error = volume->GetVNode(node->GetID(), &node);
845 node = file;
846 *vnid = node->GetID();
848 node->SetMode(mode);
849 node->SetUID(geteuid());
850 node->SetGID(getegid());
854 if (vfs_lookup_vnode(_volume->id, node->GetID(), &vnode) == B_OK) {
865 NodeMTimeUpdater mTimeUpdater2(node);
881 Node* node = (Node*)_node->private_node;
883 FUNCTION(("node: %lld\n", node->GetID()));
887 if (node->IsDirectory() && (openMode & O_RWMASK) != O_RDONLY)
889 if (error == B_OK && (openMode & O_DIRECTORY) != 0 && !node->IsDirectory())
898 error = node->CheckPermissions(accessMode);
908 error = node->SetSize(0);
909 NodeMTimeUpdater mTimeUpdater(node);
927 Node* node = (Node*)_node->private_node;
929 FUNCTION(("node: %lld\n", node->GetID()));
933 notify_if_stat_changed(volume, node);
959 Node* node = (Node*)_node->private_node;
962 // FUNCTION(("((%lu, %lu), %lld, %p, %lu)\n", node->GetDirID(),
963 // node->GetObjectID(), pos, buffer, *bufferSize));
967 if (!node->IsFile())
975 if (File *file = dynamic_cast<File*>(node))
979 node->GetID());
996 Node* node = (Node*)_node->private_node;
999 // FUNCTION(("((%lu, %lu), %lld, %p, %lu)\n", node->GetDirID(),
1000 // node->GetObjectID(), pos, buffer, *bufferSize));
1004 if (!node->IsFile())
1014 pos = node->GetSize();
1016 if (File *file = dynamic_cast<File*>(node)) {
1021 node->GetID());
1028 notify_if_stat_changed(volume, node);
1029 NodeMTimeUpdater mTimeUpdater(node);
1149 Node *node = NULL;
1152 if (dir->FindNode(name, &node) == B_OK) {
1159 node = newDir;
1161 node->SetMode(mode);
1162 node->SetUID(geteuid());
1163 node->SetGID(getegid());
1164 // put the node
1165 volume->PutVNode(node->GetID());
1169 NodeMTimeUpdater mTimeUpdater2(node);
1173 node->GetID());
1193 // check node
1203 Node *node = NULL;
1205 if (dir->FindAndGetNode(name, &node, &entry) == B_OK) {
1206 nodeID = node->GetID();
1207 if (!node->IsDirectory()) {
1209 } else if (!dynamic_cast<Directory*>(node)->IsEmpty()) {
1213 volume->PutVNode(node);
1232 Node* node = (Node*)_node->private_node;
1234 FUNCTION(("dir: (%Lu)\n", node->GetID()));
1236 status_t error = (node->IsDirectory() ? B_OK : B_NOT_A_DIRECTORY);
1239 dir = dynamic_cast<Directory*>(node);
1242 node->GetID());
1295 DARG(Node *node = (Node*)_node; )
1297 FUNCTION(("dir: (%Lu)\n", node->GetID()));
1357 Node* node = (Node*)_node->private_node;
1362 error = node->CheckPermissions(ACCESS_R);
1366 iterator = new(nothrow) AttributeIterator(node);
1433 buffer->d_ino = -1; // attributes don't have a node ID
1515 Node* node = (Node*)_node->private_node;
1520 node->FindAttribute(name, &attribute);
1531 // check required permissions against node permissions
1532 status_t error = node->CheckPermissions(accessMode);
1549 error = node->CreateAttribute(name, &attribute);
1555 notify_attribute_changed(volume->GetID(), -1, node->GetID(), name,
1564 notify_attribute_changed(volume->GetID(), -1, node->GetID(), name,
1567 NodeMTimeUpdater mTimeUpdater(node);
1586 Node* node = (Node*)_node->private_node;
1588 FUNCTION(("node: %lld\n", node->GetID()));
1595 error = node->FindAttribute(name, &attribute);
1604 error = node->CheckPermissions(accessMode);
1622 notify_attribute_changed(volume->GetID(), -1, node->GetID(),
1626 NodeMTimeUpdater mTimeUpdater(node);
1645 Node* node = (Node*)_node->private_node;
1647 FUNCTION(("node: %lld\n", node->GetID()));
1652 notify_if_stat_changed(volume, node);
1677 Node* node = (Node*)_node->private_node;
1686 error = node->FindAttribute(cookie->GetName(), &attribute);
1709 Node* node = (Node*)_node->private_node;
1717 // FUNCTION(("failed: node: %s, attribute: %s\n",
1718 // node->GetName(), name));
1723 NodeMTimeUpdater mTimeUpdater(node);
1728 error = node->FindAttribute(cookie->GetName(), &attribute);
1741 notify_attribute_changed(volume->GetID(), -1, node->GetID(), name,
1758 Node* node = (Node*)_node->private_node;
1766 error = node->FindAttribute(cookie->GetName(), &attribute);
1800 Node* node = (Node*)_node->private_node;
1804 NodeMTimeUpdater mTimeUpdater(node);
1807 error = node->CheckPermissions(ACCESS_W);
1812 error = node->FindAttribute(name, &attribute);
1816 error = node->DeleteAttribute(attribute);
1820 notify_attribute_changed(volume->GetID(), -1, node->GetID(), name,
1907 buffer->d_ino = -1; // indices don't have a node ID