Wie überprüfe ich, ob das Flag in der TCP-Struktur gesetzt ist?

Ich verwende die pcap C-Bibliothek zum Lesen von Paketen. Momentan benutze ich folgendes, um zu prüfen, ob ein Flag imstruct tcphdr (Diese Struktur ist im @ definiernetinet/tcp.h library) ist gesetzt:

struct tcphdr *tcp = ....

if(tcp->th_flags & TH_SYN) {
        //SYN FLAG IS SET?
    }

Funktioniert das immer, um zu überprüfen, ob ein bestimmtes Flag in der Struktur gesetzt ist? Oder gibt es einen besseren Weg? Würde mich über Ratschläge / Tipps sehr freuen:)

Antworten auf die Frage(2)

Ihre Antwort auf die Frage