diff options
author | pjd <pjd@FreeBSD.org> | 2008-08-09 19:43:44 +0000 |
---|---|---|
committer | pjd <pjd@FreeBSD.org> | 2008-08-09 19:43:44 +0000 |
commit | c14f239009f6a9eaac1b6cc3d1f7da686e0cbff2 (patch) | |
tree | 3d132c0c975095ea38139f647e9a7c98ab827ab5 /sys/crypto | |
parent | 1be547932b035d1775c66c5f17b6a67174c5e575 (diff) | |
download | FreeBSD-src-c14f239009f6a9eaac1b6cc3d1f7da686e0cbff2.zip FreeBSD-src-c14f239009f6a9eaac1b6cc3d1f7da686e0cbff2.tar.gz |
When freeing session, restore its ID after zeroing memory.
Bug tracked down by: Patrick Lamaiziere <patfbsd@davenulle.org>
Diffstat (limited to 'sys/crypto')
-rw-r--r-- | sys/crypto/via/padlock.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/crypto/via/padlock.c b/sys/crypto/via/padlock.c index 9818f3e..c8e398d 100644 --- a/sys/crypto/via/padlock.c +++ b/sys/crypto/via/padlock.c @@ -272,6 +272,7 @@ padlock_freesession(device_t dev, uint64_t tid) padlock_hash_free(ses); bzero(ses, sizeof(*ses)); ses->ses_used = 0; + ses->ses_id = sid; TAILQ_INSERT_HEAD(&sc->sc_sessions, ses, ses_next); rw_wunlock(&sc->sc_sessions_lock); return (0); |