Hi,
 
Well, after a few weeks playing with LwIP on a Virtex II Pro, I finally got it 
working and the server runs smoothly for now.
I am using the RAW Api from EDK 8.2i v2.00a which apparently corresponds to the 
0.7.1 release of LwIP.
 
Now, even though the server runs smoothly, I mean I'm able to connect to it and 
send command line and see how it responds,
I still have some issues.
 
1/ I encoutered lots of problems with the print/xl_printf/printf commands. We 
were not able to display correctly the data or even
    strings.
    One thing strange was about pbuf. I woud like to know if I am right. pbuf 
is the representation of a packet for LwIP. 
    So if I am sending data or receiving data from the server, using 
tcp_write(), will it handle the by itself to cut the data into packets
    and dispatch them in a chain of pbufs?
 
2/ Also, my client is in JAVA, when it is sending a commande line, it is a 
string "Test 1 2" for examle. But when we display
    pbuf->payload, we get the string and lots of garbage. Also when i display 
the pbuf->len variable, it is not the exact size of the string
    I sent. It was more likely if I sent "test" to be 6 instead of 4 so I 
thought it was "\n" and when I used a strtok, it seemed like it
    and we made it work that way, like detect the character \n, then parse the 
command line. 
    But I was wondering if I was doing something wrong on the client or server 
side.
 
3/ Our main interrest with LwIP was to use DHCP. By reading the dhcp.c file, it 
says the following things:
    - change LWIP_DHCP to 1 in lwipopts.h which is in the port directory.
    - change value of DHCP_COARSE_TMR and another one so that the first one is 
called every 60s and the other 500ms.
    - then call the respective functions for these values and call 
dhcp_start(struct netif);
 
    Well, I did spend quite a lot of time playing with the timer and the Timer 
Base Register LWIP uses. I still didn't get how
    we can evaluate the time. I mean that in the echo code example, the 
function mytmr() is called every 750.000 cycles.
    And then in the mytmr() function, it says that tcp_slowtmr() is called 
every 2ms... So, if someone could enlight me on that point, thx
 
   But getting back to the dhcp thing, then after doing all of this, I tried to 
compile and I got a undefined reference to all of the dhcp functions.
   Of course, I included dhcp.h in every file I needed it and then I went to 
the port directory and look at the make file and the dhcp.c file was
   not included. So I added it but still the same error....
 
4/ Two more questions, I was thinking about upgrading to lwIP 1.2.0 but I have 
no idea how so if someone could explain it to me or give me headings,
    I would be really grateful.
    Also, I was thinking about upgrading to EDK 9.1 but is it worth it? I've 
read that they changed the compiler and that it is not as effective
    as the 8.2i version.
 
Thank you for taking the time to read all of this and, I am looking forward to 
hear some answers from the LwIP community.
 
Antoine.
_________________________________________________________________
Windows Live Messenger vous offre 30 nouvelles émoticônes gratuites, installées 
directement dans votre Messenger !
http://www.emoticones-messenger.fr/
_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to