Page 1 of 3

SendNetworkFile

Posted: Tue Jan 15, 2013 9:41 am
by Anden
sartic wrote:"Removed: SendNetworkFile(), RecieveNetworkFile(), #PB_NetworkEvent_File to avoid possible security hole"

do not like it i have one old program that use this 2 commands.
maybe it is time to rewrite it :(

+999999

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Tue Jan 15, 2013 10:56 am
by American Ninja
How do we send files over a network now??? We have to write our own procedures??? I wouldn't know how. This is a bad decision. BASIC is supposed to be easy. :( :( :(

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Tue Jan 15, 2013 11:09 am
by sec
American Ninja wrote:How do we send files over a network now??? We have to write our own procedures??? I wouldn't know how. This is a bad decision. BASIC is supposed to be easy. :( :( :(
using ReceiveNetworkData/SendNetworkData to safer, here:
http://www.purebasic.fr/english/viewtop ... 13&t=52705

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 7:07 am
by Anden
using ReceiveNetworkData/SendNetworkData to safer, here:
http://www.purebasic.fr/english/viewtop ... 13&t=52705
And that is "better/safer" than the included command set?

This is called the "wishes release" and i didn't wish for removal of an essential command set :-).
Improve it, fix it, make it better but don't remove without proper internal replacement. THAT's a real wish ...

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 7:58 am
by sec
Anden wrote:
using ReceiveNetworkData/SendNetworkData to safer, here:
http://www.purebasic.fr/english/viewtop ... 13&t=52705
And that is "better/safer" than the included command set?

This is called the "wishes release" and i didn't wish for removal of an essential command set :-).
Improve it, fix it, make it better but don't remove without proper internal replacement. THAT's a real wish ...
OK, that is your wish.

Nevermind!

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 9:38 am
by Anden
sec wrote:Nevermind!
Sorry, no can do! :-)

It's essential.
Removing it breaks a lot of code.
Which means replacing it with something similar needs tons of testing.
Don't like that idea, so i definitely do mind and it seems i'm not alone ...

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 11:33 am
by PMV
This will be hard ... so sit down before reading. :)
Basic is not supposed to do everything for you with a single command.
If you want to call yourself programmer, you shouldn't have a big
problem by writing the "sendfile"-command yourself. Of course it is
not that easy, because it is a little bit more complex functionality, but
it was breaking more then helping ...

And btw. if you have got it to work stable, you will have learned a
lot of important topics about network. :wink:

MFG PMV

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 12:34 pm
by Anden
PMV wrote:This will be hard ... so sit down before reading. :)
Basic is not supposed to do everything for you with a single command.
If you want to call yourself programmer, you shouldn't have a big
problem by writing the "sendfile"-command yourself. Of course it is
not that easy, because it is a little bit more complex functionality, but
it was breaking more then helping ...

And btw. if you have got it to work stable, you will have learned a
lot of important topics about network. :wink:

MFG PMV
Regardless if Basic or something else: an IDE has to be stable, stable and then stable. Removing something from the core is NOT stable, nor professional.

This is one of the reasons, why pure (although it had very high potential) is not for professionals ...

And I really like pure, but it's hard to maintain that feeling!

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 12:56 pm
by Fred
We remove things only when it's necessary because, believe it or not, computing is evolving accross the years. Every major languages does it at regular interval, that's a fact. Some even change completely: did you try to compile your VB6 code to new VB.net ?

And, you should talk to Apple about professionalism after having dropped core components, like the whole Carbon API, and still changing removing a lot of commands at every new OS releases. Sounds like they are really amateurish ! ;)

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 2:31 pm
by PMV
:mrgreen:
Talking about professionalism, you think it is more
professional to complain about a removed vulnerable
and not really useable function? :shock:
... or is it just professional waisting time by complaining
instead of beginning to create a bulletproofed function
that will not lead to freeze the whole program when
the network-speed isn't enough to receive it in no time?
:lol:

Don't be to affraid about my words ...
... hard written, but just as your words are. :)

MFG PMV

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 2:53 pm
by Anden
I'm not afraid of words or years. I have lots of both ;-).

Comparing fs with apple is a bold move, but hey, is there even such a thing like enough self confidence?

So that's the pure way: If it's broken dump it on the way, fixing is for lamers only?

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 2:56 pm
by Michael Vogel
I've never needed the FileSend/Receive commands and didn't expect a discussion about them in this thread, but now I'm curious: which kind of security hole is present in the official released PureBasic versions? As I understood it, everything will be safe in the upcoming version 5.10, even if someone writes his own FileSend/Receive procedures - right?

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 3:40 pm
by Fred
Anden wrote:So that's the pure way: If it's broken dump it on the way, fixing is for lamers only?
You should take a look to the bug forums, you will see we are fixing a lot of bugs. This one was not fixable, because it was badly thinked from the start. It was an easy to use command because the server itself checked every recieved packet to see if there was the magic value set by SendNetworkFile(). The problem is if one of your client send the same magic value without sending the file after that, your server will crash. That was a security hole, which couldn't be fixed, so we removed the faulty commands. Also it's easy to replace with buildin commands, so you are not left in the dust (unlike Apple :P).

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 4:36 pm
by PMV
Michael Vogel wrote:I've never needed the FileSend/Receive commands and didn't expect a discussion about them in this thread, but now I'm curious: which kind of security hole is present in the official released PureBasic versions? As I understood it, everything will be safe in the upcoming version 5.10, even if someone writes his own FileSend/Receive procedures - right?
Programming with network-commands is a bit more as just to say ... it will be save.
It would be like saying, no one will crack your programm after you have released it. :wink:
But now there is the possibility that it could be save :lol:

Additional to the security hole there is a second problem, ReceiveFile() will
only return after the complete file is received. Meaning if you have a bad
connection and/ or it is a big file ... your program will freeze and you
are not able to print the current state. No possibility to cancel this
transaction, too. So i really don't know which cases there are, where
such a command is useful. Maybe it is helpful for beginners to have
a really fast "it is done"-experience without any knowledge. But as
fast as you understand what you have done ... you want to get
it better and so you will write your own ReceiveFile() functionality
with a progress-bar, the possibility to cancel it any time and to
have your GUI responsive. :)

MFG PMV

Re: PureBasic 5.10 - Granted wishes release - is out !

Posted: Wed Jan 16, 2013 4:40 pm
by Psychophanta
Did SoundFrequency() be vanished?