History log of /haiku/src/add-ons/kernel/file_systems/nfs/nfs_add_on.c
Revision Date Author Comments
# 63252572 08-Jul-2022 PulkoMandy <pulkomandy@pulkomandy.tk>

nfs: enable -Werror

Change-Id: I529f0e2b363a36984d8779535a2da51a882a988c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5438
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# 0c729c22 18-Apr-2022 Jérôme Duval <jerome.duval@gmail.com>

nfs: fix SMAP violation on write

also rewrite the fix on read for consistency.
should fix #17708

Change-Id: Ia75ed90ba427db7a7d96aff3457fbce61e857533
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5211
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 711e2dc0 01-Dec-2021 Augustin Cavalier <waddlesplash@gmail.com>

Adjust all struct dirent creations (again), this time to use offsetof().

The dirent struct is not packed, so offsetof(dirent, d_name) != sizeof(dirent).
Thus in order not to waste the alignment bytes (which are significant,
on x86_64 at least, sizeof(dirent)==32, but offsetof(...)=26.)

This is also the most portable way to handle things, and should
work just fine in cross-platform code that has a non-zero-sized d_name.


# 9d242fb9 18-Nov-2021 Augustin Cavalier <waddlesplash@gmail.com>

file_systems & Tracker: Do not assume sizeof(dirent) contains 1 byte for the name.

At present, it does, but that is an oddity we have preserved from BeOS
that the next commit is going to remove. (This commit thus wastes 1 byte
without the following one.)

Most changes are pretty straightforward: only a +1 is needed,
and a few removed from sizing calculations. Some filesystems like UDF
originally passed back the length with the \0 included, so they have
been adjusted further. UFS2 had some other sizing problems which are also
corrected in this commit.


# bca2f735 28-Nov-2020 Mitsunori YOSHIDA <marbocub@gmail.com>

nfs: Fix panic occurs when creating a file

Fix an issue #5496 where panic occurs when creating a file with nfs v2
due to the newly generated vnode of the file is not published
and is still busy.

Change-Id: I490a10d4c7de6c87e309a21da575d6cc1a521974
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3436
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# f566cf18 07-Nov-2020 Alexander von Gluck IV <kallisti5@unixzen.com>

file_systems/nfs: Fix SMAP violations

* Try to return relevant errors when we can.
* The style on these needs cleaned up badly.
* I don't want the fix to be lost in style changes.

Change-Id: I8a1661385fbeb8eec86a2c15828b449980050a78
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3386
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# f9b218aa 26-May-2020 Jérôme Duval <jerome.duval@gmail.com>

file_systems: fs_read_link() doesn't use a user buffer

introduced in hrev26728 and hrev54107.

Change-Id: I3e98d54e829bcce559c43a8ee1abe4d889c0a571
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2819
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 7c640ecc 30-Apr-2020 Jérôme Duval <jerome.duval@gmail.com>

nfs: gcc2 build fix


# e1b7c1c7 19-Apr-2020 Kyle Ambroff-Kao <kyle@ambroffkao.com>

storage/SymLink: Fix Be API regression in ReadLink

After this patch, "UnitTester BSymLink" passes.

BSymLink::ReadLink() in BeOS would always return the length of the
link unless an error occurred. Before this patch, Haiku instead seemed
to emulate posix readlink() behavior, returning the number of bytes
copied into the output buffer.

BeOS also did not guarantee that the string written into the output
buffer is NULL terminated if the output buffer cannot contain the
entire link contents, but the Haiku implementation does since it is is
a basic safety issue.

This patch fixes this and updates the Haiku API docs to describe the
behavior explicitly.

Fixing this required changing behavior in bfs_read_link, which
required changes in many more places.

docs/user/storage/SymLink.dox:
src/kits/storage/SymLink.cpp:
* Don't return B_BUFFER_OVERFLOW if the provided buffer is not large
enough to hold the link contents.
* Update documentation to clearly describe behavior.

src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp:
* Change bfs_read_link() to always return the link length. This is
called by common_read_link in the VFS, which is called by
_kern_read_link().

