Exemplo n.º 1
0
int reg(char *name, int sockfd)
{
    User user;
    memset(&user, 0, sizeof(user));
    strncpy(user.name, name, MIN(strlen(name), MAXNLEN-1));
    if (addClientToList(sockfd, &user, NULL) != 0)
        return -1;
    return 0;
}
Exemplo n.º 2
0
/* returns index of new client on the list */
int handle_incoming_conn(Arraylist list, char *servername, int listenfd){
  /* Incoming Connection */
  struct sockaddr_storage remoteaddr;
  socklen_t addrlen = sizeof(remoteaddr);
  int newfd = accept(listenfd, (struct sockaddr *)&remoteaddr, &addrlen);

  if (newfd == -1) {
    DEBUG_PERROR("accept");
    return -1;
  }

  DPRINTF(DEBUG_SOCKETS,"handle_incoming_conn: new connection on socket %d\n",newfd);

  return addClientToList(list, servername, newfd, &remoteaddr);
}