summaryrefslogtreecommitdiff
path: root/sys/netinet
diff options
context:
space:
mode:
authorAngelos D. Keromytis <angelos@cvs.openbsd.org>2001-05-27 03:56:00 +0000
committerAngelos D. Keromytis <angelos@cvs.openbsd.org>2001-05-27 03:56:00 +0000
commit6214cd2d275c557c8688d434c2918a9a8e4cfa55 (patch)
tree67153a0e5fee29d75e2b25a0e2ec6b1ab56d9b61 /sys/netinet
parent90471aa69484dabe67f36001572fdc7f11b11695 (diff)
Also copy the authentication material to the new socket.
Diffstat (limited to 'sys/netinet')
-rw-r--r--sys/netinet/tcp_input.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c
index 4d0403fc009..8e32c574f82 100644
--- a/sys/netinet/tcp_input.c
+++ b/sys/netinet/tcp_input.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tcp_input.c,v 1.90 2001/05/27 03:16:10 angelos Exp $ */
+/* $OpenBSD: tcp_input.c,v 1.91 2001/05/27 03:55:59 angelos Exp $ */
/* $NetBSD: tcp_input.c,v 1.23 1996/02/13 23:43:44 christos Exp $ */
/*
@@ -710,19 +710,23 @@ findpcb:
newinp->inp_secrequire = inp->inp_secrequire;
if (inp->inp_ipsec_localid != NULL) {
newinp->inp_ipsec_localid = inp->inp_ipsec_localid;
- newinp->inp_ipsec_localid->ref_count++;
+ inp->inp_ipsec_localid->ref_count++;
}
if (inp->inp_ipsec_remoteid != NULL) {
newinp->inp_ipsec_remoteid = inp->inp_ipsec_remoteid;
- newinp->inp_ipsec_remoteid->ref_count++;
+ inp->inp_ipsec_remoteid->ref_count++;
}
if (inp->inp_ipsec_localcred != NULL) {
newinp->inp_ipsec_localcred = inp->inp_ipsec_localcred;
- newinp->inp_ipsec_localcred->ref_count++;
+ inp->inp_ipsec_localcred->ref_count++;
}
if (inp->inp_ipsec_remotecred != NULL) {
newinp->inp_ipsec_remotecred = inp->inp_ipsec_remotecred;
- newinp->inp_ipsec_remotecred->ref_count++;
+ inp->inp_ipsec_remotecred->ref_count++;
+ }
+ if (inp->inp_ipsec_auth != NULL) {
+ newinp->inp_ipsec_auth = inp->inp_ipsec_auth;
+ inp->inp_ipsec_auth->ref_count++;
}
}
#endif /* IPSEC */