11cb0ef41Sopenharmony_ci/*
21cb0ef41Sopenharmony_ci * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
31cb0ef41Sopenharmony_ci *
41cb0ef41Sopenharmony_ci * Licensed under the Apache License 2.0 (the "License").  You may not use
51cb0ef41Sopenharmony_ci * this file except in compliance with the License.  You can obtain a copy
61cb0ef41Sopenharmony_ci * in the file LICENSE in the source distribution or at
71cb0ef41Sopenharmony_ci * https://www.openssl.org/source/license.html
81cb0ef41Sopenharmony_ci */
91cb0ef41Sopenharmony_ci
101cb0ef41Sopenharmony_ci#ifndef OPENSSL_RC4_H
111cb0ef41Sopenharmony_ci# define OPENSSL_RC4_H
121cb0ef41Sopenharmony_ci# pragma once
131cb0ef41Sopenharmony_ci
141cb0ef41Sopenharmony_ci# include <openssl/macros.h>
151cb0ef41Sopenharmony_ci# ifndef OPENSSL_NO_DEPRECATED_3_0
161cb0ef41Sopenharmony_ci#  define HEADER_RC4_H
171cb0ef41Sopenharmony_ci# endif
181cb0ef41Sopenharmony_ci
191cb0ef41Sopenharmony_ci# include <openssl/opensslconf.h>
201cb0ef41Sopenharmony_ci
211cb0ef41Sopenharmony_ci# ifndef OPENSSL_NO_RC4
221cb0ef41Sopenharmony_ci#  include <stddef.h>
231cb0ef41Sopenharmony_ci#  ifdef  __cplusplus
241cb0ef41Sopenharmony_ciextern "C" {
251cb0ef41Sopenharmony_ci#  endif
261cb0ef41Sopenharmony_ci
271cb0ef41Sopenharmony_ci#  ifndef OPENSSL_NO_DEPRECATED_3_0
281cb0ef41Sopenharmony_citypedef struct rc4_key_st {
291cb0ef41Sopenharmony_ci    RC4_INT x, y;
301cb0ef41Sopenharmony_ci    RC4_INT data[256];
311cb0ef41Sopenharmony_ci} RC4_KEY;
321cb0ef41Sopenharmony_ci#  endif
331cb0ef41Sopenharmony_ci#  ifndef OPENSSL_NO_DEPRECATED_3_0
341cb0ef41Sopenharmony_ciOSSL_DEPRECATEDIN_3_0 const char *RC4_options(void);
351cb0ef41Sopenharmony_ciOSSL_DEPRECATEDIN_3_0 void RC4_set_key(RC4_KEY *key, int len,
361cb0ef41Sopenharmony_ci                                       const unsigned char *data);
371cb0ef41Sopenharmony_ciOSSL_DEPRECATEDIN_3_0 void RC4(RC4_KEY *key, size_t len,
381cb0ef41Sopenharmony_ci                               const unsigned char *indata,
391cb0ef41Sopenharmony_ci                               unsigned char *outdata);
401cb0ef41Sopenharmony_ci#  endif
411cb0ef41Sopenharmony_ci
421cb0ef41Sopenharmony_ci#  ifdef  __cplusplus
431cb0ef41Sopenharmony_ci}
441cb0ef41Sopenharmony_ci#  endif
451cb0ef41Sopenharmony_ci# endif
461cb0ef41Sopenharmony_ci
471cb0ef41Sopenharmony_ci#endif
48