diff options
author | Greg Hudson <ghudson@mit.edu> | 2011-03-11 04:20:17 +0000 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2011-03-11 04:20:17 +0000 |
commit | e8720a1caf469a233feabfea7883c0b5146d08d6 (patch) | |
tree | 00780be006af72d3ebc9406b472115185e491390 /src/lib/crypto/openssl/des/string2key.c | |
parent | 01f37143f5623686b07b2ffa80e1564eb52f9ccc (diff) | |
download | krb5-e8720a1caf469a233feabfea7883c0b5146d08d6.tar.gz krb5-e8720a1caf469a233feabfea7883c0b5146d08d6.tar.xz krb5-e8720a1caf469a233feabfea7883c0b5146d08d6.zip |
Move the des and AFS string-to-key implementations into lib/crypto/krb,
since they aren't standard crypto primitives. Revise the module SPI
accordingly. Add tests for AFS string-to-key to t_str2key.c to replace
the ones in the (now defunct) t_afss2k.c.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@24699 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/crypto/openssl/des/string2key.c')
-rw-r--r-- | src/lib/crypto/openssl/des/string2key.c | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/src/lib/crypto/openssl/des/string2key.c b/src/lib/crypto/openssl/des/string2key.c deleted file mode 100644 index cd3e75935..000000000 --- a/src/lib/crypto/openssl/des/string2key.c +++ /dev/null @@ -1,52 +0,0 @@ -/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ -/* lib/crypto/openssl/des/string2key.c */ -/* - * Copyright (C) 2009 by the Massachusetts Institute of Technology. - * All rights reserved. - * - * Export of this software from the United States of America may - * require a specific license from the United States Government. - * It is the responsibility of any person or organization contemplating - * export to obtain such a license before exporting. - * - * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and - * distribute this software and its documentation for any purpose and - * without fee is hereby granted, provided that the above copyright - * notice appear in all copies and that both that copyright notice and - * this permission notice appear in supporting documentation, and that - * the name of M.I.T. not be used in advertising or publicity pertaining - * to distribution of the software without specific, written prior - * permission. Furthermore if you modify this software you must label - * your software as modified software and not distribute it in such a - * fashion that it might be confused with the original M.I.T. software. - * M.I.T. makes no representations about the suitability of - * this software for any purpose. It is provided "as is" without express - * or implied warranty. - */ - -#include "crypto_int.h" -#include <openssl/des.h> - -krb5_error_code -mit_des_string_to_key_int(krb5_keyblock *key, const krb5_data *pw, - const krb5_data *salt) -{ - DES_cblock outkey; - char *str; - krb5_data s = (salt == NULL) ? empty_data() : *salt; - - /* AFS string-to-key isn't implemented. */ - if (s.length == SALT_TYPE_AFS_LENGTH) - return KRB5_CRYPTO_INTERNAL; - - /* Concatenate password and salt. */ - if (asprintf(&str, "%.*s%.*s", pw->length, pw->data, s.length, s.data) < 0) - return ENOMEM; - DES_string_to_key(str, &outkey); - free(str); - if (key->length < sizeof(outkey)) - return KRB5_CRYPTO_INTERNAL; - key->length = sizeof(outkey); - memcpy(key->contents, outkey, key->length); - return 0; -} |