I thought I read somewhere that enums aren't necessarily always the same type, which made me worried that they might not cast to the same value. I was having a few problems and just wanted to eliminate that as a possibility. I think I found my actual problem though.
And I thought the following question didn't deserve a new thread: It makes sense use both UDP and TCP in the same program right? I want TCP for data that can't get lost or duplicated ect. Do I need to bind each socket to different ports so my program actually uses two ports?