src/add-ons/kernel/file_systems/btrfs/kernel_interface.cpp:
src/add-ons/kernel/file_systems/exfat/kernel_interface.cpp:
src/add-ons/kernel/file_systems/ext2/kernel_interface.cpp:
src/add-ons/kernel/file_systems/iso9660/kernel_interface.cpp:
src/add-ons/kernel/file_systems/netfs/client/netfs.cpp:
src/add-ons/kernel/file_systems/nfs/nfs_add_on.c:
src/add-ons/kernel/file_systems/ramfs/kernel_interface.cpp:
src/add-ons/kernel/file_systems/reiserfs/Iterators.cpp:
src/add-ons/kernel/file_systems/reiserfs/Iterators.h:
src/add-ons/kernel/file_systems/reiserfs/Volume.cpp:
src/add-ons/kernel/file_systems/reiserfs/Volume.h:
* Update the implementation of read_link for these filesystems. Some
of them were incorrect, and some had just copied the posix behavior of
bfs from before this patch.
* Use user_memcpy in ext2_read_link()
* Use user_memcpy in nfs fs_read_link()
* Use user_memcpy in reiserfs StreamReader::_ReadIndirectItem and
StreamReader::_ReadDirectItem
* Remove unused method Volume::ReadObject in reiserfs.

src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingLeafNode.cpp:
src/add-ons/kernel/file_systems/packagefs/package_links/PackageLinkSymlink.cpp:
* Update UnpackingLeafNode::ReadSymlink and
PackageSymLink::ReadSymLink() to set the bufferSize out parameter to
the symlink length. Both of these are called by
packagefs_read_symlink.
* Use user_memcpy

src/add-ons/kernel/file_systems/netfs/client/netfs.cpp:
* netfs seems mostly unimplemented. Added a FIXME note for future
implementers so that they know to implement the correct behavior.

src/system/libroot/posix/unistd/link.c:
* readlinkat() was just wrapping _kern_read_link() because before this
patch it had expected posix behavior. But now it does not, so we
need to return the number of bytes written to the output
buffer.

src/build/libroot/fs.cpp:
* Update _kern_read_link() in the compatibility code to emulate the
Haiku behavior on the host system. This is done by using an
intermediate buffer that is guaranteed to fit the link contents and
returning its length. The intermediate buffer is copied into the
output buffer until there is no more room.

src/tests/kits/storage/SymLinkTest.cpp:
* This patch also resolves some test failures similar to those
resolved in ee8cf35f0 which fixed tests for BNode. The tests were
failing because Haiku's error checking is just better.

BeOS allowed constructing a BSymLink with BSymLink(BDirectory*,
const char*) with the entry name of "". The same is true of the
equivilant SetTo() method. The BSymLink object will appear valid
until you attempt to use it by, for example, calling the ReadLink
method, which will return B_BAD_VALUE.

Haiku does a more appropriate thing and returns B_ENTRY_NOT_FOUND,
for this constructor and the equivilant SetTo(BDirectory*, const
char*) method. This patch fixes these test assertions to match Haiku
behavior.

docs/develop/file_systems/overview.txt:
* Add notes for future filesystem driver implementers to call this
mistake when implementing fs_vnode_ops::read_symlink.

docs/user/drivers/fs_interface.dox:
* Fix documentation for fs_vnode_ops::read_symlink

Change-Id: I8bcb8b2a0c9333059c84ace15844c32d4efeed9d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2502
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>


# d5202040 24-Nov-2018 Augustin Cavalier <waddlesplash@gmail.com>

Fix various instances of -Wsign-compare.


# 509e0b58 28-Sep-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

nfs: remove commented out and #ifdefed out code.

No need for the cruft.


# 9c3eb71b 27-Sep-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

NFS: set block size as reported from server.

Fixes #9787.


# 6f7fc220 07-Mar-2016 Axel Dörfler <axeld@pinc-software.de>

NodeMonitor: Added B_WATCH_CHILDREN flag.

* Added a directory argument for notify_{stat/attribute}_changed().
* This allows to watch only a directory, and get the notifications for
all of its files, not just add/remove entry notifications.


# 5a58ea80 09-May-2013 Jérôme Duval <jerome.duval@gmail.com>

nfs: fixes 64 bit warnings


# eb5f3639 12-Feb-2012 Jerome Duval <jerome.duval@gmail.com>

Fixes some occurrences of 'variable set but not used', disables Werror for problematic items.


# a527d1d5 30-Dec-2011 Philippe Saint-Pierre <stpere@gmail.com>

NFS: various checks added if malloc succeeded. (also coding style fix).


# 85819ae1 11-Dec-2011 Michael Lotz <mmlr@mlotz.ch>

Remove extra free() that lead to a double free. CID 10546.


# d63f4274 18-Oct-2010 Jérôme Duval <korli@users.berlios.de>

added a file system call preallocate() as described in #6285, currently unused


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39006 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d9590f1c 13-Apr-2010 François Revol <revol@free.fr>

Remove duplicate assignment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36241 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1ac83b4f 24-Feb-2010 Rene Gollent <anevilyak@gmail.com>

