Specifications
308 Chapter 18 
PSA Programming Examples
Using C Over Socket LAN (UNIX)
PSA Programming Examples
 *
 * $Return: (int) . . . . . . . . A file descriptor similar to open(1).$
 *
 * $Errors: returns -1 if anything goes wrong $
 *
 ***************************************************************************/
SOCKET openSocket(const char *hostname, int portNumber)
{
 struct hostent *hostPtr;
 struct sockaddr_in peeraddr_in;
 SOCKET s;
 memset(&peeraddr_in, 0, sizeof(struct sockaddr_in));
 /***********************************************/
 /* map the desired host name to internal form. */
 /***********************************************/
 hostPtr = gethostbyname(hostname);
 if (hostPtr == NULL)
 {
  fprintf(stderr,"unable to resolve hostname ’%s’\n", hostname);
  return INVALID_SOCKET;
 }
 /*******************/
 /* create a socket */
 /*******************/
 s = socket(AF_INET, SOCK_STREAM, 0);
 if (s == INVALID_SOCKET)
 {
  fprintf(stderr,"unable to create socket to ’%s’: %s\n",
  hostname, strerror(errno));
  return INVALID_SOCKET;
 }










