diff options
author | rwatson <rwatson@FreeBSD.org> | 2007-08-06 14:26:03 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2007-08-06 14:26:03 +0000 |
commit | 23574c86734ab5cb088584d30345e698cbbeaef2 (patch) | |
tree | 63e9e0c42ec5669b83e25b5f9cbdcbee7e1be6dc /sys/netipsec | |
parent | 5f4b9d20fc4bf36bf86f78bb1622ee474a93dc56 (diff) | |
download | FreeBSD-src-23574c86734ab5cb088584d30345e698cbbeaef2.zip FreeBSD-src-23574c86734ab5cb088584d30345e698cbbeaef2.tar.gz |
Remove the now-unused NET_{LOCK,UNLOCK,ASSERT}_GIANT() macros, which
previously conditionally acquired Giant based on debug.mpsafenet. As that
has now been removed, they are no longer required. Removing them
significantly simplifies error-handling in the socket layer, eliminated
quite a bit of unwinding of locking in error cases.
While here clean up the now unneeded opt_net.h, which previously was used
for the NET_WITH_GIANT kernel option. Clean up some related gotos for
consistency.
Reviewed by: bz, csjp
Tested by: kris
Approved by: re (kensmith)
Diffstat (limited to 'sys/netipsec')
-rw-r--r-- | sys/netipsec/xform_ah.c | 10 | ||||
-rw-r--r-- | sys/netipsec/xform_esp.c | 10 | ||||
-rw-r--r-- | sys/netipsec/xform_ipcomp.c | 10 |
3 files changed, 0 insertions, 30 deletions
diff --git a/sys/netipsec/xform_ah.c b/sys/netipsec/xform_ah.c index da8f666..99236a8 100644 --- a/sys/netipsec/xform_ah.c +++ b/sys/netipsec/xform_ah.c @@ -735,8 +735,6 @@ ah_input_cb(struct cryptop *crp) caddr_t ptr; int authsize; - NET_LOCK_GIANT(); - crd = crp->crp_desc; tc = (struct tdb_crypto *) crp->crp_opaque; @@ -769,7 +767,6 @@ ah_input_cb(struct cryptop *crp) if (crp->crp_etype == EAGAIN) { error = crypto_dispatch(crp); - NET_UNLOCK_GIANT(); return error; } @@ -863,7 +860,6 @@ ah_input_cb(struct cryptop *crp) IPSEC_COMMON_INPUT_CB(m, sav, skip, protoff, mtag); KEY_FREESAV(&sav); - NET_UNLOCK_GIANT(); return error; bad: if (sav) @@ -874,7 +870,6 @@ bad: free(tc, M_XDATA); if (crp != NULL) crypto_freereq(crp); - NET_UNLOCK_GIANT(); return error; } @@ -1125,8 +1120,6 @@ ah_output_cb(struct cryptop *crp) caddr_t ptr; int err; - NET_LOCK_GIANT(); - tc = (struct tdb_crypto *) crp->crp_opaque; IPSEC_ASSERT(tc != NULL, ("null opaque data area!")); skip = tc->tc_skip; @@ -1154,7 +1147,6 @@ ah_output_cb(struct cryptop *crp) KEY_FREESAV(&sav); IPSECREQUEST_UNLOCK(isr); error = crypto_dispatch(crp); - NET_UNLOCK_GIANT(); return error; } @@ -1201,7 +1193,6 @@ ah_output_cb(struct cryptop *crp) err = ipsec_process_done(m, isr); KEY_FREESAV(&sav); IPSECREQUEST_UNLOCK(isr); - NET_UNLOCK_GIANT(); return err; bad: if (sav) @@ -1211,7 +1202,6 @@ bad: m_freem(m); free(tc, M_XDATA); crypto_freereq(crp); - NET_UNLOCK_GIANT(); return error; } diff --git a/sys/netipsec/xform_esp.c b/sys/netipsec/xform_esp.c index 36bd01e..1900980 100644 --- a/sys/netipsec/xform_esp.c +++ b/sys/netipsec/xform_esp.c @@ -462,8 +462,6 @@ esp_input_cb(struct cryptop *crp) struct secasindex *saidx; caddr_t ptr; - NET_LOCK_GIANT(); - crd = crp->crp_desc; IPSEC_ASSERT(crd != NULL, ("null crypto descriptor!")); @@ -501,7 +499,6 @@ esp_input_cb(struct cryptop *crp) if (crp->crp_etype == EAGAIN) { KEY_FREESAV(&sav); error = crypto_dispatch(crp); - NET_UNLOCK_GIANT(); return error; } @@ -631,7 +628,6 @@ esp_input_cb(struct cryptop *crp) IPSEC_COMMON_INPUT_CB(m, sav, skip, protoff, mtag); KEY_FREESAV(&sav); - NET_UNLOCK_GIANT(); return error; bad: if (sav) @@ -642,7 +638,6 @@ bad: free(tc, M_XDATA); if (crp != NULL) crypto_freereq(crp); - NET_UNLOCK_GIANT(); return error; } @@ -896,8 +891,6 @@ esp_output_cb(struct cryptop *crp) struct mbuf *m; int err, error; - NET_LOCK_GIANT(); - tc = (struct tdb_crypto *) crp->crp_opaque; IPSEC_ASSERT(tc != NULL, ("null opaque data area!")); m = (struct mbuf *) crp->crp_buf; @@ -926,7 +919,6 @@ esp_output_cb(struct cryptop *crp) KEY_FREESAV(&sav); IPSECREQUEST_UNLOCK(isr); error = crypto_dispatch(crp); - NET_UNLOCK_GIANT(); return error; } @@ -973,7 +965,6 @@ esp_output_cb(struct cryptop *crp) err = ipsec_process_done(m, isr); KEY_FREESAV(&sav); IPSECREQUEST_UNLOCK(isr); - NET_UNLOCK_GIANT(); return err; bad: if (sav) @@ -983,7 +974,6 @@ bad: m_freem(m); free(tc, M_XDATA); crypto_freereq(crp); - NET_UNLOCK_GIANT(); return error; } diff --git a/sys/netipsec/xform_ipcomp.c b/sys/netipsec/xform_ipcomp.c index 6885584..142a731 100644 --- a/sys/netipsec/xform_ipcomp.c +++ b/sys/netipsec/xform_ipcomp.c @@ -219,8 +219,6 @@ ipcomp_input_cb(struct cryptop *crp) u_int8_t nproto; caddr_t addr; - NET_LOCK_GIANT(); - crd = crp->crp_desc; tc = (struct tdb_crypto *) crp->crp_opaque; @@ -252,7 +250,6 @@ ipcomp_input_cb(struct cryptop *crp) if (crp->crp_etype == EAGAIN) { KEY_FREESAV(&sav); error = crypto_dispatch(crp); - NET_UNLOCK_GIANT(); return error; } @@ -306,7 +303,6 @@ ipcomp_input_cb(struct cryptop *crp) IPSEC_COMMON_INPUT_CB(m, sav, skip, protoff, NULL); KEY_FREESAV(&sav); - NET_UNLOCK_GIANT(); return error; bad: if (sav) @@ -317,7 +313,6 @@ bad: free(tc, M_XDATA); if (crp) crypto_freereq(crp); - NET_UNLOCK_GIANT(); return error; } @@ -499,8 +494,6 @@ ipcomp_output_cb(struct cryptop *crp) struct mbuf *m; int error, skip, rlen; - NET_LOCK_GIANT(); - tc = (struct tdb_crypto *) crp->crp_opaque; IPSEC_ASSERT(tc != NULL, ("null opaque data area!")); m = (struct mbuf *) crp->crp_buf; @@ -528,7 +521,6 @@ ipcomp_output_cb(struct cryptop *crp) KEY_FREESAV(&sav); IPSECREQUEST_UNLOCK(isr); error = crypto_dispatch(crp); - NET_UNLOCK_GIANT(); return error; } ipcompstat.ipcomps_noxform++; @@ -582,7 +574,6 @@ ipcomp_output_cb(struct cryptop *crp) error = ipsec_process_done(m, isr); KEY_FREESAV(&sav); IPSECREQUEST_UNLOCK(isr); - NET_UNLOCK_GIANT(); return error; bad: if (sav) @@ -592,7 +583,6 @@ bad: m_freem(m); free(tc, M_XDATA); crypto_freereq(crp); - NET_UNLOCK_GIANT(); return error; } |