Thanks for your answer!(:
You are right, sorry!
This is the code: https://play.golang.org/p/zEZ2HIUNffs

About the lines, wow! Yes, you got them! ahah
About the errors, I tried to convert ( cmd.Stdout ) io.Write to bytes/ 
strings, but.. I have then entered into a loop of errors...



Il giorno martedì 6 luglio 2021 alle 21:32:10 UTC+2 Brian Candler ha 
scritto:

> You haven't shown which lines 75, 76 and 83 correspond to.  It's easier if 
> you put the whole code on play.golang.org, and we'll be able to point to 
> the error.  
>
> But I'm guessing it's this:
>  data := cmd.Stdout
> ...
> n := int(math.Min(float64(rand.Intn(len(data))), float64(len(data))))  << 
> line 75?
> d := data[i : i+n]  << line 76?
> ...
>         if i >= len(data) {   << line 83?
>
> If I'm right, the compiler is saying: cmd.Stdout (which you assigned to 
> 'data') is of type io.Writer.  It's not a string; you can't take len(...) 
> of an io.Writer, nor can you slice it.
>
> On Tuesday, 6 July 2021 at 16:03:26 UTC+1 LetGo wrote:
>
>> I think I made some progress.... I think. Is it right what I'm doing ?
>>
>> ................
>> cmd.Stdin = conn
>> // cmd.Stdout = conn
>> //         data := []byte(cmd.Stdout)
>>         data := cmd.Stdout
>>         var i int
>>     for {
>>     n := int(math.Min(float64(rand.Intn(len(data))), float64(len(data))))
>>     d := data[i : i+n]
>>     i += n
>>     time.Sleep(400 * time.Millisecond)
>>     d = conn
>>
>>         if i >= len(data) {
>>     break
>>         }
>>             }
>> cmd.Stderr = conn
>> cmd.Run()
>> ............................
>>
>> But when I try to build I get these errors:
>>
>> conn.go:75:46: invalid argument data (type io.Writer) for len
>> conn.go:76:16: cannot slice data (type io.Writer)
>> conn.go:83:22: invalid argument data (type io.Writer) for len
>>
>>
>>
>>
>>
>>
>>
>>
>> Il giorno martedì 29 giugno 2021 alle 19:37:04 UTC+2 LetGo ha scritto:
>>
>>> Thank you guys for all your answers and suggestions!
>>> I really appreciate!
>>> Sorry about the screenshots, it was the only way to make the packets 
>>> "human readable"
>>> How could you code that kind of implementation based on your knowledge 
>>> and skill?
>>> I have noone of these in golang ahah as I said, im too newbie to do all 
>>> this alone!
>>> Also not working examples ( if they throw an error I don't care, based 
>>> on my code are fine!
>>> These examples could rapresent a great start from me!(:
>>>
>>>
>>> Il giorno martedì 29 giugno 2021 alle 19:00:06 UTC+2 
>>> jesper.lou...@gmail.com ha scritto:
>>>
>>>> On Tue, Jun 29, 2021 at 5:24 PM LetGo <non3...@gmail.com> wrote:
>>>>
>>>>> Thanks for the answer! (:
>>>>> In python it was straightforward to implement and it works like a 
>>>>> charm. It sends small packets with delay between each other without even 
>>>>> care if it is UDP or TCP:
>>>>>
>>>>>
>>>> Beware! This is an assumption that will break at some point in time. 
>>>> Currently the delay and the OS makes things straightforward for you. But 
>>>> TCP doesn't behave like you expect, and you are very likely to run into 
>>>> trouble if the machine, the network, or the system starts taking 
>>>> additional 
>>>> load.
>>>>
>>>> You need to frame the data. A good way is to use 4 bytes as a size 
>>>> (unsigned 32 bit integer), followed by a payload of that size. You can 
>>>> then 
>>>> avoid this becoming an uncontrolled explosion in your software at a later 
>>>> date. You can also close connections early if too large messages get sent, 
>>>> etc.
>>>>
>>>>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/1b994fb3-5cda-46d3-a44c-218dc4cdf647n%40googlegroups.com.

Reply via email to