Linux - socket en Fedora/Knopixx

 
Vista:

socket en Fedora/Knopixx

Publicado por Suriv (1 intervención) el 25/01/2006 12:18:02
Hola a todos

Tengo un problema muy dificil de solucionar par mi, estoy creando un socket y he creado la parte del servidor en Knopixx (live cd), lo probamos y no me funcionaba.

Este es el codigo del servidor por si hay algun error
---------------------------------------------------------------------------------------------------------------------------
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#define port 4000
#define backlog 2

main()
{
int fd,fd2;
struct sockaddr_in server;
struct sockaddr_in cliente;
int tamanio;

if ((fd=socket(AF_INET,SOCK_STREAM,0))==-1)
{
printf("Se ha producido un error");
exit(-1);
}

server.sin_family=AF_INET;
server.sin_port=htons(port);
server.sin_addr.s_addr=inet_addr("192.168.33.3");
bzero(&(server.sin_zero),8);

if(bind(fd,(struct sockaddr *)&server,sizeof(struct sockaddr))==-1)
{
printf("Se ha producido un error");
exit(-1);
}

if(listen(fd,backlog)==-1)
{
printf("Se ha producido un error");
exit(-1);
}

while (1)
{
tamanio=sizeof(struct sockaddr_in);
if(fd2=accept(fd,(struct sockaddr*)&cliente,&tamanio)==-1)
{
printf("Se ha producido un error");
exit(-1);
}
}
printf("Conexion dede IP:%s",inet_ntoa(cliente.sin_addr));
close(fd2);
}
---------------------------------------------------------------------------------------
Mas tarde instale el Fedora ya que alguien me comento que funcionaba mejor, lo compilamos con Gcc
y al ejecutar el archivo compilado dice bash: command not found

Por favor contestar lo antes posible

Gracias por anticipado
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:socket en Fedora/Knopixx

Publicado por chuidiang (22 intervenciones) el 25/01/2006 20:08:48
Hola:

Lo del código no sé. Así por encima no veo fallos. En http://www.geocities.com/chuidiang/sockets/sockets_simp.htm tienes un ejemplo. Puedes comparar a ver si ves algo raro.

En cuanto a lo de que no encuentra el archivo compilado, se debe a que la variable PATH no tiene por defecto el directorio . (punto). Prueba a ejecutar asi

$ ./ejecutable

(poniendo punto barra nombre ejecutable).

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar