Hello Peter, On Tue, Mar 02, 2010 at 12:20:15AM +1030, Peter Nguyen wrote: > Sorry, I should have mentioned more specifically what i was after. So, i was > referring to the http_server_serve function in the http server code, whereby > upon receiving a HTTP request, the struct netconn variable (conn) seems to > store > IP addresses which I think refer to the IP address that the HTTP request will > be > sent back to. In following the struct netconn variable, I noticed two IP > addresses are stored: a local IP, and a remote IP. I discovered this via the > following code that I added: > > addr = conn->pcb.ip->remote_ip.addr (remote_ip can be replaced by local_ip)
You're digging deep into lwIP here, that we just adopted for Genode, but I'll share my limited knowledge... > I was wondering what the purpose of the remote_ip and local_ip variables were? > Am i right in saying that remote_ip refers to the machine that performed the > HTTP request? 'pcb.ip' is the lwIP-internal protocol control block for IP packets [1]. Therefore, I assume that the fields (e.g., local_ip or tos) correspond to the connection configuration and will end as in the final network packet on the wire. Note, IP addresses are stored in network byte order [2]. [1] lwip-1.3.2/src/include/lwip/api.h:114 [2] lwip-1.3.2/src/include/ipv4/lwip/ip.h:76 Regards -- Christian Helmuth Genode Labs http://www.genode-labs.com/ · http://genode.org/ Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Genode-main mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/genode-main
