• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Understanding the the file system dynamics (HFS, AFP)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Understanding the the file system dynamics (HFS, AFP)


  • Subject: Re: Understanding the the file system dynamics (HFS, AFP)
  • From: Alex deVries <email@hidden>
  • Date: Sat, 19 Apr 2014 10:04:57 -0400


Many years ago, I wrote afpfs-ng, which is an AFP client in userspace. It was written for Linux and uses the FUSE interface. I have had it working on FUSE for Mac OS X and BSD but not in the current tree.

I haven't maintained this in about 3 years, but I know people are still using it. But it might be useful for hacking and playing around.

Really, though, I can't see why you'd want an AFP client on Mac OS since the one that's their really is the reference.

- A

On Apr 18, 2014, at 10:17 PM, Phil Jordan <email@hidden> wrote:

On Sat, Apr 19, 2014 at 12:49 AM, Thomas Tempelmann <email@hidden> wrote:
On Fri, Apr 18, 2014 at 5:32 PM, Matt Bauer <email@hidden> wrote:
Would a filtering filesystem meet your needs?

I want to intercepts a few file system calls, inspecting and optionally modifying their parameter blocks, ideally only for network client FS such as AFP and CIFS. I already learned from various sources that the VFS in OSX is not stackable, i.e. I cannot simply insert a filter for my purposes, though I wonder why one couldn’t simply write a VFS stub that then forwards all calls to the actual VFS driver.

There isn't (to my knowledge) a public kernel API for issuing arbitrary VFS operations, which makes this difficult. Of course, each vnode has a v_op table, whose functions you could call directly (or you could in theory swap out a vnode's table altogether), but there's no getter or setter for that, and the vnode struct itself is private and thus highly ABI-unstable.

I think there is a union file system for FUSE, which presumably works around this by going via userspace and issuing vfs operations from there.

phil

--
http://philjordan.eu/ - Phil Jordan, software development contractor
Do not post admin requests to the list. They will be ignored. Filesystem-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
References: 
 >Understanding the the file system dynamics (HFS, AFP) (From: Thomas Tempelmann <email@hidden>)
 >Re: Understanding the the file system dynamics (HFS, AFP) (From: "Quinn \"The Eskimo!\"" <email@hidden>)
 >Re: Understanding the the file system dynamics (HFS, AFP) (From: "Quinn \"The Eskimo!\"" <email@hidden>)
 >Re: Understanding the the file system dynamics (HFS, AFP) (From: Thomas Tempelmann <email@hidden>)
 >Re: Understanding the the file system dynamics (HFS, AFP) (From: Matt Bauer <email@hidden>)
 >Re: Understanding the the file system dynamics (HFS, AFP) (From: Thomas Tempelmann <email@hidden>)
 >Re: Understanding the the file system dynamics (HFS, AFP) (From: Phil Jordan <email@hidden>)

  • Prev by Date: Why are MFSLives and EmptyFS hidden in the “legacy” downloads section?
  • Next by Date: Documentation on OS X network filesystem mDNS expectations and OpenDirectory integration
  • Previous by thread: Re: Understanding the the file system dynamics (HFS, AFP)
  • Next by thread: Why are MFSLives and EmptyFS hidden in the “legacy” downloads section?
  • Index(es):
    • Date
    • Thread