title: why we still have the sun_family in the struct sockaddr_un?
body: <p>I'm a newbie in UNIX programming. Normally, when we use local socket to communicate, the domain is always AF_UNIX or AF_LOCAL. So in this case, struct sockaddr_un serves always for the local communication. Why there is still "short sun_family"? For a historical reason?</p>
  
  <pre><code>struct sockaddr_un{
  short sun_family;                /*AF_UNIX*/ 
  char  sun_PATH[108];        /*path name */ 
  };
  </code></pre>