18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Michael MIC implementation - optimized for TKIP MIC operations 48c2ecf20Sopenharmony_ci * Copyright 2002-2003, Instant802 Networks, Inc. 58c2ecf20Sopenharmony_ci */ 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ci#ifndef MICHAEL_H 88c2ecf20Sopenharmony_ci#define MICHAEL_H 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#include <linux/types.h> 118c2ecf20Sopenharmony_ci#include <linux/ieee80211.h> 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci#define MICHAEL_MIC_LEN 8 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_cistruct michael_mic_ctx { 168c2ecf20Sopenharmony_ci u32 l, r; 178c2ecf20Sopenharmony_ci}; 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_civoid michael_mic(const u8 *key, struct ieee80211_hdr *hdr, 208c2ecf20Sopenharmony_ci const u8 *data, size_t data_len, u8 *mic); 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci#endif /* MICHAEL_H */ 23