All pastes #946017 Raw Edit

Something

public text v1 · immutable
·published 2008-03-17 11:11 UTC
rendered paste body
int main(int argc, char **argv) {
   int port = 2000, val = 1;
   int ms;
   struct sockaddr_in msa, csa;
   bzero(&msa, sizeof(msa));

   msa.sin_family = AF_INET;
   msa.sin_port = htons(port);
   msa.sin_addr.s_addr = htonl(INADDR_ANY);

   if ((ms = socket(PF_INET, SOCK_STREAM, 0)) == -1) {
      printf("socket() error: %s\n", strerror(errno));
      return 1;
   }

   if ((setsockopt(ms, SOL_SOCKET, SO_REUSEADDR, &val, sizeof(val))) == -1) {
      printf("setsockopt() error: %s\n", strerror(errno));
      return 1;
   }

   if ((bind(ms, (struct sockaddr*) &msa, sizeof(msa))) == -1) {
      printf("bind() error: %s\n", strerror(errno));
      return 1;
   }

   if ((listen(ms, SOMAXCONN)) == -1) {
      printf("listen() error: %s\n", strerror(errno));
      return 1;
   }

   if ((accept(ms, (struct sockaddr*) NULL, NULL)) == -1) {
      printf("accept() error: %s\n", strerror(errno));
      return 1;
   }

   printf("Connection accepted!\n");
   close(ms);

   return 0;
}