rozy gdje su krive upute?
Mariox pa ovaj zadnji dio “primjeri pozivanja”, pise posaljete botovima naredbu p, a CandC ne podrzava naredbu p, vec pu i pt, onda ovo pokretanje nc -ul 5678, meni nije radilo, otvorim kod CandC-a i vidim da u onim portovima navedeniim vise ne pise 5678 ko u prosloj vjezbi vec je sada taj “vat” i onda sam runno program i ko zrtvu imo nc -ul vat i radilo mi je kak treba i primao je payloade
nc -ul vat
Jel ima itko vremena da pogleda kako to da mi isto definirani selectovi i sve ne uspije proci na serveru na na botu prodje? ovo je iz servera i ne radi nikad ne dodje na liniju 100
ovdje select u botu prodje a sve sam probao na serveru promijeniti
BigZ1 nez koja ti je 100. linija, al selectu kao prvi arg moras predat maksimalni sfd + 1, nez kako znas da je mysocketudp upravo taj najveci i makni gornja tri fd_set jer kad ude u while petlju to radi po drugi put iako ne bi treba
azex a to sam samo probao cisto ovako,a zadnji socket koji napravim je taj udp pa sam na njega dodao samo 1 al evo maknem to i vidim koji je naveci sa printf
ev sad je kod ovako i ne radi svakako ne prodje select
azex
BigZ1 s primjera na https://beej.us/guide/bgnet/examples/selectserver.c FD_ISSET mora biti u for petlji koja izgleda ovako for (i = 0; i <= fdmax; i++)
for (i = 0; i <= fdmax; i++)
EDIT: aha, ili mozes provjeriti sve svoje sockete, kako si pretpotstavljam ti napravio, ali kanije moras napraviti da ti je u readsfd setu listener socket, pa nakon accepta dodas novi socket koji si dobio s accept(), te bi tako morao podrzati vise konkurentnih klijenta. Opet pogledaj primjer s linka, ja sam ga puno koristio
Mariox e pa gledao sam to ali ocigledno mi i dalje nije jasno,razumijem da accept mi vrati novi socket i to odradim nakon fd_isset od tcp socketa no opet mi nije jasno kako sav isti kod prodje u selectu u botu a u serveru ne. msm kod izgleda isto kao i ondje gore,ali unutar toga obradim ovo sto bude u aceptu. evo cak i dio koda,kuzim da bi ja mozda trebao taj od accepta dodat onda u listu skroz novih no zasad ni ovo ne radi jer ne prodje select svakako. EDIT: inace napisao sam i wraper funkciju selecta no probao sam ovdje bas select pozvat da nije neki problem. no on kao da zapne u selectu i ne ide dalje a ne baci error
BigZ1 koja je error poruka? Napravi si Select() wrapper
Mariox ev i wrapper cak sam stavio i err <0 i nije se nist promijelo.. Pokusavam rec da se error ne dogodi nekako no zapne tu i program se NE terminira.
BigZ1 oprosti ako je glupo pitanje, ali samo da provjerim, jesi poslao nesto programu? Npr s stdina?
Mariox pokrenuo sam samo skriptu bash testiraj.sh i u njoj uneo pt i tjt i tu sve stane al nije glupo pitanje,logicno je
BigZ1 pokreni samo server i pokusaj mu poslat na stdin nesto, mozda jednostavno select nije nista primio
Mariox jok samo mogu upisivat do kraja vjeka vjekova i tjt. Ma nista sutra ce mi ujutro asistenti reci sta ne valja jer nemam pojma vise.
BigZ1 aa stvarno mi nije jasno zasto se blokira zauvik, barem kada upises u terminal server nesto trebalo bi radit, valjda ce ti oni rec sta konkretno ne valja, drzin fige
Kako koristite select u botu kada istovremeno treba slat payloadove zrtvama? Mislio sam da je ideja koristit signale za bot, a select za server?
staverm ja sam koristia procese u botu jer ne pise da trebamo sa selectom, pa kad treba zaustavit samo posaljem kill procesu djetetu
azex ma sve 5 stari nemam pojma iskreno nemam volje vise pa nek mi oni pomognu i dobro da dobije ⅖ ja zadovoljan no svakako cu ga poslije za sebe prepravit do kraja.
BigZ1 mozda je ispis samo sjeban, pokusaj nakon svakog printf napisat naredbu fflush(0); to mi je upravo palo na pamet, ajd jos to provaj pa javi
kako podržati broadcast? Samo staviti
Setsockopt(victimSockets[i], SOL_SOCKET, SO_BROADCAST, &on, sizeof(on));
? Kako provjeriti je li radi?
Mariox ja sam stavio tako i nisam dobio nikakvu primjedbu za to u mailu.. Nisam siguran kako bi testirao tho