xref: /haiku/src/system/boot/loader/file_systems/bfs/Link.cpp (revision 5af32e752606778be5dd7379f319fe43cb3f6b8c)
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