Avatar billede evilfish Nybegynder
20. oktober 2008 - 13:45 Der er 3 kommentarer og
1 løsning

Maskering af bits

Hej eksperter

Jeg er ved at arbejde med pcap, og til dette har jeg genereret structs som kan trække protokol informationer ud af fx TCP headeren. Jeg har lavet de structs på basis af diverse tutorials på nettet, og det ser ud til at være ret smart.

Men jeg er løbet ind i et problem når jeg skal kigge på flagene i min TCP struct. Disse er defineret således:

    u_char th_flags;
#define TH_FIN  0x01
#define TH_SYN  0x02
#define TH_RST  0x04
#define TH_PUSH 0x08
#define TH_ACK  0x10
#define TH_URG  0x20
#define TH_ECE  0x40
#define TH_CWR  0x80
#define TH_FLAGS        (TH_FIN|TH_SYN|TH_RST|TH_ACK|TH_URG|TH_ECE|TH_CWR)

Desværre kan jeg ikek huske hvordan man lægger TH_ACK maskeringen ovenpå th_flags så man kun for ACK bit værdien ud.

Nogle der kan guide mig i den rigtige retning?

På forhånd tak
Avatar billede pidgeot Nybegynder
20. oktober 2008 - 13:46 #1
if (th_flags & TH_ACK) //bitvis AND
{
  //ACK-pakke
}
Avatar billede evilfish Nybegynder
20. oktober 2008 - 13:51 #2
Det får jeg segmentation fault på
Avatar billede evilfish Nybegynder
20. oktober 2008 - 13:53 #3
Det hjalp da jeg lagde det ind i en ()
Avatar billede pidgeot Nybegynder
20. oktober 2008 - 16:36 #4
Det tolker jeg som en opfordring til at smide et svar.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester