flat assembler
Message board for the users of flat assembler.
Index
> Windows > Winsock, problem with send (SOLVED) |
Author |
|
coconut 19 Dec 2006, 01:35
maybe tomasz' quetannon example can help; look at examples page
|
|||
19 Dec 2006, 01:35 |
|
kohlrak 19 Dec 2006, 02:39
I guess here would be a good place to ask instead of creating my own thread and clutter up stuff...... Does anyone happen to have a decent tutorial to other features of winsocks rather than just the TCP example uses? Since TCP is supposed to allow only one connection at a time, i'd like to learn a little about UDP as well. I've started to read that winsocks tutorial that comes with fasm, but it seems to not be going anywhere except explaining all the features of winsocks2.
|
|||
19 Dec 2006, 02:39 |
|
coconut 19 Dec 2006, 03:01
|
|||
19 Dec 2006, 03:01 |
|
kohlrak 19 Dec 2006, 03:32
Thank you.
|
|||
19 Dec 2006, 03:32 |
|
AlexMihaj 19 Dec 2006, 06:11
coconut wrote: maybe tomasz' quetannon example can help; look at examples page didn't understand a thing. It looks quite cluttered to my eyes. Anyway I already know how to use the Winsock API. What I need is something that can explain why I only receive zeros when really send something different. Are there any rules about what I may or may not use as a buffer when sending? |
|||
19 Dec 2006, 06:11 |
|
RedGhost 19 Dec 2006, 08:38
Code injection + sockets, oh my
_________________ redghost.ca |
|||
19 Dec 2006, 08:38 |
|
AlexMihaj 19 Dec 2006, 14:54
RedGhost wrote: Code injection + sockets, oh my Yep that's right Got any tips? This is kind of a first try for me. |
|||
19 Dec 2006, 14:54 |
|
RedGhost 19 Dec 2006, 22:00
AlexMihaj wrote:
Since the programme has loaded the .dll you require, enumerate its EAT via ReadProcessMemory( ) to get the proper address of the function(s) you want rather than rely on a constant to ensure compatibility. _________________ redghost.ca |
|||
19 Dec 2006, 22:00 |
|
AlexMihaj 19 Dec 2006, 23:00
RedGhost wrote:
I don't get it. Compatibility with what? I call the functions just like it's done in the rest of the program: Code: call [address_to_an_entry_in_some_table] Why should I use ReadProcessMemory? Can't I just read from memory the "normal" way? After all, my code is part of the app |
|||
19 Dec 2006, 23:00 |
|
kohlrak 19 Dec 2006, 23:05
i don't know much about winsocks, but the DLL is part of the OS, so if it has security things that disable doign things the normal way, you'll have to do it another way.
|
|||
19 Dec 2006, 23:05 |
|
AlexMihaj 21 Dec 2006, 02:13
This is so embarrasing...
When pushing 0 dwords I cleared the EDX reg and pushed it. Everything to save space. However after calling connect I "forgot" to clear it again so instead of 0 I passed god knows what as flags. No wonder it failed. I fixed it by using ESI as my 0 dword instead. Thanks for your attempts to help me Good bye |
|||
21 Dec 2006, 02:13 |
|
RedGhost 21 Dec 2006, 03:24
AlexMihaj wrote: This is so embarrasing... The winsock DLL's are not loaded by every single process like ntdll.dll and kernel32.dll, there is no guarantee the functions reside at the same addresses and the dll's have the same base address in every process. _________________ redghost.ca |
|||
21 Dec 2006, 03:24 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.