cryptosoft.c (285247) | cryptosoft.c (286292) |
---|---|
1/* $OpenBSD: cryptosoft.c,v 1.35 2002/04/26 08:43:50 deraadt Exp $ */ 2 3/*- 4 * The author of this code is Angelos D. Keromytis (angelos@cis.upenn.edu) 5 * Copyright (c) 2002-2006 Sam Leffler, Errno Consulting 6 * 7 * This code was written by Angelos D. Keromytis in Athens, Greece, in 8 * February 2000. Network Security Technologies Inc. (NSTI) kindly --- 15 unchanged lines hidden (view full) --- 24 * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR 25 * IMPLIED WARRANTY. IN PARTICULAR, NONE OF THE AUTHORS MAKES ANY 26 * REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE 27 * MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR 28 * PURPOSE. 29 */ 30 31#include <sys/cdefs.h> | 1/* $OpenBSD: cryptosoft.c,v 1.35 2002/04/26 08:43:50 deraadt Exp $ */ 2 3/*- 4 * The author of this code is Angelos D. Keromytis (angelos@cis.upenn.edu) 5 * Copyright (c) 2002-2006 Sam Leffler, Errno Consulting 6 * 7 * This code was written by Angelos D. Keromytis in Athens, Greece, in 8 * February 2000. Network Security Technologies Inc. (NSTI) kindly --- 15 unchanged lines hidden (view full) --- 24 * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR 25 * IMPLIED WARRANTY. IN PARTICULAR, NONE OF THE AUTHORS MAKES ANY 26 * REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE 27 * MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR 28 * PURPOSE. 29 */ 30 31#include <sys/cdefs.h> |
32__FBSDID("$FreeBSD: head/sys/opencrypto/cryptosoft.c 285247 2015-07-07 18:45:32Z jmg $"); | 32__FBSDID("$FreeBSD: head/sys/opencrypto/cryptosoft.c 286292 2015-08-04 17:47:11Z jmg $"); |
33 34#include <sys/param.h> 35#include <sys/systm.h> 36#include <sys/malloc.h> 37#include <sys/mbuf.h> 38#include <sys/module.h> 39#include <sys/sysctl.h> 40#include <sys/errno.h> --- 665 unchanged lines hidden (view full) --- 706static int 707swcr_newsession(device_t dev, u_int32_t *sid, struct cryptoini *cri) 708{ 709 struct swcr_data **swd; 710 struct auth_hash *axf; 711 struct enc_xform *txf; 712 struct comp_algo *cxf; 713 u_int32_t i; | 33 34#include <sys/param.h> 35#include <sys/systm.h> 36#include <sys/malloc.h> 37#include <sys/mbuf.h> 38#include <sys/module.h> 39#include <sys/sysctl.h> 40#include <sys/errno.h> --- 665 unchanged lines hidden (view full) --- 706static int 707swcr_newsession(device_t dev, u_int32_t *sid, struct cryptoini *cri) 708{ 709 struct swcr_data **swd; 710 struct auth_hash *axf; 711 struct enc_xform *txf; 712 struct comp_algo *cxf; 713 u_int32_t i; |
714 int len; |
|
714 int error; 715 716 if (sid == NULL || cri == NULL) 717 return EINVAL; 718 719 rw_wlock(&swcr_sessions_lock); 720 if (swcr_sessions) { 721 for (i = 1; i < swcr_sesnum; i++) --- 201 unchanged lines hidden (view full) --- 923 924 case CRYPTO_AES_192_NIST_GMAC: 925 axf = &auth_hash_nist_gmac_aes_192; 926 goto auth4common; 927 928 case CRYPTO_AES_256_NIST_GMAC: 929 axf = &auth_hash_nist_gmac_aes_256; 930 auth4common: | 715 int error; 716 717 if (sid == NULL || cri == NULL) 718 return EINVAL; 719 720 rw_wlock(&swcr_sessions_lock); 721 if (swcr_sessions) { 722 for (i = 1; i < swcr_sesnum; i++) --- 201 unchanged lines hidden (view full) --- 924 925 case CRYPTO_AES_192_NIST_GMAC: 926 axf = &auth_hash_nist_gmac_aes_192; 927 goto auth4common; 928 929 case CRYPTO_AES_256_NIST_GMAC: 930 axf = &auth_hash_nist_gmac_aes_256; 931 auth4common: |
932 len = cri->cri_klen / 8; 933 if (len != 16 && len != 24 && len != 32) 934 return EINVAL; 935 |
|
931 (*swd)->sw_ictx = malloc(axf->ctxsize, M_CRYPTO_DATA, 932 M_NOWAIT); 933 if ((*swd)->sw_ictx == NULL) { 934 swcr_freesession_locked(dev, i); 935 rw_runlock(&swcr_sessions_lock); 936 return ENOBUFS; 937 } 938 axf->Init((*swd)->sw_ictx); | 936 (*swd)->sw_ictx = malloc(axf->ctxsize, M_CRYPTO_DATA, 937 M_NOWAIT); 938 if ((*swd)->sw_ictx == NULL) { 939 swcr_freesession_locked(dev, i); 940 rw_runlock(&swcr_sessions_lock); 941 return ENOBUFS; 942 } 943 axf->Init((*swd)->sw_ictx); |
939 axf->Setkey((*swd)->sw_ictx, cri->cri_key, 940 cri->cri_klen / 8); | 944 axf->Setkey((*swd)->sw_ictx, cri->cri_key, len); |
941 (*swd)->sw_axf = axf; 942 break; 943 944 case CRYPTO_DEFLATE_COMP: 945 cxf = &comp_algo_deflate; 946 (*swd)->sw_cxf = cxf; 947 break; 948 default: --- 343 unchanged lines hidden --- | 945 (*swd)->sw_axf = axf; 946 break; 947 948 case CRYPTO_DEFLATE_COMP: 949 cxf = &comp_algo_deflate; 950 (*swd)->sw_cxf = cxf; 951 break; 952 default: --- 343 unchanged lines hidden --- |