bug-wget
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-wget] FTP Server for Test Suite


From: Darshit Shah
Subject: Re: [Bug-wget] FTP Server for Test Suite
Date: Tue, 3 Mar 2015 00:37:09 +0530

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
<address@hidden> 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 <address@hidden> 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 <address@hidden> 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 <address@hidden> 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]