Print this page
3882 remove xmod & friends
@@ -49,11 +49,10 @@
#include <sys/note.h>
#include <modes/modes.h>
#define _DES_IMPL
#include <des/des_impl.h>
-/* EXPORT DELETE START */
#include <sys/types.h>
#include <rpc/des_crypt.h>
#include <des/des.h>
#ifdef sun_hardware
@@ -71,12 +70,10 @@
static int common_crypt(char *key, char *buf, size_t len,
unsigned int mode, struct desparams *desp);
extern int _des_crypt(char *buf, size_t len, struct desparams *desp);
-/* EXPORT DELETE END */
-
extern struct mod_ops mod_cryptoops;
/*
* Module linkage information for the kernel.
*/
@@ -95,19 +92,15 @@
&modlmisc,
&modlcrypto,
NULL
};
-/* EXPORT DELETE START */
-
#define DES_MIN_KEY_LEN DES_MINBYTES
#define DES_MAX_KEY_LEN DES_MAXBYTES
#define DES3_MIN_KEY_LEN DES3_MAXBYTES /* no CKK_DES2 support */
#define DES3_MAX_KEY_LEN DES3_MAXBYTES
-/* EXPORT DELETE END */
-
#ifndef DES_MIN_KEY_LEN
#define DES_MIN_KEY_LEN 0
#endif
#ifndef DES_MAX_KEY_LEN
@@ -309,18 +302,16 @@
/* ARGSUSED */
int
cbc_crypt(char *key, char *buf, size_t len, unsigned int mode, char *ivec)
{
int err = 0;
-/* EXPORT DELETE START */
struct desparams dp;
dp.des_mode = CBC;
COPY8(ivec, dp.des_ivec);
err = common_crypt(key, buf, len, mode, &dp);
COPY8(dp.des_ivec, ivec);
-/* EXPORT DELETE END */
return (err);
}
/*
@@ -329,22 +320,19 @@
/* ARGSUSED */
int
ecb_crypt(char *key, char *buf, size_t len, unsigned int mode)
{
int err = 0;
-/* EXPORT DELETE START */
struct desparams dp;
dp.des_mode = ECB;
err = common_crypt(key, buf, len, mode, &dp);
-/* EXPORT DELETE END */
return (err);
}
-/* EXPORT DELETE START */
/*
* Common code to cbc_crypt() & ecb_crypt()
*/
static int
common_crypt(char *key, char *buf, size_t len, unsigned int mode,
@@ -426,12 +414,10 @@
des_parity_fix(key->ck_data, strength, corrected_key);
des_init_keysched(corrected_key, strength, newbie);
return (CRYPTO_SUCCESS);
}
-/* EXPORT DELETE END */
-
/*
* KCF software provider control entry points.
*/
/* ARGSUSED */
static void
@@ -447,12 +433,10 @@
des_common_init(crypto_ctx_t *ctx, crypto_mechanism_t *mechanism,
crypto_key_t *key, crypto_spi_ctx_template_t template,
crypto_req_handle_t req)
{
-/* EXPORT DELETE START */
-
des_strength_t strength;
des_ctx_t *des_ctx = NULL;
int rv;
int kmflag;
@@ -502,12 +486,10 @@
return (rv);
}
ctx->cc_provider_private = des_ctx;
-/* EXPORT DELETE END */
-
return (CRYPTO_SUCCESS);
}
static void
des_copy_block64(uint8_t *in, uint64_t *out)
@@ -547,11 +529,10 @@
des_encrypt(crypto_ctx_t *ctx, crypto_data_t *plaintext,
crypto_data_t *ciphertext, crypto_req_handle_t req)
{
int ret;
-/* EXPORT DELETE START */
des_ctx_t *des_ctx;
/*
* Plaintext must be a multiple of the block size.
* This test only works for non-padded mechanisms
@@ -579,12 +560,10 @@
*/
ret = des_encrypt_update(ctx, plaintext, ciphertext, req);
ASSERT(des_ctx->dc_remainder_len == 0);
(void) des_free_context(ctx);
-/* EXPORT DELETE END */
-
/* LINTED */
return (ret);
}
/* ARGSUSED */
@@ -592,11 +571,10 @@
des_decrypt(crypto_ctx_t *ctx, crypto_data_t *ciphertext,
crypto_data_t *plaintext, crypto_req_handle_t req)
{
int ret;
-/* EXPORT DELETE START */
des_ctx_t *des_ctx;
/*
* Ciphertext must be a multiple of the block size.
* This test only works for non-padded mechanisms
@@ -624,12 +602,10 @@
*/
ret = des_decrypt_update(ctx, ciphertext, plaintext, req);
ASSERT(des_ctx->dc_remainder_len == 0);
(void) des_free_context(ctx);
-/* EXPORT DELETE END */
-
/* LINTED */
return (ret);
}
/* ARGSUSED */
@@ -639,12 +615,10 @@
{
off_t saved_offset;
size_t saved_length, out_len;
int ret = CRYPTO_SUCCESS;
-/* EXPORT DELETE START */
-
ASSERT(ctx->cc_provider_private != NULL);
DES_ARG_INPLACE(plaintext, ciphertext);
/* compute number of bytes that will hold the ciphertext */
@@ -691,12 +665,10 @@
} else {
ciphertext->cd_length = saved_length;
}
ciphertext->cd_offset = saved_offset;
-/* EXPORT DELETE END */
-
return (ret);
}
/* ARGSUSED */
static int
@@ -705,12 +677,10 @@
{
off_t saved_offset;
size_t saved_length, out_len;
int ret = CRYPTO_SUCCESS;
-/* EXPORT DELETE START */
-
ASSERT(ctx->cc_provider_private != NULL);
DES_ARG_INPLACE(ciphertext, plaintext);
/* compute number of bytes that will hold the plaintext */
@@ -757,23 +727,18 @@
} else {
plaintext->cd_length = saved_length;
}
plaintext->cd_offset = saved_offset;
-/* EXPORT DELETE END */
-
return (ret);
}
/* ARGSUSED */
static int
des_encrypt_final(crypto_ctx_t *ctx, crypto_data_t *ciphertext,
crypto_req_handle_t req)
{
-
-/* EXPORT DELETE START */
-
des_ctx_t *des_ctx;
ASSERT(ctx->cc_provider_private != NULL);
des_ctx = ctx->cc_provider_private;
@@ -786,23 +751,18 @@
return (CRYPTO_DATA_LEN_RANGE);
(void) des_free_context(ctx);
ciphertext->cd_length = 0;
-/* EXPORT DELETE END */
-
return (CRYPTO_SUCCESS);
}
/* ARGSUSED */
static int
des_decrypt_final(crypto_ctx_t *ctx, crypto_data_t *plaintext,
crypto_req_handle_t req)
{
-
-/* EXPORT DELETE START */
-
des_ctx_t *des_ctx;
ASSERT(ctx->cc_provider_private != NULL);
des_ctx = ctx->cc_provider_private;
@@ -815,12 +775,10 @@
return (CRYPTO_ENCRYPTED_DATA_LEN_RANGE);
(void) des_free_context(ctx);
plaintext->cd_length = 0;
-/* EXPORT DELETE END */
-
return (CRYPTO_SUCCESS);
}
/* ARGSUSED */
static int
@@ -829,12 +787,10 @@
crypto_key_t *key, crypto_data_t *plaintext, crypto_data_t *ciphertext,
crypto_spi_ctx_template_t template, crypto_req_handle_t req)
{
int ret;
-/* EXPORT DELETE START */
-
des_ctx_t des_ctx; /* on the stack */
des_strength_t strength;
off_t saved_offset;
size_t saved_length;
@@ -921,12 +877,10 @@
} else {
ciphertext->cd_length = saved_length;
}
ciphertext->cd_offset = saved_offset;
-/* EXPORT DELETE END */
-
/* LINTED */
return (ret);
}
/* ARGSUSED */
@@ -936,12 +890,10 @@
crypto_key_t *key, crypto_data_t *ciphertext, crypto_data_t *plaintext,
crypto_spi_ctx_template_t template, crypto_req_handle_t req)
{
int ret;
-/* EXPORT DELETE START */
-
des_ctx_t des_ctx; /* on the stack */
des_strength_t strength;
off_t saved_offset;
size_t saved_length;
@@ -1028,12 +980,10 @@
} else {
plaintext->cd_length = saved_length;
}
plaintext->cd_offset = saved_offset;
-/* EXPORT DELETE END */
-
/* LINTED */
return (ret);
}
/*
@@ -1044,12 +994,10 @@
des_create_ctx_template(crypto_provider_handle_t provider,
crypto_mechanism_t *mechanism, crypto_key_t *key,
crypto_spi_ctx_template_t *tmpl, size_t *tmpl_size, crypto_req_handle_t req)
{
-/* EXPORT DELETE START */
-
des_strength_t strength;
void *keysched;
size_t size;
int rv;
@@ -1086,22 +1034,17 @@
}
*tmpl = keysched;
*tmpl_size = size;
-/* EXPORT DELETE END */
-
return (CRYPTO_SUCCESS);
}
/* ARGSUSED */
static int
des_free_context(crypto_ctx_t *ctx)
{
-
-/* EXPORT DELETE START */
-
des_ctx_t *des_ctx = ctx->cc_provider_private;
if (des_ctx != NULL) {
if (des_ctx->dc_flags & PROVIDER_OWNS_KEY_SCHEDULE) {
ASSERT(des_ctx->dc_keysched_len != 0);
@@ -1111,12 +1054,10 @@
}
crypto_free_mode_ctx(des_ctx);
ctx->cc_provider_private = NULL;
}
-/* EXPORT DELETE END */
-
return (CRYPTO_SUCCESS);
}
/*
* Pass it to des_keycheck() which will
@@ -1125,13 +1066,10 @@
/* ARGSUSED */
static int
des_key_check(crypto_provider_handle_t pd, crypto_mechanism_t *mech,
crypto_key_t *key)
{
-
-/* EXPORT DELETE START */
-
int expectedkeylen;
des_strength_t strength;
uint8_t keydata[DES3_MAX_KEY_LEN];
if ((mech == NULL) || (key == NULL))
@@ -1161,12 +1099,10 @@
bcopy(key->ck_data, keydata, CRYPTO_BITS2BYTES(expectedkeylen));
if (des_keycheck(keydata, strength, key->ck_data) == B_FALSE)
return (CRYPTO_WEAK_KEY);
-/* EXPORT DELETE END */
-
return (CRYPTO_SUCCESS);
}
/* ARGSUSED */
static int
@@ -1174,12 +1110,10 @@
crypto_mechanism_t *mechanism, crypto_key_t *key, des_strength_t strength,
int kmflag)
{
int rv = CRYPTO_SUCCESS;
-/* EXPORT DELETE START */
-
void *keysched;
size_t size;
if (template == NULL) {
if ((keysched = des_alloc_keysched(&size, strength,
@@ -1220,9 +1154,7 @@
bzero(keysched, size);
kmem_free(keysched, size);
}
}
-/* EXPORT DELETE END */
-
return (rv);
}