This is the piece of the code I copied from one of the header file for socket programming.
/* Structure describing an Internet socket address. */
struct soc
It is a macro defined somwhere else. It might be defined as
#define __SOCKADDR_COMMON(sa_prefix) \
sa_family_t sa_prefix##family
expanding that, the struct would look like
struct sockaddr_in
{
sa_family_t sin_family;
in_port_t sin_port;
...
DO NOT copy this structure into your code. You are supposed to include the header file for your system that declares struct sockaddr_in.