[haiku-development] GSOC: IMAP as a Local File System

  • From: anil kag <anilkagak2@xxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Sun, 1 Apr 2012 04:17:01 +0530

Hi all,
I have some issues to deal with...

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??

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

Other related posts: