diff options
author | Andreas Steffen <andreas.steffen@strongswan.org> | 2007-01-29 07:43:34 +0000 |
---|---|---|
committer | Andreas Steffen <andreas.steffen@strongswan.org> | 2007-01-29 07:43:34 +0000 |
commit | ef05d8465be970e30bc7e763e689ece52e4aad91 (patch) | |
tree | 6cabf5ead6dd58b190da4a190117b1fa4dea7f78 /src/pluto/demux.c | |
parent | f527c5a2880ba107a8032277cdaca2295c2a9dd3 (diff) | |
download | strongswan-ef05d8465be970e30bc7e763e689ece52e4aad91.tar.bz2 strongswan-ef05d8465be970e30bc7e763e689ece52e4aad91.tar.xz |
XAUTH interoperability with Cisco
Diffstat (limited to 'src/pluto/demux.c')
-rw-r--r-- | src/pluto/demux.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/pluto/demux.c b/src/pluto/demux.c index 1f47daf8f..7e59b184d 100644 --- a/src/pluto/demux.c +++ b/src/pluto/demux.c @@ -443,7 +443,7 @@ static const struct state_microcode state_microcode_table[] = { , EVENT_RETRANSMIT, xauth_inI0 }, { STATE_XAUTH_R1, STATE_XAUTH_R2 - , SMF_ALL_AUTH | SMF_ENCRYPTED | SMF_REPLY + , SMF_ALL_AUTH | SMF_ENCRYPTED , P(ATTR) | P(HASH), P(VID), PT(HASH) , EVENT_RETRANSMIT, xauth_inR1 }, @@ -1552,6 +1552,15 @@ process_packet(struct msg_digest **mdp) set_cur_state(st); + /* the XAUTH_STATUS message might have a new msgid */ + if (st->st_state == STATE_XAUTH_I1) + { + init_phase2_iv(st, &md->hdr.isa_msgid); + new_iv_set = TRUE; + from_state = st->st_state; + break; + } + if (!IS_ISAKMP_SA_ESTABLISHED(st->st_state)) { loglog(RC_LOG_SERIOUS, "ModeCfg message is unacceptable because" |