diff options
Diffstat (limited to 'apps/include/function.h')
| -rw-r--r-- | apps/include/function.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/apps/include/function.h b/apps/include/function.h new file mode 100644 index 000000000000..14e8dd388670 --- /dev/null +++ b/apps/include/function.h @@ -0,0 +1,44 @@ +/* + * Copyright 2019-2020 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the Apache License 2.0 (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#ifndef OSSL_APPS_FUNCTION_H +# define OSSL_APPS_FUNCTION_H + +# include <openssl/lhash.h> +# include "opt.h" + +#define DEPRECATED_NO_ALTERNATIVE "unknown" + +typedef enum FUNC_TYPE { + FT_none, FT_general, FT_md, FT_cipher, FT_pkey, + FT_md_alg, FT_cipher_alg +} FUNC_TYPE; + +typedef struct function_st { + FUNC_TYPE type; + const char *name; + int (*func)(int argc, char *argv[]); + const OPTIONS *help; + const char *deprecated_alternative; + const char *deprecated_version; +} FUNCTION; + +DEFINE_LHASH_OF(FUNCTION); + +/* Structure to hold the number of columns to be displayed and the + * field width used to display them. + */ +typedef struct { + int columns; + int width; +} DISPLAY_COLUMNS; + +void calculate_columns(FUNCTION *functions, DISPLAY_COLUMNS *dc); + +#endif |
