Does anyone have any more suggestions on how I can achieve this? I've since
tried walking through the directory lists with list_for_each() but the
kernel crashes each time it is called.

---------- Forwarded message ----------
From: Sam Carter <[email protected]>
Date: 2009/11/22
Subject: Re: Accessing dentry structs and lists in the VFS
To: SandeepKsinha <[email protected]>


Hi Sandeep,

I'm trying to intercept the list returned by getdents64() to perform some
filtering operations before returning the list. This is for an academic
project more for the benefit of proof-of-concept. I'm interested in getting
the list of full paths, at the moment I can get hold of only the name of the
dentry the getdents function is called on.

Thanks, Sam

2009/11/22 SandeepKsinha <[email protected]>

Hi Sam,
>
>
> On Sun, Nov 22, 2009 at 7:19 PM, Sam Carter <[email protected]>
> wrote:
> > Hi folks,
> >
> > If I have a file object in the kernel, and want to get hold of the files
> in
> > that dentry Object, how do I approach it?
> >
>
> I think walking a directory inside the kernel is not suggested.
> If you share what you are trying to achieve, it would better to help
> with your problem.
>
> > At the moment I'm trying something like,
> >
> > printk("%s\n", file->f_dentry->d_subdirs->next.d_name);
> >
>
> Remember, you can always have a negative dentry. How are you getting
> the file object.
>
> > However I'm getting an error based on not understanding the structures
> > correctly. Am I correct in thinking that if 'file' is a directory,
> d_subdirs
> > will hold the first file in that directory? How can I get hold of the
> names?
> >
> > Thanks, Sam
> >
>
>
>
> --
> Regards,
> Sandeep.
>
>
>
>
>
>
> “To learn is to change. Education is a process that changes the learner.”
>

Reply via email to