[hipl-users] Connect and wrap file

  • From: KKloe Kaishoto <kaishos@xxxxxxxxx>
  • To: hipl-users@xxxxxxxxxxxxx
  • Date: Sun, 30 Aug 2009 14:45:50 +0200

Hi there,

had a question about the HIPL connect function that is in wrap.c.
Firstly:
What I can see that when using the connect function you send into it a
struct of addrinfo that contains in total 3 addrinfo's, first, next and a
next after it and has the following info:

1. the destination HIT,

in the first ai_next:
2. there is the ipv4 adress??? had some strange symbols here and I couldnt
understand really what the info here was of the ai_addr was but I guess by
the ai_family

and in the next and last ai_next.
3. there is the ipv6 address?

after it is called I guess the connect function in your wrap.c is called.
What I could understand of it was that it tries first to translate the
socket and address to some other type or??

then what I guess some kindof a macro call is done:
err = dl_function_ptr.connect_dlsym(*translated_socket, translated_id,
*translated_id_len);

then I guess hipd receives the message through recvfrom. then this is
called:
chars = dl_function_ptr.recvfrom_dlsym( *translated_socket, buf, len, flags,
translated_id, translated_id_len);

now I wonder as I cant find it, where the logic of : .recvfrom_dlsym(); and
.connect_dlsym()?, as I cant get further in the chain. What I want to do is
add another address in the struct of addrinfo that is passed in connect by
the client and then parse it in hipd.

Other related posts: