Home | History | Annotate | Download | only in crypto
      1 /*
      2  * Diffie-Hellman group 5 operations
      3  * Copyright (c) 2009, 2012, Jouni Malinen <j (at) w1.fi>
      4  *
      5  * This software may be distributed under the terms of the BSD license.
      6  * See README for more details.
      7  */
      8 
      9 #include "includes.h"
     10 
     11 #include "common.h"
     12 #include "dh_groups.h"
     13 #include "dh_group5.h"
     14 
     15 
     16 void * dh5_init(struct wpabuf **priv, struct wpabuf **publ)
     17 {
     18 	wpabuf_free(*publ);
     19 	*publ = dh_init(dh_groups_get(5), priv);
     20 	if (*publ == NULL)
     21 		return NULL;
     22 	return (void *) 1;
     23 }
     24 
     25 
     26 void * dh5_init_fixed(const struct wpabuf *priv, const struct wpabuf *publ)
     27 {
     28 	return (void *) 1;
     29 }
     30 
     31 
     32 struct wpabuf * dh5_derive_shared(void *ctx, const struct wpabuf *peer_public,
     33 				  const struct wpabuf *own_private)
     34 {
     35 	return dh_derive_shared(peer_public, own_private, dh_groups_get(5));
     36 }
     37 
     38 
     39 void dh5_free(void *ctx)
     40 {
     41 }
     42