Patch by mjw: Fix browsing subdirectories in NFS.
Partially fixes ticket #4661. Thanks!



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35612 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 95ba9505 01-May-2009 François Revol <revol@free.fr>

Fix missing NULLs corresponding to io() and cancel_io() hooks which made all other calls shifted... This should fix #3500 and #3832.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30546 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3cf43c26 25-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed the fs_vnode_ops::create_dir() parameter for returning the ID of the
newly created dir. The VFS really doesn't need it and for some file systems
it might not be easy to get by. Several file systems (e.g. rootfs and fat)
were ignoring the parameter anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29719 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 49004dc7 19-Feb-2009 Michael Lotz <mmlr@mlotz.ch>

Remove the additional fs_vnode_ops arugment from get_vnode() again as it's not
needed at all when used as intended. Thanks Ingo for the explanation on how this
is intended to work. Adjusted the overlay fs accordingly and updated/reverted
the changes to the other filesystems.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29250 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 00405f22 09-Feb-2009 Michael Lotz <mmlr@mlotz.ch>

* Add an additional argument to get_vnode() that gets the fs_vnode_ops of the
node. That is needed for a layered filesystem to be able to construct a full
fs_vnode out of a volume/inode pair.
* Adapt places where get_vnode is used. Sadly this is a C API and we can't just
use a default NULL for that argument.
* Introduce a flag B_VNODE_WANTS_OVERLAY_SUB_NODE that can be returned in the
flags field of a fs get_vnode call. A filesystem can use this flag to indicate
that it doesn't support the full set of fs features (attributes, write support)
and it'd like to have unsupported calls emulated by an overlay sub node.
* Add a perliminary overlay filesystem that emulates file attributes using files
on a filesystem where attributes aren't supported. It does currently only
support reading attributes/attribute directories though. All other calls are
just passed through to the super filesystem.
* Adjust places where a HAS_FS_CALL() is taken as a guarantee that the operation
is supported. For the overlay filesystem we may later return a B_UNSUPPORTED,
so make sure that in that case proper fallback options are taken.
* Make the iso9660 filesystem request overlay sub nodes. This can be fine tuned
later to only trigger where there are features on a CD that need emulation
at all.

If you happened to know the attribute file format and location you could build
an iso with read-only attribute support now. Note that this won't be enough to
get a bootable iso-only image as the query and index support is yet missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29177 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 057f999d 13-Oct-2008 Axel Dörfler <axeld@pinc-software.de>

* Added a flag B_DISK_SYSTEM_SUPPORTS_WRITING to determine whether or not a
file system can write to files before mounting.
* Set the flag for all file systems that actually can write.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28055 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b30e56f2 18-May-2008 Axel Dörfler <axeld@pinc-software.de>

Applied patch by Marco Minutoli that adds the short name to nfs, and userlandfs.
Please note, though, that both of these file systems currently don't compile and
are not part of the image.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25561 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0039ad59 21-Apr-2008 Ryan Leavengood <leavengood@gmail.com>

Committing patch from Alex Roman, with a few small changes. This updates the NFS file system to the latest file system interface. Untested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25093 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6f1dac37 21-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

