[haiku-development] Re: GSOC: IMAP as a Local File System
- From: "Ingo Weinhold" <ingo_weinhold@xxxxxx>
- To: haiku-development@xxxxxxxxxxxxx
- Date: Mon, 02 Apr 2012 19:27:27 +0200
Ingo Weinhold wrote:
Mmh, not sure which shortcut combo I managed to press, it definitely sent the
mail prematurely. :-/
> anil kag wrote:
> > in order to contribute to the Haiku project (which may be mandatory for the
> > GSOC'12), i have decided to go for the TODO tasks...
> > 1) About the TODO tasks:
> > I am working over two tasks...
> > a) // TODO: The parameters are in driver settings format now. in "
> > http://haiku.it.su.se:8180/source/xref/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/kernel_interface.cpp
> > "
> > i want to know what exactly is required... parameters in the mount function
> > are in driver settings format now, are they?? If they are, then into what
> > format should they be converted??
>
> As you can see, the parse_parameters() function expects the parameters to
> consist of the client FS name separated by whitespace from the following
> (optional) client FS parameters. This is not driver settings format [1]
> (note: Haiku extends the original format). That the driver settings format is
> used for mount parameters is merely a convention we introduced. BeOS didn't
> and ATM Haiku doesn't care: the string supplied to the mount command is just
> passed through to the FS module. Eventually we might change that e.g. to
> allow passing parameters that the VFS interprets (currently there's only a
> flags array that can be used for that purpose in a limited way). That,
> however, requires all file systems to respect the format.
>
> ATM solving that TODO in the userlandfs kernel module would add a bit of
> inconvenience, though. Since you'd have to mount via something like:
>
> mount -t userlandfs -p "userlandfsClient=<clientFS> ..." ...
>
> instead of just
> > b) // TODO: this does not take read-only volumes into account! in "
> > http://haiku.it.su.se:8180/source/xref/src/add-ons/kernel/file_systems/ntfs/fs_func.c
> > "
> > here it says this does not take read-only volumes into account.... i mean
> > what does it want to convey...
> > call sequence is something like this...
> > fs_mount(...,...flags,.....) --> utils_mount_volume(...,flags,...) -->
> > ntfs_mount(..,flags) --> ntfs_device_mount(..,flags) -->
> > ntfs_volume_startup(..,flags)
> > in the last call it does something like
> > --> if (flags & MS_RDONLY)
> > NVolSetReadOnly(vol) ; ... setting the device read only... am i right?? can
> > anyone tell me what is required in this todo??
> >
> > about the submission of the proposal
> > Mounting the an IMAP as a local file system
> > 2) well let me describe the tasks need to be done... (if i'm missing
> > something please point me out... so that i can decide on "what next??")
> > Basic requirements for the problem- -->
> >
> > a) A module which looks into the task of connection between IMAP server
> > and the local machine, which can be divided into
> > i) login into the mail server
> > ii) fetching the mails from there
> > iii) arranging them in proper order so as to keep the directory
> > structure...
> > iv) updating the changes made in the local machine so as to reflect in the
> > server....
> > --> will also have to look into multiple access to the same account from
> > different places(is it possible??)
> > --> these seems like the tasks of Mail client of haiku :) , do they??
> >
> > b) a kernel interface as described in the "
> > http://api.haiku-os.org/fs_modules.html" for implementing the userland
> > implementation of the file system --> this will provide the necessary hooks
> > for accessing & using the file system. (main module)
> >
> > --> things which are in my mind currently but i'm not upto the mark to give
> > a solution
> > a) about the local caching in order to increase the performance....
> > b) as i need to access an IMAP account i was thinking of using the haiku's
> > home grown code for working with IMAP, and as pointed by someone on IRC..
> > that it has some problems (some mails are lost while fetching..) ---> can i
> > use it or use something else(any other library for IMAP access). I can look
> > into fixing haiku's code for IMAP access.
> >
> > that's all i have in mind for "IMAP as local file system". I might have
> > sound a bit promising in accomplishing the tasks or i have written much to
> > implement(i'm a newbie to Kernel & networks world... but not to Software
> > Engineering World...)
> > please do have a look on it.. :)
> > i'm not able to decide the timeline... or rather i would say ... within 1-2
> > days i'll be able to give a rough estimate of how i'll be achieving this
> > target.
> >
> > 3) one more problem is there
> > i am not having a configured git account (i have downloaded the source code
> > from the http//github.com/haiku/haiku.git repository), is there any way of
> > submitting patches to the TODO tasks(if i'm able to crack them)??
> >
> > 4) as it will not always good to mail to the mailing list, is there any
> > person who can help me out in this Idea?? i would be very thankful for the
> > help ..
> >
> > and last
> > 5) I will be trying to submit the proposal till Monday evening(as before
> > that code submission is required), will that be fine??
> >
> > thanks for reading it...
> > --- Anil Kag (IRC Nick --> kag_anil)
> > B.Tech, 2nd year
> > IIT Guwahati, India
>
>
>
> [1]
> http://www.haiku-os.org/legacy-docs/bebook/DeviceDrivers_DriverSettingsAPI.html
Other related posts: