linux/include/keys/asymmetric-parser.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2/* Asymmetric public-key cryptography data parser
   3 *
   4 * See Documentation/crypto/asymmetric-keys.txt
   5 *
   6 * Copyright (C) 2012 Red Hat, Inc. All Rights Reserved.
   7 * Written by David Howells (dhowells@redhat.com)
   8 */
   9
  10#ifndef _KEYS_ASYMMETRIC_PARSER_H
  11#define _KEYS_ASYMMETRIC_PARSER_H
  12
  13/*
  14 * Key data parser.  Called during key instantiation.
  15 */
  16struct asymmetric_key_parser {
  17        struct list_head        link;
  18        struct module           *owner;
  19        const char              *name;
  20
  21        /* Attempt to parse a key from the data blob passed to add_key() or
  22         * keyctl_instantiate().  Should also generate a proposed description
  23         * that the caller can optionally use for the key.
  24         *
  25         * Return EBADMSG if not recognised.
  26         */
  27        int (*parse)(struct key_preparsed_payload *prep);
  28};
  29
  30extern int register_asymmetric_key_parser(struct asymmetric_key_parser *);
  31extern void unregister_asymmetric_key_parser(struct asymmetric_key_parser *);
  32
  33#endif /* _KEYS_ASYMMETRIC_PARSER_H */
  34