18d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt/*
28d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * Diffie-Hellman group 5 operations
304949598a23f501be6eec21697465fd46a28840aDmitry Shmidt * Copyright (c) 2009, 2012, Jouni Malinen <j@w1.fi>
48d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt *
5c5ec7f57ead87efa365800228aa0b09a12d9e6c4Dmitry Shmidt * This software may be distributed under the terms of the BSD license.
6c5ec7f57ead87efa365800228aa0b09a12d9e6c4Dmitry Shmidt * See README for more details.
78d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt */
88d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
98d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#include "includes.h"
108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#include "common.h"
128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#include "dh_groups.h"
138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#include "dh_group5.h"
148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtvoid * dh5_init(struct wpabuf **priv, struct wpabuf **publ)
178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{
188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	*publ = dh_init(dh_groups_get(5), priv);
191f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidt	if (*publ == NULL)
208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt		return NULL;
218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	return (void *) 1;
228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt}
238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2504949598a23f501be6eec21697465fd46a28840aDmitry Shmidtvoid * dh5_init_fixed(const struct wpabuf *priv, const struct wpabuf *publ)
2604949598a23f501be6eec21697465fd46a28840aDmitry Shmidt{
2704949598a23f501be6eec21697465fd46a28840aDmitry Shmidt	return (void *) 1;
2804949598a23f501be6eec21697465fd46a28840aDmitry Shmidt}
2904949598a23f501be6eec21697465fd46a28840aDmitry Shmidt
3004949598a23f501be6eec21697465fd46a28840aDmitry Shmidt
318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstruct wpabuf * dh5_derive_shared(void *ctx, const struct wpabuf *peer_public,
328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt				  const struct wpabuf *own_private)
338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{
348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	return dh_derive_shared(peer_public, own_private, dh_groups_get(5));
358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt}
368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtvoid dh5_free(void *ctx)
398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{
408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt}
41