Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //old
- int cutilsTcpServerAccept(cutilsTcpServer *server, size_t bufferSize){
- cutilsTcpServerClient newClient;
- newClient.addressSize = sizeof(struct sockaddr_storage);
- newClient.sockfd = accept(server->sockfd, (struct sockaddr*)&newClient.address, &newClient.addressSize);
- if(newClient.sockfd == -1){
- return CUTILS_ACCEPT;
- }
- int err = cutilsByteStreamInit(&newClient.buffer, bufferSize);
- if(err != CUTILS_OK){
- close(newClient.sockfd);
- return err;
- }
- err = cutilsTcpServerClientArrPushBack(&server->clients, newClient);
- if(err != CUTILS_OK){
- close(newClient.sockfd);
- cutilsByteStreamFree(&newClient.buffer);
- return err;
- }
- return CUTILS_OK;
- }
- //new
- cutilsTcpServerClient* cutilsTcpServerAccept(cutilsTcpServer *server, size_t bufferSize){
- cutilsTcpServerClient *newClient = malloc(sizeof(cutilsTcpServerClient));
- newClient->addressSize = sizeof(struct sockaddr_storage);
- newClient->sockfd = accept(server->sockfd, (struct sockaddr*)&newClient->address, &newClient->addressSize);
- if(newClient->sockfd == -1){
- return NULL;
- }
- int err = cutilsByteStreamInit(&newClient->buffer, bufferSize);
- if(err != CUTILS_OK){
- close(newClient->sockfd);
- free(newClient);
- return NULL;
- }
- //error is here somewhere
- // err = cutilsTcpServerClientArrPushBack(&server->clients, newClient);
- // if(err != CUTILS_OK){
- // close(newClient.sockfd);
- // cutilsByteStreamFree(&newClient.buffer);
- // return err;
- // }
- return newClient;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement