Skip to content

ferjjp/personalCopyTP

Repository files navigation

tp-2014-1c-conitos-team

Nuevas librerias!

(Cada vez que se actualicen hay que hacer esto)

Como se compilan:

  • Entran en la carpeta git/tp-2014-1c-conitos-team/conitos_library
  • Tocan f4, y en esa consola que se les abrió escriben "sudo chmod u+x instalacion.sh" y luego ./instalacion.sh

    La biblioteca se incorpora como #include conitos_library en su archivo de C.

    La interfaz es la siguiente:

    • int escucharEn(char * puerto)
    • int recibirEncabezado(int socketCliente, int* codOp, int* tamanioMensaje);)
    • int recibirContenido(int socketCliente,int tamanioMensaje,char* contenido);
    • int conectarA(char ip, char puerto)
    • int enviarA(int serverSocket, int codigoOperacion, char* contenido)

      Ejemplo de llamadas (newSurgence y newSurgenceServer) :

      CLIENTE

                  #include <conitos_library/sockets.h>
      
                  int main(void) {
                                  setvbuf(stdout, NULL, _IONBF, 0);
                                  char * mensaje = "hola";
                                  int serverSocket, status;
                                  serverSocket = conectarA("localhost", "6666");
                                  status = enviarA(serverSocket, 2, mensaje);
                                  if (status == 8 + strlen(mensaje) + 1) {
                                         puts("\nEnvio Exitoso");
                                  } else {
                                         puts("\nEnvio Fallido: ");
                                         printf("\nEnviado %d, esperado %d", status, 8 + strlen(mensaje) + 1);
                                  }
                  }                                            
      

      SERVER

                  #include <conitos_library/sockets.h>
      
                  int main(void) {
                      setvbuf(stdout, NULL, _IONBF, 0);
                      int socketEscucha;
                      socketEscucha = escucharEn("6666");
                      while (1) {
                                          listen(socketEscucha, 1000);
                                          struct sockaddr_in addr;
                                          socklen_t addrlen = sizeof(addr);
                                          int socketCliente;
                                          socketCliente = accept(socketEscucha, (struct sockaddr *) &addr,&addrlen);
                                          int status, codigoOperacion, tamanioMensaje;
                                          status = recibirEncabezado(socketCliente, &codigoOperacion,&tamanioMensaje);
                                          char* mensaje = malloc(tamanioMensaje);
                                          status = recibirContenido(socketCliente, tamanioMensaje, mensaje);
                                          printf("\n%d\n", codigoOperacion);
                                          printf("\n%d\n\n", tamanioMensaje);
                                          puts(mensaje);
                      }
                  }
      

About

asdasdasdasd

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages