No issues. You got lucky, caught me while I was online. Yes, RFC 959 is a step in the right direction, but you must remember that it is a complex, convoluted protocol and it will take some time to really understand it.
Take your time with it. One good proposal is better than 2 average proposals. On Tue, Mar 3, 2015 at 12:10 AM, Smriti Gambhir <[email protected]> wrote: > Hi Darshit! > Thanks again for replying! Glad to have such responsive mentors. I will get > on the FTP Test Suite ASAP. I also started reading the FTP RFC 959 to get > ideas. Am I on the right track? Once I am done with going through the Test > Suite,I would like to pick up Secure Cookie Management. > Best, > Smriti > > On Mon, Mar 2, 2015 at 11:06 PM, Darshit Shah <[email protected]> wrote: >> >> For the FTP Server specifically, you get to start from a (nearly) blank >> slate! There's no prior code base, so you get to pick and choose how you >> want it done. >> >> As for the "Improve Wget's Security" project, it's three separate >> sub-projects and you need to tackle each of them separately. >> 1. HSTS: You'd first need to understand HSTS and see what it requires. >> Then identify at what stage of downloading a web page should this concept >> kick in? That should help you narrow down your search. The wiki page on >> "Navigating the source" [1] should help you too. >> 2. Secure cookie management is entirely based on cookie handling and the >> location you need to work on should hence be pretty obvious :) >> 3. The FTP source is available in ftp.[ch] while the SSL/TSL source is in >> both, gnutls.[ch] and openssl.[ch], depending on the library you're >> working on. You'll probably have to create a new file, ftps.[ch], to >> implement this. >> >> >> Regarding the cleaning up, I really don't have any pointers of the top of >> my head. If while going through the code, you think something should have >> been implemented in a different way to make it cleaner / more efficient, do >> it. If at any time you're stuck / need to understand "why" it was done in a >> particular fashion, ask on the mailing lists and someone who understand that >> code the best will help you out. >> >> >> [1]: http://wget.addictivecode.org/NavigatingTheSource >> >> On 03/02, Smriti Gambhir wrote: >>> >>> Thanks for elaborating! I wanted to go through the code relevant to this >>> project as well as the one to improve wget's security,which I am guessing >>> is the entire code base. I would like to get started with cleaning up the >>> HTTP code. Let me know what has to be done! :D >>> Regards >>> >>> On Mon, Mar 2, 2015 at 10:31 PM, Darshit Shah <[email protected]> wrote: >>> >>>> Hi Smriti, >>>> >>>> >>>> What code base are you interested in understanding? The source for Wget >>>> itself is in the src/ directory and is relatively straight forward. >>>> Well, >>>> as straight forward as it can remain after 20+ years of hacking and >>>> patching. >>>> >>>> The test suite in testenv/ is the new Python based test suite. The >>>> Test-*.py files in the directory are the various test cases, the server/ >>>> directory contains the code for the actual servers while the conf/ >>>> directory contains the various rules for customizing the server >>>> programmatically through the tests. >>>> >>>> >>>> >>>> On 03/02, Smriti Gambhir wrote: >>>> >>>>> Thank you for replying Darshit! :) >>>>> I started going through the code yesterday. I would appreciate any tips >>>>> on >>>>> how to approach the code base. I will go through the test suite code >>>>> base >>>>> in the testenv/ directly asap. >>>>> I understand that the project is essentially in C and will try to keep >>>>> it >>>>> simple. >>>>> Regards >>>>> >>>>> >>>>> On Mon, Mar 2, 2015 at 9:57 PM, Darshit Shah <[email protected]> wrote: >>>>> >>>>> Hi Smriti, >>>>>> >>>>>> >>>>>> The FTP Server for Test Suite is a relatively open ended idea. Have >>>>>> you >>>>>> gone through the existing test suite code base in the testenv/ >>>>>> directory? >>>>>> With this project, we're really looking for students to come up with >>>>>> their >>>>>> own ideas on how to implement it. The HTTP server was implemented in >>>>>> Python >>>>>> 3. But you're free to choose your language / library of choice, so >>>>>> long >>>>>> as >>>>>> you can ensure that the actual tests will follow the existing format. >>>>>> If you're trying to get familiar with the existing test suite, there's >>>>>> two >>>>>> possible opportunities: >>>>>> >>>>>> 1. Port some tests over the old test suite in the tests/ directory. >>>>>> 2. Clean up the HTTP Server code >>>>>> >>>>>> Even though most of the features have been implemented in the Python 3 >>>>>> server, the tests haven't been ported. Any help in doing so will be >>>>>> greatly >>>>>> appreciated. If you need any help / find a missing feature please let >>>>>> us >>>>>> know and we'll help you through it. >>>>>> >>>>>> While I'm not aware of any bugs directly in the HTTP server, (except >>>>>> for >>>>>> multiple simultaneous servers, which would be insanely awesome if you >>>>>> could >>>>>> fix it), you could try to clean up the code a little. It will help you >>>>>> in >>>>>> understanding the flow of the code and how it works a lot better. One >>>>>> thing >>>>>> you must remember when programming in Python for GNU Wget is that, >>>>>> we're >>>>>> not essentially a Python project. The code you write will not be read >>>>>> / >>>>>> maintained by people who are Python programmers, but rather by C >>>>>> Programmers. Hence, while it is good to be Pythonic when possible, it >>>>>> is >>>>>> also important to remember to keep the code as simple as possible for >>>>>> a C >>>>>> programmer to understand intuitively. >>>>>> >>>>>> >>>>>> Do let us know if you have any more queries. >>>>>> >>>>>> >>>>>> On 03/02, Smriti Gambhir wrote: >>>>>> >>>>>> Hi! >>>>>>> >>>>>>> >>>>>>> I would like to contribute to FTP Server for Test Suite idea. I have >>>>>>> used >>>>>>> Python and C extensively for my projects. I also have significant >>>>>>> experience in Socket programming. I was going through the code base. >>>>>>> I >>>>>>> wanted to solve a few easy to fix bugs to get myself familiar with >>>>>>> the >>>>>>> code. Can anyone recommend such bugs or any other method as such to >>>>>>> understand the code base? >>>>>>> >>>>>>> Thanks >>>>>>> >>>>>>> -- >>>>>>> Smriti Gambhir >>>>>>> Department of Computer Science >>>>>>> BITS Pilani K.K. Birla Goa Campus >>>>>>> >>>>>>> --- end quoted text --- >>>>>> >>>>>> >>>>>> -- >>>>>> Thanking You, >>>>>> Darshit Shah >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Smriti Gambhir >>>>> Department of Computer Science >>>>> BITS Pilani K.K. Birla Goa Campus >>>>> >>>> --- end quoted text --- >>>> >>>> -- >>>> Thanking You, >>>> Darshit Shah >>>> >>> >>> >>> >>> -- >>> Smriti Gambhir >>> Department of Computer Science >>> BITS Pilani K.K. Birla Goa Campus >> >> --- end quoted text --- >> >> -- >> Thanking You, >> Darshit Shah > > > > > -- > Smriti Gambhir > Department of Computer Science > BITS Pilani K.K. Birla Goa Campus -- Thanking You, Darshit Shah
