Kann man nicht einfach ein uint32_t als ip-Adresse nehmen (und ein uint16_t als Port)? Dann ist die Zuweisung ein =, der Vergleich ein ==. Und wenn man mit Netzmaske oder Broadcastadresse arbeiten muß, passen Bitoperationen. Für die Umwandlung vom Leitungscode zum uint32_t bzw. unint16_t gibt es Funktionen wie ntohl() .
MfG Klebwax