Deleted Added
full compact
g_eli_privacy.c (213067) g_eli_privacy.c (213070)
1/*-
2 * Copyright (c) 2005-2006 Pawel Jakub Dawidek <pjd@FreeBSD.org>
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 11 unchanged lines hidden (view full) ---

20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 */
26
27#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 2005-2006 Pawel Jakub Dawidek <pjd@FreeBSD.org>
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 11 unchanged lines hidden (view full) ---

20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 */
26
27#include <sys/cdefs.h>
28__FBSDID("$FreeBSD: head/sys/geom/eli/g_eli_privacy.c 213067 2010-09-23 11:49:47Z pjd $");
28__FBSDID("$FreeBSD: head/sys/geom/eli/g_eli_privacy.c 213070 2010-09-23 11:58:36Z pjd $");
29
30#include <sys/param.h>
31#include <sys/systm.h>
32#include <sys/kernel.h>
33#include <sys/linker.h>
34#include <sys/module.h>
35#include <sys/lock.h>
36#include <sys/mutex.h>

--- 217 unchanged lines hidden (view full) ---

254 crd->crd_flags = CRD_F_IV_EXPLICIT | CRD_F_IV_PRESENT;
255 if (sc->sc_nekeys > 1)
256 crd->crd_flags |= CRD_F_KEY_EXPLICIT;
257 if (bp->bio_cmd == BIO_WRITE)
258 crd->crd_flags |= CRD_F_ENCRYPT;
259 crd->crd_alg = sc->sc_ealgo;
260 crd->crd_key = g_eli_crypto_key(sc, dstoff, secsize);
261 crd->crd_klen = sc->sc_ekeylen;
29
30#include <sys/param.h>
31#include <sys/systm.h>
32#include <sys/kernel.h>
33#include <sys/linker.h>
34#include <sys/module.h>
35#include <sys/lock.h>
36#include <sys/mutex.h>

--- 217 unchanged lines hidden (view full) ---

254 crd->crd_flags = CRD_F_IV_EXPLICIT | CRD_F_IV_PRESENT;
255 if (sc->sc_nekeys > 1)
256 crd->crd_flags |= CRD_F_KEY_EXPLICIT;
257 if (bp->bio_cmd == BIO_WRITE)
258 crd->crd_flags |= CRD_F_ENCRYPT;
259 crd->crd_alg = sc->sc_ealgo;
260 crd->crd_key = g_eli_crypto_key(sc, dstoff, secsize);
261 crd->crd_klen = sc->sc_ekeylen;
262 if (sc->sc_ealgo == CRYPTO_AES_XTS)
263 crd->crd_klen <<= 1;
262 g_eli_crypto_ivgen(sc, dstoff, crd->crd_iv,
263 sizeof(crd->crd_iv));
264 crd->crd_next = NULL;
265
266 crp->crp_etype = 0;
267 err = crypto_dispatch(crp);
268 if (error == 0)
269 error = err;
270 }
271 if (bp->bio_error == 0)
272 bp->bio_error = error;
273}
264 g_eli_crypto_ivgen(sc, dstoff, crd->crd_iv,
265 sizeof(crd->crd_iv));
266 crd->crd_next = NULL;
267
268 crp->crp_etype = 0;
269 err = crypto_dispatch(crp);
270 if (error == 0)
271 error = err;
272 }
273 if (bp->bio_error == 0)
274 bp->bio_error = error;
275}