1 /* SPDX-License-Identifier: GPL-2.0-or-later * << 2 /* Asymmetric public-key cryptography data par 1 /* Asymmetric public-key cryptography data parser 3 * 2 * 4 * See Documentation/crypto/asymmetric-keys.rs !! 3 * See Documentation/crypto/asymmetric-keys.txt 5 * 4 * 6 * Copyright (C) 2012 Red Hat, Inc. All Rights 5 * Copyright (C) 2012 Red Hat, Inc. All Rights Reserved. 7 * Written by David Howells (dhowells@redhat.c 6 * Written by David Howells (dhowells@redhat.com) >> 7 * >> 8 * This program is free software; you can redistribute it and/or >> 9 * modify it under the terms of the GNU General Public Licence >> 10 * as published by the Free Software Foundation; either version >> 11 * 2 of the Licence, or (at your option) any later version. 8 */ 12 */ 9 13 10 #ifndef _KEYS_ASYMMETRIC_PARSER_H 14 #ifndef _KEYS_ASYMMETRIC_PARSER_H 11 #define _KEYS_ASYMMETRIC_PARSER_H 15 #define _KEYS_ASYMMETRIC_PARSER_H 12 << 13 struct key_preparsed_payload; << 14 16 15 /* 17 /* 16 * Key data parser. Called during key instant 18 * Key data parser. Called during key instantiation. 17 */ 19 */ 18 struct asymmetric_key_parser { 20 struct asymmetric_key_parser { 19 struct list_head link; 21 struct list_head link; 20 struct module *owner; 22 struct module *owner; 21 const char *name; 23 const char *name; 22 24 23 /* Attempt to parse a key from the dat 25 /* Attempt to parse a key from the data blob passed to add_key() or 24 * keyctl_instantiate(). Should also 26 * keyctl_instantiate(). Should also generate a proposed description 25 * that the caller can optionally use 27 * that the caller can optionally use for the key. 26 * 28 * 27 * Return EBADMSG if not recognised. 29 * Return EBADMSG if not recognised. 28 */ 30 */ 29 int (*parse)(struct key_preparsed_payl 31 int (*parse)(struct key_preparsed_payload *prep); 30 }; 32 }; 31 33 32 extern int register_asymmetric_key_parser(stru 34 extern int register_asymmetric_key_parser(struct asymmetric_key_parser *); 33 extern void unregister_asymmetric_key_parser(s 35 extern void unregister_asymmetric_key_parser(struct asymmetric_key_parser *); 34 36 35 #endif /* _KEYS_ASYMMETRIC_PARSER_H */ 37 #endif /* _KEYS_ASYMMETRIC_PARSER_H */ 36 38
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.