Option to set current cert to server certificate.
[openssl.git] / crypto / ecdh / ech_key.c
index d2fd363168862f107e23f6a60a80192649b2675d..ebd56ee2c9cf868cbc0604b0f611b99740f2ad66 100644 (file)
@@ -9,25 +9,12 @@
  * The ECC Code is licensed pursuant to the OpenSSL open source
  * license provided below.
  *
- * In addition, Sun covenants to all licensees who provide a reciprocal
- * covenant with respect to their own patents if any, not to sue under
- * current and future patent claims necessarily infringed by the making,
- * using, practicing, selling, offering for sale and/or otherwise
- * disposing of the ECC Code as delivered hereunder (or portions thereof),
- * provided that such covenant shall not apply:
- *  1) for code that a licensee deletes from the ECC Code;
- *  2) separates from the ECC Code; or
- *  3) for infringements caused by:
- *       i) the modification of the ECC Code or
- *      ii) the combination of the ECC Code with other software or
- *          devices where such combination causes the infringement.
- *
  * The ECDH software is originally written by Douglas Stebila of
  * Sun Microsystems Laboratories.
  *
  */
 /* ====================================================================
- * Copyright (c) 1998-2002 The OpenSSL Project.  All rights reserved.
+ * Copyright (c) 1998-2003 The OpenSSL Project.  All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  *
  */
 
-#include "ecdh.h"
-#include <openssl/engine.h>
+#define OPENSSL_FIPSAPI
+
+#include "ech_locl.h"
 
-int ECDH_compute_key(unsigned char *key, const EC_POINT *pub_key, EC_KEY *eckey)
+int ECDH_compute_key(void *out, size_t outlen, const EC_POINT *pub_key,
+       EC_KEY *eckey,
+       void *(*KDF)(const void *in, size_t inlen, void *out, size_t *outlen))
 {
        ECDH_DATA *ecdh = ecdh_check(eckey);
        if (ecdh == NULL)
-               return NULL;
-       return ecdh->meth->compute_key(key, pub_key, eckey);
+               return 0;
+       return ecdh->meth->compute_key(out, outlen, pub_key, eckey, KDF);
 }