1*5af32e75SAxel Dörfler /* 2*5af32e75SAxel Dörfler ** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. 3*5af32e75SAxel Dörfler ** Distributed under the terms of the OpenBeOS License. 4*5af32e75SAxel Dörfler */ 5*5af32e75SAxel Dörfler 6*5af32e75SAxel Dörfler 7*5af32e75SAxel Dörfler #include "Link.h" 8*5af32e75SAxel Dörfler 9*5af32e75SAxel Dörfler #include <util/kernel_cpp.h> 10*5af32e75SAxel Dörfler 11*5af32e75SAxel Dörfler 12*5af32e75SAxel Dörfler namespace BFS { 13*5af32e75SAxel Dörfler 14*5af32e75SAxel Dörfler Link::Link(Volume &volume, block_run run) 15*5af32e75SAxel Dörfler : File(volume, run) 16*5af32e75SAxel Dörfler { 17*5af32e75SAxel Dörfler } 18*5af32e75SAxel Dörfler 19*5af32e75SAxel Dörfler 20*5af32e75SAxel Dörfler Link::Link(Volume &volume, off_t id) 21*5af32e75SAxel Dörfler : File(volume, id) 22*5af32e75SAxel Dörfler { 23*5af32e75SAxel Dörfler } 24*5af32e75SAxel Dörfler 25*5af32e75SAxel Dörfler 26*5af32e75SAxel Dörfler Link::Link(const Stream &stream) 27*5af32e75SAxel Dörfler : File(stream) 28*5af32e75SAxel Dörfler { 29*5af32e75SAxel Dörfler } 30*5af32e75SAxel Dörfler 31*5af32e75SAxel Dörfler 32*5af32e75SAxel Dörfler status_t 33*5af32e75SAxel Dörfler Link::InitCheck() 34*5af32e75SAxel Dörfler { 35*5af32e75SAxel Dörfler return fStream.InitCheck(); 36*5af32e75SAxel Dörfler } 37*5af32e75SAxel Dörfler 38*5af32e75SAxel Dörfler 39*5af32e75SAxel Dörfler status_t 40*5af32e75SAxel Dörfler Link::ReadLink(char *buffer, size_t bufferSize) 41*5af32e75SAxel Dörfler { 42*5af32e75SAxel Dörfler return fStream.ReadLink(buffer, bufferSize); 43*5af32e75SAxel Dörfler } 44*5af32e75SAxel Dörfler 45*5af32e75SAxel Dörfler 46*5af32e75SAxel Dörfler ssize_t 47*5af32e75SAxel Dörfler Link::ReadAt(void *cookie, off_t pos, void *buffer, size_t bufferSize) 48*5af32e75SAxel Dörfler { 49*5af32e75SAxel Dörfler return B_NOT_ALLOWED; 50*5af32e75SAxel Dörfler } 51*5af32e75SAxel Dörfler 52*5af32e75SAxel Dörfler 53*5af32e75SAxel Dörfler ssize_t 54*5af32e75SAxel Dörfler Link::WriteAt(void *cookie, off_t pos, const void *buffer, size_t bufferSize) 55*5af32e75SAxel Dörfler { 56*5af32e75SAxel Dörfler return B_NOT_ALLOWED; 57*5af32e75SAxel Dörfler } 58*5af32e75SAxel Dörfler 59*5af32e75SAxel Dörfler 60*5af32e75SAxel Dörfler int32 61*5af32e75SAxel Dörfler Link::Type() const 62*5af32e75SAxel Dörfler { 63*5af32e75SAxel Dörfler return S_IFLNK; 64*5af32e75SAxel Dörfler } 65*5af32e75SAxel Dörfler 66*5af32e75SAxel Dörfler } // namespace BFS 67