Ĺadny brzuch
1.
Każdy pakiet zawiera na początku dwa stałe pola:
struct gg_header {
int type;/* typ pakietu */
int length;/* długość reszty pakietu */
};
Co ma zawierać wartość type?
Dlaczego pisze "długość resztypakietu". Z tego co wiem liczymy cały, czyli, np. 18+strlen(costam). I dlaczego pakietu a nie struktury.
2. Wysyłanie wiadomości:
Co należy wpisać jako int seq (numer sekwencyjny)?
oraz send(s,(char*) &mag,18+strlen(mag.message),1);
1 wartość to socket, 2 ???, 3 wielkosc structury, 4???.
P.S. odbieranie wiadomości
czy oby wartość type oznaczała typ pakietu i przy
char buf[2048]; char *p; recv(soscket,buf,2048,0); int pakiet; p = (char*)&pakiet; for(int c=0;c<4;c++) p[c] = buf[c]; switch (a co tutaj mam wpisać?){ case tutaj pisze tym pakietu, np. jakiej odbieranie, nie wiem jaka to liczba i gdzie to pisze: a tutaj recv odbieram to break; }
jak w kodzie
Użytkownik dgf45 edytował ten post 22 kwiecień 2006, 15:25
Wiesz co, może daj z tym sobie spokój :P
oraz
KOD
send(s,(char*) &mag,18+strlen(mag.message),1);
1 wartość to socket, 2 ???, 3 wielkosc structury, 4???.
Use Friendly Google.
type....hmmm...co by to mogło znaczyć....to chyba oczywiste że typ struktury (pakietu).
Dlaczego pisze "długość resztypakietu". Z tego co wiem liczymy cały, czyli, np. 18+strlen(costam). I dlaczego pakietu a nie struktury.
jakie 18 i jakie strlen ?
gg_header zajmuje 8bajtów (1 int to 4 bajty).
a wartość lenght to długość reszty czyli z pominięciem gg_header.
czyli całe dane mają 8 + sizeof(gg_sendmsg); // for example.
jako seq możesz se wpisać nawet Rozmiar buta. Nie ma to znaczenia (przynajmniej u mnie nie miało).
a do swictha spisujesz typ pakietu (wartość int).
//edit ile jeszcze topiców założysz o tym samym ?
Użytkownik Antrykot edytował ten post 22 kwiecień 2006, 16:05
O, jakoś nie zwróciłem uwagi na ten temat. Możliwe, że go wziąłem za wersję, którą już widziałem. ;)
Miałem użyć sformułowania "mam wrażenie", ale właściwie oczywiste jest, że autor tematów raczej nie rozumie samej idei przesyłania danych w postaci pakietów z nagłówkiem i chyba po prostu czeka, aż mu ktoś napisze gotowy kod.
Swoją drogą to dlaczego aż tak się na to uparłeś? Jeśli chcesz wysyłać reklamy i tym podobne rzeczy to nie musisz do tego własnego klienta pisać. ;)
Jeśli powód jest inny to tym bardziej ciekawi mnie dlaczego tak wytrwale pytasz mniej więcej o to samo. ;)
Użytkownik Chmurek edytował ten post 23 kwiecień 2006, 02:09
@Chmurek - Ja bym stawiał na to, że rośnie nam kolejny 'hakier' i właśnie pracuje nad swoim nowym dzieckiem - trojan under GG :P
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Każdy pakiet zawiera na początku dwa stałe pola:
struct gg_header {
int type;/* typ pakietu */
int length;/* długość reszty pakietu */
};
Co ma zawierać wartość type?
Dlaczego pisze "długość resztypakietu". Z tego co wiem liczymy cały, czyli, np. 18+strlen(costam). I dlaczego pakietu a nie struktury.
2. Wysyłanie wiadomości:
Co należy wpisać jako int seq (numer sekwencyjny)?
oraz send(s,(char*) &mag,18+strlen(mag.message),1);
1 wartość to socket, 2 ???, 3 wielkosc structury, 4???.
P.S. odbieranie wiadomości
czy oby wartość type oznaczała typ pakietu i przy
char buf[2048]; char *p; recv(soscket,buf,2048,0); int pakiet; p = (char*)&pakiet; for(int c=0;c<4;c++) p[c] = buf[c]; switch (a co tutaj mam wpisać?){ case tutaj pisze tym pakietu, np. jakiej odbieranie, nie wiem jaka to liczba i gdzie to pisze: a tutaj recv odbieram to break; }
jak w kodzie
Użytkownik dgf45 edytował ten post 22 kwiecień 2006, 15:25
Wiesz co, może daj z tym sobie spokój :P
oraz
KOD
send(s,(char*) &mag,18+strlen(mag.message),1);
1 wartość to socket, 2 ???, 3 wielkosc structury, 4???.
Use Friendly Google.
type....hmmm...co by to mogło znaczyć....to chyba oczywiste że typ struktury (pakietu).
Dlaczego pisze "długość resztypakietu". Z tego co wiem liczymy cały, czyli, np. 18+strlen(costam). I dlaczego pakietu a nie struktury.
jakie 18 i jakie strlen ?
gg_header zajmuje 8bajtów (1 int to 4 bajty).
a wartość lenght to długość reszty czyli z pominięciem gg_header.
czyli całe dane mają 8 + sizeof(gg_sendmsg); // for example.
jako seq możesz se wpisać nawet Rozmiar buta. Nie ma to znaczenia (przynajmniej u mnie nie miało).
a do swictha spisujesz typ pakietu (wartość int).
//edit ile jeszcze topiców założysz o tym samym ?
Użytkownik Antrykot edytował ten post 22 kwiecień 2006, 16:05
O, jakoś nie zwróciłem uwagi na ten temat. Możliwe, że go wziąłem za wersję, którą już widziałem. ;)
Miałem użyć sformułowania "mam wrażenie", ale właściwie oczywiste jest, że autor tematów raczej nie rozumie samej idei przesyłania danych w postaci pakietów z nagłówkiem i chyba po prostu czeka, aż mu ktoś napisze gotowy kod.
Swoją drogą to dlaczego aż tak się na to uparłeś? Jeśli chcesz wysyłać reklamy i tym podobne rzeczy to nie musisz do tego własnego klienta pisać. ;)
Jeśli powód jest inny to tym bardziej ciekawi mnie dlaczego tak wytrwale pytasz mniej więcej o to samo. ;)
Użytkownik Chmurek edytował ten post 23 kwiecień 2006, 02:09
@Chmurek - Ja bym stawiał na to, że rośnie nam kolejny 'hakier' i właśnie pracuje nad swoim nowym dzieckiem - trojan under GG :P