Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 May 2011 07:49:59 -0400
From:      Jason Hellenthal <jhell@DataIX.net>
To:        ramaswamy <ramaswamy.bm@globaledgesoft.com>
Cc:        freebsd-user-groups@freebsd.org
Subject:   Re: Kernel(2.6.23.1-42.fc8) is not identifying the SADB_ACQUIRE(PF_KEY) message to indicate key management failure
Message-ID:  <20110527114958.GA30970@DataIX.net>
In-Reply-To: <00b101cc1c5d$cc86bbe0$659433a0$@bm@globaledgesoft.com>
References:  <00b101cc1c5d$cc86bbe0$659433a0$@bm@globaledgesoft.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--uAKRQypu60I7Lcqm
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable


ramaswamy,

Sadly this is not a FreeBSD issue while this is a FreeBSD User Group.
Please check up with your linux user mailling list.

On Fri, May 27, 2011 at 04:34:07PM +0530, ramaswamy wrote:
> Hi all,
>=20
> =20
>=20
> I'm receiving the SADB_ACQUIRE message from the kernel to establish the
> required SA, as i have registered my pfkey socket with the kernel.=20
>=20
> The Key management in my application is failing to get the require key
> information from the server, so I'm sending the same SADB_ACQUIRE message=
 to
> the kernel with same sequence number which have received in the SADB_ACQU=
IRE
> message with errno set to ENOENT to indicate the Key management has faile=
d.=20
>=20
> =20
>=20
> Here i'm constructing only the base header (struct sadb_msg) as described=
 in
> the RFC 2367. As per the RFC 2367 it has to return me the SADB_ACQUIRE
> message with the same errno set.=20
>=20
> =20
>=20
> The problem here I'm facing is, the kernel is dropping the message which i
> have sent to the kernel to indicate the Key management has failed. The
> Kernel is sending the same (last SADB_ACQUIRE for which key management is
> failed) SADB_ACQUIRE message with errno set to ZERO.  The OS i'm using is
> Fedora core 8 (2.6.23.1-42.fc8).
>=20
> =20
>=20
> Is this handled in the above mentioned Linux Kernel version ?
>=20
> =20
>=20
> can any please let me know what is wrong i'm doing here. It will be very
> helpful for me.
>=20
> =20
>=20
> This is code snippet which i'm sending to kernel.
>=20
> =20
>=20
> /*
>=20
>  * send error against acquire message to kenrel.
>=20
>  */
>=20
> int
>=20
> send_acquire_msg_fail(struct acquire *acquire)
>=20
> {
>=20
>     struct sadb_msg *newmsg;
>=20
>     int len;
>=20
> =20
>=20
>     len =3D sizeof(struct sadb_msg);
>=20
>     newmsg =3D calloc(1, len);
>=20
>     if (newmsg =3D=3D NULL) {
>=20
>         ERROR_RETURN("failed to get buffer to send acquire.\n");
>=20
>         return -1;
>=20
>     }
>=20
> =20
>=20
>     memset(newmsg, 0, len);
>=20
>     newmsg->sadb_msg_version =3D PF_KEY_V2; =20
>=20
>     newmsg->sadb_msg_type =3D SADB_ACQUIRE;
>=20
>     newmsg->sadb_msg_errno =3D ENOENT;  =20
>=20
>     newmsg->sadb_msg_satype =3D SADB_SATYPE_ESP;
>=20
>     newmsg->sadb_msg_len =3D (len/8);
>=20
>     newmsg->sadb_msg_reserved =3D 0;
>=20
>     newmsg->sadb_msg_seq =3D acquire->seq;
>=20
>     newmsg->sadb_msg_pid =3D (u_int32_t)getpid();
>=20
> =20
>=20
>     /* send message */
>=20
>     if (len !=3D write(pfkey_socket, (void*)msg, len)) {
>=20
>           ERROR_RETURN (("SORRY, failed to write the SADB_ACQUIRE message=
 to
> the kernel\n"));
>=20
>      }
>=20
>      free(newmsg);
>=20
>      return 0;
>=20
> }
>=20
> =20
>=20
> --=20
>=20
> Regards,
>=20
> Ram
>=20
> =20
>=20
> _______________________________________________
> freebsd-user-groups@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-user-groups
> To unsubscribe, send any mail to "freebsd-user-groups-unsubscribe@freebsd=
=2Eorg"

--=20

"Unity can only be manifested by the Binary. Unity itself and the idea of U=
nity are already two." -- Buddha

 Regards, (jhell)
 Jason Hellenthal


--uAKRQypu60I7Lcqm
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (FreeBSD)
Comment: http://bit.ly/0x89D8547E

iQEcBAEBAgAGBQJN34/mAAoJEJBXh4mJ2FR+M7QH/0ysdnWMlLaCSsfrbZFbMnHx
RDlTHGYxGWSDsh9d0CPfkg1RYj0507Qyp/6wnBlfabAOzwVkb+9CaYgdoBJ4GzXZ
DR6QFV4/TzEPLgQt8YNCEHQQAK6efsFeu6S6GFNXE0R6zFSxw5mw7yHy8AogO0Hz
HcYROWnew8j9lYhs1+TtW8O/zcYNgF+lLRhkL8svKXw4/sR1XrvfvzOM6SL/UZiY
GlwqqMv8WHq8rlURkBScX6D5bsC0d9QLQove6L2E9T1MON97GKp+KvSJK7oxkTCe
Sh8tRaxFC/OeKU40ZuIvB423GfW6mSV/hK0c8o0kpnt4bR80Y1uU/BHzgnhrQkk=
=ARjG
-----END PGP SIGNATURE-----

--uAKRQypu60I7Lcqm--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110527114958.GA30970>