OSSL_STORE_EXPECT(3ossl)

πŸ“¦ version 3.5.0, in opensuse-leap 16.0

πŸŽ€ NAME πŸŽ€

okay bestie, welcome to the OSSL_STORE_EXPECT(3ossl) page from OpenSSL β€” yes, that’s the manual name folded in right here πŸ’…. This trio is OSSL_STORE_expect, OSSL_STORE_supports_search, and OSSL_STORE_find, and their whole thing is: Specify what object type is expected. slay ✨


✨ SYNOPSIS ✨

#include <openssl/store.h>

int OSSL_STORE_expect(OSSL_STORE_CTX *ctx, int expected_type);

int OSSL_STORE_supports_search(OSSL_STORE_CTX *ctx, int criterion_type);

int OSSL_STORE_find(OSSL_STORE_CTX *ctx, OSSL_STORE_SEARCH *search);

πŸ’… DESCRIPTION πŸ’…

Okay so, OSSL_STORE_expect() is literally the filter bestie. It helps applications filter what OSSL_STORE_load() returns by specifying a OSSL_STORE_INFO type. By default, no expectations on the types of objects to be loaded are made β€” like, none at all, no cap 🫢.

expected_type may be 0 to indicate explicitly that no expectation is made, or it may be any of the known object types β€” see "SUPPORTED OBJECTS" in OSSL_STORE_INFO(3) β€” except for OSSL_STORE_INFO_NAME. Periodt. πŸ’–

Example moment: if "file:/foo/bar/store.pem" contains several objects of different type and only certificates are interesting, the application can simply say that it expects the type OSSL_STORE_INFO_CERT. iconic behavior πŸ‘‘

OSSL_STORE_find() helps applications specify a criterion for a more fine grained search of objects. iykyk πŸ”

OSSL_STORE_supports_search() checks if the loader of the given OSSL_STORE context supports the given search type. See "SUPPORTED CRITERION TYPES" in OSSL_STORE_SEARCH(3) for information on the supported search criterion types. vibe check complete βœ…

⚠️ timing tea: OSSL_STORE_expect() and OSSL_STORE_find must be called before the first OSSL_STORE_load() of a given session, or they will fail. Like, do not wait. fr fr 😭

πŸ¦‹ NOTES πŸ¦‹

If a more elaborate filter is required by the application, a better choice would be to use a post-processing function. See OSSL_STORE_open(3) for more information. big brain move 🧚

However, some loaders may take advantage of the knowledge of an expected type to make object retrieval more efficient, so if a single type is expected, this method is usually preferable. efficiency slay ⚑


🌸 RETURN VALUES 🌸

  • OSSL_STORE_expect() returns 1 on success, or 0 on failure. πŸ’–
  • OSSL_STORE_supports_search() returns 1 if the criterion is supported, or 0 otherwise. πŸŽ€
  • OSSL_STORE_find() returns 1 on success, or 0 on failure. ✨

🌈 SEE ALSO 🌈

the whole squad, honestly 🫢


⭐ HISTORY ⭐

OSSL_STORE_expect(), OSSL_STORE_supports_search() and OSSL_STORE_find() were added in OpenSSL 1.1.1. history lesson, but make it cute πŸ“š


Copyright 2018-2021 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>.

legal tea, but make it respectful πŸ’œ


mwah πŸ’‹ β€” this cutie is from version 3.5.0, dated 2026-09-25, and the manual page is OSSL_STORE_EXPECT(3ossl). bye bestie, go filter those objects πŸ¦‹βœ¨

πŸ“¦ where this page comes from