conftypes.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /*
  2. * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
  3. *
  4. * Licensed under the Apache License 2.0 (the "License"). You may not use
  5. * this file except in compliance with the License. You can obtain a copy
  6. * in the file LICENSE in the source distribution or at
  7. * https://www.openssl.org/source/license.html
  8. */
  9. #ifndef OPENSSL_CONFTYPES_H
  10. # define OPENSSL_CONFTYPES_H
  11. # pragma once
  12. #ifndef OPENSSL_CONF_H
  13. # include <openssl/conf.h>
  14. #endif
  15. /*
  16. * The contents of this file are deprecated and will be made opaque
  17. */
  18. struct conf_method_st {
  19. const char *name;
  20. CONF *(*create) (CONF_METHOD *meth);
  21. int (*init) (CONF *conf);
  22. int (*destroy) (CONF *conf);
  23. int (*destroy_data) (CONF *conf);
  24. int (*load_bio) (CONF *conf, BIO *bp, long *eline);
  25. int (*dump) (const CONF *conf, BIO *bp);
  26. int (*is_number) (const CONF *conf, char c);
  27. int (*to_int) (const CONF *conf, char c);
  28. int (*load) (CONF *conf, const char *name, long *eline);
  29. };
  30. struct conf_st {
  31. CONF_METHOD *meth;
  32. void *meth_data;
  33. LHASH_OF(CONF_VALUE) *data;
  34. int flag_dollarid;
  35. int flag_abspath;
  36. char *includedir;
  37. OSSL_LIB_CTX *libctx;
  38. };
  39. #endif