|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Mar 2006
Città: Napoli
Messaggi: 170
|
[C Linux]
potete per favore spiegarmi queste istruzioni?
memcpy (packet, &ctrl_head, sizeof (CTRL_header)); memcpy (packet+sizeof(CTRL_header), buffer,buffer_length); dove packet è un puntatore a char così definito packet= (char*)malloc(MAX_PKT_SIZE); ctrl_head è una variabile di tipo CTLR_header CTRL_header è una struct di 4 campi buffer è un puntatore a una zona di memoria dove leggere e scrivere dati buffer_lenght è la sua lunghezza. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
|
Vengono concatenati il contenuto di ctrl_head e dei primi buffer_length byte puntati da buffer; il risultato viene posto nella regione di memoria puntata da packet.
Visti i nomi, direi che sta concatenando un header e il suo payload per creare un pacchetto completo.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12 |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:50.


















