[Grub-dev] C# Grubng 0.1 and few questions

Balinny balinny at gmail.com
Mon Jan 28 14:13:25 UTC 2008


seth wrote:
>> The first script that accepted .arc.gz files from users was written
>> very quickly.  All the script did was store these files to disk; later
>> we were going to parse out the content, verify hashes, stuff like
>> that.  So really all a 200 response from PUTing told you was: our
>> disks worked :)
>>     
>
> Since it was hinted at and admitted that we weren't yet checking the  
> hash value at upload I decided it might be a good idea to plug that  
> hole.  Spent the last few hours digging around on our various servers  
> and found jer's scripts that generate the work units.  The script that  
> accepts the completed work units is now checking the hash values and  
> will not accept the file unless they correct.  I was hoping that Jer  
> would write this code as I don't trust my code well enough to properly  
> identify real work vs somebody trying to upload unwanted data, but the  
> other option was to leave open a potential security hole.
>
> So, if your client starts getting 401 errors after posting the file  
> this is because your hash values don't check out. 
Sure it is :P
And all of them turn out to be problems with invalid URLs sent by the 
server (or so i guess,
they're quite related).

Maybe the http response should have a description? It currently only 
gives the numeric answer.
Also, i do a HTTP/1.0 PUT but receive a HTTP/1.1 answer :P

> Make sure that your  
> client is returning the URLs in the arc file in the same order they  
> were given to you in the work unit and that you are not modifying the  
> URLs or hostnames.  Oh, and they have to be uploaded by the same user  
> who downloaded them.
>   
What does it mean?  Anything else that the username on the filename 
shall match the one which
requested the workunit?

Bug report: At Crawler.cs line 77
streamw.Write("filedesc://dummy.arc.gz 0.0.0.0 20071005122244 text/plain 
69\n1 0 grub.org\nURL IP-address Archive-date Content-type 
Archive-length\r\n\r\n");
Those "\r\n\r\n" should be "\n\n" 
http://www.archive.org/web/researcher/ArcFileFormat.php specifies "nl == 
Unix-newline-delimiter"


I also updated the C client, which is much better ;-) (see log)


More information about the Grub-dev mailing list