|
From: <ma...@ne...> - 2006-09-16 06:50:58
|
Jo=E3o Miguel Neves <joa...@in...> wrote:
> #0 0x08075c1c in getsockmyaddr (my=3D0x0) at grabmyaddr.c:893
> #1 0x0804d456 in isakmp_send (iph1=3D0x80c01a0, sbuf=3D0x80bfe18) at
isakmp.c:1813
Which basically means that you had iph1->local =3D=3D NULL in isakmp_send()=
.=20
There are two places where I can grep "iph1->local =3D NULL"
handler.c:delph1()
isakmp.c:isakmp_main()
Can you add a few printfs, so that we get a hint of where it gets screwed u=
p?
cvs diff: Diffing .
Index: handler.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /cvsroot/src/crypto/dist/ipsec-tools/src/racoon/handler.c,v
retrieving revision 1.8
diff -U2 -r1.8 handler.c
--- handler.c 9 Sep 2006 16:22:09 -0000 1.8
+++ handler.c 16 Sep 2006 06:48:06 -0000
@@ -304,4 +304,5 @@
racoon_free(iph1->local);
iph1->local =3D NULL;
+ printf("%s: iph1 =3D %p sets local to NULL\n", __func__, ip=
h1)
}
if (iph1->approval) {
Index: isakmp.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /cvsroot/src/crypto/dist/ipsec-tools/src/racoon/isakmp.c,v
retrieving revision 1.12
diff -U2 -r1.12 isakmp.c
--- isakmp.c 9 Sep 2006 16:22:09 -0000 1.12
+++ isakmp.c 16 Sep 2006 06:48:08 -0000
@@ -464,4 +464,6 @@
iph1->remote =3D NULL;
iph1->local =3D NULL;
+ printf("%s: iph1 =3D %p sets local to NULL\n",=20
+ __func__, iph1);
=20
/* copy-in new addresses */
@@ -1812,4 +1788,7 @@
#endif
=20
+ printf("%s: iph1 =3D %p, iph1->local =3D %p\n",=20
+ __func__, iph1, iph1->local);
+
/* select the socket to be sent */
s =3D getsockmyaddr(iph1->local);
--=20
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
ma...@ne...
|