* Fixed lots of warnings (there are still a lot left).
* Got rid of the PARAMS_AS_STRING stuff (it's always defined, anyway).
* Will remove BeOS support, too, in the future.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22644 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 76a8ec23 22-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added disk system flags for whether a partition name and partition
content name are supported.
* Added file_system_module_info::flags (analogously to
partition_module_info::flags) which indicate which disk device
features the FS supports.
* Replaced the
file_system_module_info/partition_module_info::supports_*()
hooks by a get_supported_operations() hook and for partitioning
systems additionally a get_supported_child_operations() hook.
* Updated file and partitioning systems accordingly.
* Updated fs_shell accordingly.
* Updated the DDM accordingly. The syscall interface remains unchanged,
though.
* _user_supports_initializing_partition() also checks whether the parent
partitioning system is content now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22043 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 245aecda 21-Jun-2007 Axel Dörfler <axeld@pinc-software.de>

Got rid of vnode_id and mount_id, replaced with ino_t and dev_t.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21485 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 55b36803 01-May-2007 François Revol <revol@free.fr>

don't provide get_vnode_name as we don't know how to do it. just set it to NULL and let the VFS handle it.
This should fix oddities in Tracker.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20961 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 12d359b8 04-Mar-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Removed write_link from the FS module interface. Adjusted all FS
add-ons accordingly and removed the syscall.
* Removed send_notification().
* Reimplemented notify_listener(). It used the unimplemented
send_notification(). Now it has a chance to work. Note that
notify_listener() is obsolete. I would already have removed it, if
there weren't lots of FS implementations still using it (Hint!).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20329 a95241bf-73f2-0310-859d-f6bbb57e9c96


# caa76e0d 26-Jan-2007 François Revol <revol@free.fr>

Fix some warnings (unused args...). Only bad protos left.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19967 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 448d2a89 25-Jan-2007 François Revol <revol@free.fr>

Make sure strings are 0-terminated. Fix some settings values.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19952 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 34b5fabe 21-Jan-2007 François Revol <revol@free.fr>

Fixed parsing of param string. It now starts mounting, but blocks waiting for a reply. Is udp working already ??


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19892 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 943a1668 21-Jan-2007 François Revol <revol@free.fr>

hack around to get a string from params for now.
Cleaned up error handling in fs_mount.
Don't have time to test but it should now work under Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19890 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4b05e555 20-Jan-2007 François Revol <revol@free.fr>

NFS now builds for Haiku. Still needs fixes to be able to mount.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19879 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f4783a9f 29-Sep-2006 François Revol <revol@free.fr>

The fixed version of the NFS client


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18983 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5a58ea80cf356b39eb19355a42e378ce9074cd6c 09-May-2013 Jérôme Duval <jerome.duval@gmail.com>

nfs: fixes 64 bit warnings


# eb5f36397841abfc740031fde56ca5e4dee9fdd3 12-Feb-2012 Jerome Duval <jerome.duval@gmail.com>

Fixes some occurrences of 'variable set but not used', disables Werror for problematic items.


# a527d1d5b8e98b089ca8cd57258acb5fae17617b 30-Dec-2011 Philippe Saint-Pierre <stpere@gmail.com>

NFS: various checks added if malloc succeeded. (also coding style fix).


# 85819ae108148af68bb45b5adb165d188cf6e37d 11-Dec-2011 Michael Lotz <mmlr@mlotz.ch>

Remove extra free() that lead to a double free. CID 10546.


# d63f4274b665d32065f24a7a01a025578c8a43c9 18-Oct-2010 Jérôme Duval <korli@users.berlios.de>

added a file system call preallocate() as described in #6285, currently unused


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39006 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d9590f1cc219d77eeea20b985bec968dfcb13873 13-Apr-2010 François Revol <revol@free.fr>

Remove duplicate assignment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36241 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1ac83b4fbc5bc4a46158993ce2a3b23e8170d231 24-Feb-2010 Rene Gollent <anevilyak@gmail.com>

Patch by mjw: Fix browsing subdirectories in NFS.
Partially fixes ticket #4661. Thanks!



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35612 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 95ba95051152aa38bff9d4247891235db310d87d 01-May-2009 François Revol <revol@free.fr>

Fix missing NULLs corresponding to io() and cancel_io() hooks which made all other calls shifted... This should fix #3500 and #3832.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30546 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3cf43c26516b695e35b7433196a530f7541c4ca8 25-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed the fs_vnode_ops::create_dir() parameter for returning the ID of the
newly created dir. The VFS really doesn't need it and for some file systems
it might not be easy to get by. Several file systems (e.g. rootfs and fat)
were ignoring the parameter anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29719 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 49004dc730f842ea3c162b56dee63696c51d17c7 19-Feb-2009 Michael Lotz <mmlr@mlotz.ch>

Remove the additional fs_vnode_ops arugment from get_vnode() again as it's not
needed at all when used as intended. Thanks Ingo for the explanation on how this
is intended to work. Adjusted the overlay fs accordingly and updated/reverted
the changes to the other filesystems.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29250 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 00405f2286fd370a0bd264d0bbac0cfa120e7646 09-Feb-2009 Michael Lotz <mmlr@mlotz.ch>

* Add an additional argument to get_vnode() that gets the fs_vnode_ops of the
node. That is needed for a layered filesystem to be able to construct a full
fs_vnode out of a volume/inode pair.
* Adapt places where get_vnode is used. Sadly this is a C API and we can't just
use a default NULL for that argument.
* Introduce a flag B_VNODE_WANTS_OVERLAY_SUB_NODE that can be returned in the
flags field of a fs get_vnode call. A filesystem can use this flag to indicate
that it doesn't support the full set of fs features (attributes, write support)
and it'd like to have unsupported calls emulated by an overlay sub node.
* Add a perliminary overlay filesystem that emulates file attributes using files
on a filesystem where attributes aren't supported. It does currently only
support reading attributes/attribute directories though. All other calls are
just passed through to the super filesystem.
* Adjust places where a HAS_FS_CALL() is taken as a guarantee that the operation
is supported. For the overlay filesystem we may later return a B_UNSUPPORTED,
so make sure that in that case proper fallback options are taken.
* Make the iso9660 filesystem request overlay sub nodes. This can be fine tuned
later to only trigger where there are features on a CD that need emulation
at all.

If you happened to know the attribute file format and location you could build
an iso with read-only attribute support now. Note that this won't be enough to
get a bootable iso-only image as the query and index support is yet missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29177 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 057f999da63f5d006591b41a284c0cd50ccbb042 13-Oct-2008 Axel Dörfler <axeld@pinc-software.de>

* Added a flag B_DISK_SYSTEM_SUPPORTS_WRITING to determine whether or not a
file system can write to files before mounting.
* Set the flag for all file systems that actually can write.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28055 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b30e56f287f958a8a77401884e7b03f4295834cf 18-May-2008 Axel Dörfler <axeld@pinc-software.de>

Applied patch by Marco Minutoli that adds the short name to nfs, and userlandfs.
Please note, though, that both of these file systems currently don't compile and
are not part of the image.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25561 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0039ad59fa70d95b220d5e0a99ac2c0c519eb82e 21-Apr-2008 Ryan Leavengood <leavengood@gmail.com>

Committing patch from Alex Roman, with a few small changes. This updates the NFS file system to the latest file system interface. Untested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25093 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6f1dac37f989967e49152a8d2a33ed47371f9a65 21-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

* Fixed lots of warnings (there are still a lot left).
* Got rid of the PARAMS_AS_STRING stuff (it's always defined, anyway).
* Will remove BeOS support, too, in the future.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22644 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 76a8ec23db391176bac91f33c5f1fc6e8e41866c 22-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added disk system flags for whether a partition name and partition
content name are supported.
* Added file_system_module_info::flags (analogously to
partition_module_info::flags) which indicate which disk device
features the FS supports.
* Replaced the
file_system_module_info/partition_module_info::supports_*()
hooks by a get_supported_operations() hook and for partitioning
systems additionally a get_supported_child_operations() hook.
* Updated file and partitioning systems accordingly.
* Updated fs_shell accordingly.
* Updated the DDM accordingly. The syscall interface remains unchanged,
though.
* _user_supports_initializing_partition() also checks whether the parent
partitioning system is content now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22043 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 245aecda8ac43fc2c0c0bac6a7e4016efa9b71e1 21-Jun-2007 Axel Dörfler <axeld@pinc-software.de>

Got rid of vnode_id and mount_id, replaced with ino_t and dev_t.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21485 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 55b368036c31432e131b32e9798618407d880da9 01-May-2007 François Revol <revol@free.fr>

don't provide get_vnode_name as we don't know how to do it. just set it to NULL and let the VFS handle it.
This should fix oddities in Tracker.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20961 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 12d359b85a22246a568569b09b6587534e98aacc 04-Mar-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Removed write_link from the FS module interface. Adjusted all FS
add-ons accordingly and removed the syscall.
* Removed send_notification().
* Reimplemented notify_listener(). It used the unimplemented
send_notification(). Now it has a chance to work. Note that
notify_listener() is obsolete. I would already have removed it, if
there weren't lots of FS implementations still using it (Hint!).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20329 a95241bf-73f2-0310-859d-f6bbb57e9c96


# caa76e0da19432dc4f5da86a53e720f9be296256 26-Jan-2007 François Revol <revol@free.fr>

Fix some warnings (unused args...). Only bad protos left.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19967 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 448d2a891acadb82e4276f8a60bdb553afb0c1f4 25-Jan-2007 François Revol <revol@free.fr>

Make sure strings are 0-terminated. Fix some settings values.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19952 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 34b5fabe886d550037bab7532c9074d78b1ebdf7 21-Jan-2007 François Revol <revol@free.fr>

Fixed parsing of param string. It now starts mounting, but blocks waiting for a reply. Is udp working already ??


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19892 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 943a16689c2d4d45fd9050859841fce9725c8091 21-Jan-2007 François Revol <revol@free.fr>

hack around to get a string from params for now.
Cleaned up error handling in fs_mount.
Don't have time to test but it should now work under Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19890 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4b05e555149cb28746c0e627fd74e9b3194889f9 20-Jan-2007 François Revol <revol@free.fr>

NFS now builds for Haiku. Still needs fixes to be able to mount.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19879 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f4783a9fb9129819d76ecd61907238780345ea9c 29-Sep-2006 François Revol <revol@free.fr>

The fixed version of the NFS client


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18983 a95241bf-73f2-0310-859d-f6bbb57e9c96