1=pod 2 3=head1 NAME 4 5OSSL_ITEM - OpenSSL Core type for generic itemized data 6 7=head1 SYNOPSIS 8 9 #include <openssl/core.h> 10 11 typedef struct ossl_item_st OSSL_ITEM; 12 struct ossl_item_st { 13 unsigned int id; 14 void *ptr; 15 }; 16 17=head1 DESCRIPTION 18 19This type is a tuple of integer and pointer. 20It's a generic type used as a generic descriptor, its exact meaning 21being defined by how it's used. 22Arrays of this type are passed between the OpenSSL libraries and the 23providers, and must be terminated with a tuple where the integer is 24zero and the pointer NULL. 25 26This is currently mainly used for the return value of the provider's error 27reason strings array, see L<provider-base(7)/Provider Functions>. 28 29=begin comment RETURN VALUES doesn't make sense for a manual that only 30describes a type, but document checkers still want that section, and 31to have more than just the section title. 32 33=head1 RETURN VALUES 34 35txt 36 37=end comment 38 39=head1 SEE ALSO 40 41L<crypto(7)>, L<provider-base(7)>, L<openssl-core.h(7)> 42 43=head1 HISTORY 44 45B<OSSL_ITEM> was added in OpenSSL 3.0 46 47=head1 COPYRIGHT 48 49Copyright 2022 The OpenSSL Project Authors. All Rights Reserved. 50 51Licensed under the Apache License 2.0 (the "License"). You may not use 52this file except in compliance with the License. You can obtain a copy 53in the file LICENSE in the source distribution or at 54L<https://www.openssl.org/source/license.html>. 55 56=cut 57