[strongSwan-dev] integrating permis into strongswan

Jan Willem Beusink jan.willem.beusink at ti-wmc.nl
Fri May 7 15:05:04 CEST 2010


Hi all,

I'm still working on the mod to add permis into the mix. And I'm stuck..
So I would really appreciate any insights you might have.

I've changed the code of src/libcharon/sa/tasks/ike_auth.c as I want to
perform an authorization after an authentication.

For this authorization step I need to connect via sockets to another
machine/program (permis). And figured that I could use the
socket_dynamic_socket to this end.

ike_auth compiles fine, however charon (not libcharon) complains about
not finding the socket_dynamic_socket when linking:
<code>
...
make[3]: Leaving directory
`/home/wsjanwillem/strongswan/strongswan-4.4.0/src/libcharon'
Making all in charon
make[3]: Entering directory
`/home/wsjanwillem/strongswan/strongswan-4.4.0/src/charon'
/bin/bash ../../libtool --tag=CC   --mode=link gcc
-DIPSEC_DIR=\"/usr/lib/ipsec\" -DIPSEC_PIDDIR=\"/var/run\" -g -O2 -Wall
-Wno-format -Wno-pointer-sign -Wno-strict-aliasing   -o charon charon.o
../../src/libstrongswan/libstrongswan.la ../../src/libhydra/libhydra.la
../../src/libcharon/libcharon.la -lm -lpthread  -ldl
libtool: link: gcc -DIPSEC_DIR=\"/usr/lib/ipsec\"
-DIPSEC_PIDDIR=\"/var/run\" -g -O2 -Wall -Wno-format -Wno-pointer-sign
-Wno-strict-aliasing -o .libs/charon charon.o
../../src/libstrongswan/.libs/libstrongswan.so
../../src/libhydra/.libs/libhydra.so
../../src/libcharon/.libs/libcharon.so -lm -lpthread -ldl
../../src/libcharon/.libs/libcharon.so: undefined reference to
`socket_dynamic_socket_create'
collect2: ld returned 1 exit status
make[3]: *** [charon] Error 1
make[3]: Leaving directory
`/home/wsjanwillem/strongswan/strongswan-4.4.0/src/charon'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/home/wsjanwillem/strongswan/strongswan-4.4.0/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/wsjanwillem/strongswan/strongswan-4.4.0'
make: *** [all] Error 2
</code>

I reckoned that maybe I needed to change the src/charon/Makefile
generated by .configure. But soon after I found that there is no library
file for socket_dynamic:
<code>
wsjanwillem at shuttle:~/strongswan/strongswan-4.4.0/src$ find . | grep
socket_dynamic
./libcharon/plugins/socket_dynamic
./libcharon/plugins/socket_dynamic/Makefile.am
./libcharon/plugins/socket_dynamic/Makefile.in
./libcharon/plugins/socket_dynamic/socket_dynamic_plugin.c
./libcharon/plugins/socket_dynamic/socket_dynamic_socket.h
./libcharon/plugins/socket_dynamic/Makefile
./libcharon/plugins/socket_dynamic/socket_dynamic_plugin.h
./libcharon/plugins/socket_dynamic/socket_dynamic_socket.c
./libcharon/plugins/socket_dynamic/.deps
./libcharon/plugins/socket_dynamic/.deps/socket_dynamic_socket.Plo
./libcharon/plugins/socket_dynamic/.deps/socket_dynamic_plugin.Plo
</code>

As the whole socket_* implementation is integrated from 4.4.0 perhaps
something was forgotten changing the configure file? Unfortunately my
knowledge of makefiles isn't sufficient to figure this out for myself.

Anyhow, please help ;)

yours sincerely,

Jan Willem Beusink




More information about the Dev mailing list