LCOV - code coverage report
Current view: top level - imp - server.cpp (source / functions) Hit Total Coverage
Test: coverage.info Lines: 25 25 100.0 %
Date: 2025-02-09 09:26:30 Functions: 2 2 100.0 %

          Line data    Source code
       1             : #include "../inc/header.h"
       2             : 
       3           3 : int             create_server(int port)
       4             : {
       5           3 :         int                                     sock;
       6           3 :         struct protoent         *proto;
       7           3 :         struct          sockaddr_in      sin;
       8             : 
       9           3 :         proto = getprotobyname("tcp");
      10           3 :         if (proto == NULL)
      11             :                 return (-1);
      12           3 :         sock = socket(PF_INET, SOCK_STREAM, proto->p_proto);
      13           3 :         if (sock == -1)
      14             :                 return sock;
      15           3 :         sin.sin_family = AF_INET;
      16           3 :         sin.sin_port = htons(port);
      17           3 :         sin.sin_addr.s_addr = htonl(INADDR_ANY);
      18           3 :         bind(sock, (struct sockaddr *)&sin, sizeof(sin));
      19           3 :         listen(sock, 1);
      20             : 
      21           3 :         printf("Server created, listening on port %u \n", ntohs(sin.sin_port));
      22             : 
      23             :         return (sock);
      24             : }
      25             : 
      26             : 
      27             : 
      28          17 : int createConnectionAndOutputIp(int sock)
      29             : {
      30          17 :     uint32_t    cslen;
      31          17 :     struct      sockaddr_in  csin;
      32          17 :     cslen = sizeof(struct sockaddr);
      33          17 :     int cs = accept(sock, (struct sockaddr *)&csin, &cslen);
      34          34 :     printf("Connection from : %d.%d.%d.%d\n",
      35          17 :            int(csin.sin_addr.s_addr&0xFF),
      36          17 :            int((csin.sin_addr.s_addr&0xFF00)>>8),
      37          17 :            int((csin.sin_addr.s_addr&0xFF0000)>>16),
      38          17 :            int((csin.sin_addr.s_addr&0xFF000000)>>24));
      39          17 :     return cs;
      40             : }
      41             : 
      42             : 

Generated by: LCOV version 1.14