specifiers (some unsigned values were printed as signed, some longs were printed as ints), and place parentheses around assignments in if statements.
struct socket changes.