Resultados 1 al 5 de 5

Tema: #include <netinet/udp.h> Donde estas ¿?

  1. #1 #include <netinet/udp.h> Donde estas ¿? 
    Avanzado
    Fecha de ingreso
    Oct 2010
    Mensajes
    377
    Descargas
    23
    Uploads
    0
    Código:
    printf(" %i :%g",iphead->saddr,udphead->sport);
    printf("%i  %g\n", iphead->daddr,udphead->dport);

    Código:
    /root/C/sniffer.c:50: error: 'struct udphdr' has no member named 'sport'
    /root/C/sniffer.c:51: error: 'struct udphdr' has no member named 'dport'
    Segun el copilador la estructura no contiene nada, vamos que me los esta tocando pero bien, a ver si me podeis echar una manita .


    A las librerias:

    #include <linux/if_ether.h>
    #include <netinet/in.h>
    #include <fcntl.h>
    #include <string.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <errno.h>
    #include <netinet/ip.h>
    #include <netinet/udp.h>
    Bendo mi cuelpo, xicaz interezadaz mnanden priBado, no ravoz ni zorpesas.
    Citar  
     

  2. #2  
    Avanzado
    Fecha de ingreso
    Feb 2011
    Mensajes
    442
    Descargas
    0
    Uploads
    0
    Código:
    struct udphdr {
            __be16  source;
            __be16  dest;
            __be16  len;
            __sum16 check;
    };
    Ezine HH mas de 5.000.000.000 descargas!!!!!!!!!
    Citar  
     

  3. #3  
    Avanzado
    Fecha de ingreso
    Oct 2010
    Mensajes
    377
    Descargas
    23
    Uploads
    0
    #include <netinet/in.h>
    #include <fcntl.h>
    #include <string.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <netinet/ip.h>
    #include <netinet/udp.h>
    #include <netinet/tcp.h>

    #define MAX 4025




    main(){


    int pid;

    pid=fork();

    if(pid==0){

    char buffer[MAX];
    int sock;
    int bytes_read;

    sock = socket(PF_INET,SOCK_RAW,IPPROTO_UDP);

    struct iphdr *iph;
    struct udphdr *udph;


    iph = (struct iphdr *)buffer;

    do{

    bytes_read=recv(sock,buffer,MAX, 0);


    if(iph->protocol==IPPROTO_UDP){

    udph=(struct udphdr*)(buffer+sizeof(struct iphdr));

    printf("Origen UDP %s :%d\n",inet_ntoa(iph->saddr),ntohs(udph->source));
    printf("Destino UDP %s :%d\n", inet_ntoa(iph->daddr),ntohs(udph->dest));

    udph==NULL;

    iph==NULL;

    buffer==NULL;
    }

    }
    while (bytes_read >0);

    }
    else
    {


    //fcntl(sock,F_SETFL,O_NONBLOCK);
    //memset( &address, 0, sizeof( address ) );
    //address.sa_family = AF_INET;
    //strncpy( address.sa_data, "wlan0", sizeof(address.sa_data) );
    char buffer2[MAX];
    int sock2;
    int bytes_read2;

    sock2 = socket(PF_INET,SOCK_RAW,IPPROTO_TCP);

    struct iphdr *iph2;
    struct tcphdr *tcph;

    iph2 = (struct iphdr *)buffer2;


    do{

    bytes_read2=recv(sock2,buffer2,MAX,0);

    if(iph2->protocol==IPPROTO_TCP){

    tcph=(struct tcphdr*)(buffer2+sizeof(struct iphdr));

    printf("Origen TCP %s :%d\n",inet_ntoa(iph2->saddr), ntohs(tcph->source));
    printf("Numero de secuencia: %d ACK: %i\n ",ntohs(tcph->seq),ntohs(tcph->ack_seq));
    printf("Destino TCP %s :%d\n", inet_ntoa(iph2->daddr), ntohs(tcph->dest));

    tcph==NULL;

    iph2==NULL;

    buffer2==NULL;




    }
    }
    while (bytes_read2> 0);

    }

    }
    Ok gracias, parace que al referencia que yo tenia no era la correcta xd.
    Bendo mi cuelpo, xicaz interezadaz mnanden priBado, no ravoz ni zorpesas.
    Citar  
     

  4. #4  
    Avanzado
    Fecha de ingreso
    Feb 2011
    Mensajes
    442
    Descargas
    0
    Uploads
    0
    La próxima vez que te pase algo así no haces nada mejor que comprobar el .h para quitarte de dudas
    Ezine HH mas de 5.000.000.000 descargas!!!!!!!!!
    Citar  
     

  5. #5  
    Avanzado
    Fecha de ingreso
    Oct 2010
    Mensajes
    377
    Descargas
    23
    Uploads
    0
    La próxima vez que te pase algo así no haces nada mejor que comprobar el .h para quitarte de dudas
    ok ok ok,es que muchas veces me ciego xd.
    Bendo mi cuelpo, xicaz interezadaz mnanden priBado, no ravoz ni zorpesas.
    Citar  
     

Marcadores
Marcadores
Permisos de publicación
  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •