savannah-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Savannah-users] Compilation problem with lwip


From: Peter, Lachlan S
Subject: [Savannah-users] Compilation problem with lwip
Date: Mon, 19 May 2008 09:19:37 +0300

I am compiling the latest version of lwip with the GNU toolchain V2.0.3. The complete package was supplied by Atmel for the AVR32. A number of errors have occurred that would imply an incorrect setup. I appreciate any help I can get.

 

Error 1.

“struct tcp_pcb has no member named lwip_recv” from file tcp_in.c, in function tcp_input.

The relevant line is

         TCP_EVENT_RECV(pcb, recv_data, ERR_OK, err);.

A similar message also occurs in raw.c and another c file regarding their relevant pcb’s.

In tcp.h the definition of the macro is

        #define TCP_EVENT_RECV(pcb,p,err,ret)   ret = lwip_tcp_event((pcb)->callback_arg, (pcb), LWIP_EVENT_RECV, (p), 0, (err))

 In tcp.h there is a further definition for lwip_tcp_event

        err_t lwip_tcp_event(void *arg, struct tcp_pcb *pcb, enum lwip_event, struct pbuf *p, u16_t size, err_t err)

I presume the problem is with pcb->callback_arg as this is the only referenced member of pcb. In the definition of the structure tcp_pcb there is a member

    void *callback_arg.

This all seems OK so I don’t know where the reference to “lwip_recv” is coming from and why it occurs. The exact same error occurs in raw.c but refers to raw_pcb.

 

 

Error 2.

“macro “recv” passed 5 arguments but takes only 4”  from file udp.c in function udp_input.

The relevant line is

     pcb->recv(pcb->recv_arg, pcb, p, &(iphdr->src), src);

In the function pcb is defined as struct udp_pcb *pcb.

In udp.h the structure udp_pcb has the element

     void (* recv)(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, u16_t port);
The structure definition and the usage both have 5 elements. This same problem happens a few other times in udp.c and once in another module.

 

There are other errors but if I can get help solving this it will probably point to a systematic error that will fix the other problems.

 

Any help would be appreciated.

Thanks

Lachlan Peter


reply via email to

[Prev in Thread] Current Thread [Next in Thread]