Gnutella Forums  

Go Back   Gnutella Forums > Gnutella News and Gnutelliums Forums > General Gnutella Development Discussion
Register FAQ The Twelve Commandments Members List Calendar Arcade Find the Best VPN Today's Posts

General Gnutella Development Discussion For general discussion about Gnutella development.


Reply
 
LinkBack Thread Tools Display Modes
  #21 (permalink)  
Old May 19th, 2002
Connoisseur
 
Join Date: August 9th, 2001
Location: Philadelphia, PA, USA
Posts: 358
cultiv8r is flying high
Default

Quote:
cultiv8r, does the cfcontent tag really remove all the extra whitespace? When I used to use cold fusion, that was one thing that really annoyed me. I think when CF5 came out they finally added an option to eliminate the whitespace but I switched to ASP before I ever had a chance to try it.
The problem of leading spaces still exists in CF5, but using the CFCONTENT you can indeed fix that problem now. Just use it like this:

<CFCONTENT type="text/html" reset="YES">

That's why CF version GWebCache needs that tag enabled, otherwise clients that do not expect a leading space will assume there was an error. If the tag is disabled for security issues, there are some other workarounds for that problem but are not elegant. Wish Allaire/Macromedia put in some efforts in fixing that issue, it's been around for quite a while now. Haven't had the chance to try CF MX yet...

-- Mike
Reply With Quote
  #22 (permalink)  
Old May 21st, 2002
Paradog's Avatar
Distinguished Member
 
Join Date: April 5th, 2002
Location: Germoney
Posts: 739
Paradog is flying high
Default

hey tshdos,
here is my own written hostcache:
www.uncertaindesign.com/ffsite/gnutella/lynn.asp
Reply With Quote
  #23 (permalink)  
Old May 22nd, 2002
Gnutella Veteran
 
Join Date: March 24th, 2002
Location: Virginia
Posts: 101
tshdos is flying high
Default

I just looked at your newest version (0.3). Looks good but I have a couple of suggestions for you.


Line 23:
If Request.Querystring("restart") = 1 Then StartASPEngine '//Change The Default Value


You should probably remove this or add a check for security.


Line 40-47:
If Request.Querystring("url") <> "" Then
UpdateHostCache
Status = "OK"
End If
If Request.Querystring("ip") <> "" Then
UpdateHostCache
Status = "OK"
End If


The way it is setup Request.QueryString("url") is checked up to 4 times and ip is checked up to 3 times. I would suggest changing the behavior of 'UpdateHostCache' to return the status and replace the lines above with:
Status = UpdateHostCache() ' Return "" if no update
Response.Write Status


Line 251-270:
Function IsValidIp


Should add a little more checking. The way it is right now if I sent the ip 0.0.0.0 or 255.255.255.255 or 999.999.999.999 it would pass even though it shouldn't.

Need to block these ips also: 10.*.*.*, 255.255.255.255, 172.16.*.* - 172.31.*.*, 0.0.0.0. ip range 192 should be changed to 192.168.*.*


I did this too but unless you can think of a reason, I see no reason to store the ip and port separately.

Also, just curious but why no locks?
Reply With Quote
  #24 (permalink)  
Old May 23rd, 2002
Paradog's Avatar
Distinguished Member
 
Join Date: April 5th, 2002
Location: Germoney
Posts: 739
Paradog is flying high
Default

Hi tshdos,
I said in the readme that you should change the
default values due security measures.

No locks,
yeah... I had some problems with it.
I still have no real idea what locks are good for.
during the stress test me iis froze.
then i killed the locks and it worked.

thanks,
paradog
Reply With Quote
  #25 (permalink)  
Old May 23rd, 2002
Gnutella Veteran
 
Join Date: March 24th, 2002
Location: Virginia
Posts: 101
tshdos is flying high
Default

It looks like the reason it froze up is because you have functions that exit without unlocking the application ie:

Function asdf
Application.Lock

If A ="" Then
' should be an application.unlock here
Exit Function
End If

...

Application.Unlock
End Function


The reason for the locks is to keep the counts correct.
An example would be if two clients hit the following line at the same time.
Application("count") = Application("count") + 1
If you assume Application("count") = 0 before they hit this line two things could happen. Either it will work fine and the count will
be 2 or when both clients get the value of count before adding one they both get the value 0 in which case both clients set the count to 1. Honestly if you are not going to get a lot of hits at the same time you don't really have to worry about this, but it doesn't hurt performance if done correctly. You only need to when updating really.

Quote:
I said in the readme that you should change the
default values due security measures.
I did not notice the line said '// Change default values.
But you should probably set the default to something besides 1 since most of the other functions use a 1. Just some advice though.
Reply With Quote
  #26 (permalink)  
Old May 23rd, 2002
Paradog's Avatar
Distinguished Member
 
Join Date: April 5th, 2002
Location: Germoney
Posts: 739
Paradog is flying high
Default

Thanks,
I really appreciate your help.
Would you like to code Lynn with me together?

If you want you will get access to my ASP Server too.
(Great server: The premium package of www.maximumasp.com)

Do you have ICQ? My number is: 94543674
Reply With Quote
  #27 (permalink)  
Old May 23rd, 2002
Gnutella Veteran
 
Join Date: March 24th, 2002
Location: Virginia
Posts: 101
tshdos is flying high
Default

Sure I will help. I don't need access to your server though. I have a few servers already.

I don't currently have or use ICQ. I might download it later though.
Reply With Quote
  #28 (permalink)  
Old May 23rd, 2002
Paradog's Avatar
Distinguished Member
 
Join Date: April 5th, 2002
Location: Germoney
Posts: 739
Paradog is flying high
Default

Well, thats cool.
I will try to fix that lock problem,
I dont really know how to validate an ip?
What range do IPs have?
Is it always from 1 to 255?

I searched for tshdos on ICQ and I found one are
you Kevin?

Well it is ok if I add your name on that
temporary homepage of Lynn?
Reply With Quote
  #29 (permalink)  
Old May 23rd, 2002
Gnutella Veteran
 
Join Date: March 24th, 2002
Location: Virginia
Posts: 101
tshdos is flying high
Default

Quote:
I dont really know how to validate an ip?
What range do IPs have?
Is it always from 1 to 255?
For the purposes used here, it is probably easier just to compare the left n chars of the ip against the chars of the ip.
Example:

Public Const IP_MASKS = "127|192.168|(...)"

For Each Mask In Split( IP_MASKS, "|" )
If Left( HostIP, Len( Mask ) ) = Mask ) Then
'block ip
...

IPs range from 0 to 255. I am not sure if it is possible to have a 0 as the first number in an ip but it is ok for the others. I also think 255 might be reserved but I will have to check on that.


Quote:
I searched for tshdos on ICQ and I found one are
you Kevin?
Yes that is me. I have not used it in a year or so. I assumed they would delete it after a while.

Quote:
Well it is ok if I add your name on that
temporary homepage of Lynn?
I have no problem with that.
Reply With Quote
  #30 (permalink)  
Old May 23rd, 2002
Paradog's Avatar
Distinguished Member
 
Join Date: April 5th, 2002
Location: Germoney
Posts: 739
Paradog is flying high
Default

well see you then.
could you gimme your email address?
mine is guox@gmx.net
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -7. The time now is 12:06 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
SEO by vBSEO 3.6.0 ©2011, Crawlability, Inc.

Copyright © 2020 Gnutella Forums.
All Rights Reserved.