]>
git.ipfire.org Git - thirdparty/openssl.git/blob - include/internal/bio.h
2 * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
4 * Licensed under the OpenSSL license (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
10 #include <openssl/bio.h>
12 struct bio_method_st
{
15 int (*bwrite
) (BIO
*, const char *, size_t, size_t *);
16 int (*bwrite_old
) (BIO
*, const char *, int);
17 int (*bread
) (BIO
*, char *, size_t, size_t *);
18 int (*bread_old
) (BIO
*, char *, int);
19 int (*bputs
) (BIO
*, const char *);
20 int (*bgets
) (BIO
*, char *, int);
21 long (*ctrl
) (BIO
*, int, long, void *);
22 int (*create
) (BIO
*);
23 int (*destroy
) (BIO
*);
24 long (*callback_ctrl
) (BIO
*, int, BIO_info_cb
*);
27 void bio_free_ex_data(BIO
*bio
);
28 void bio_cleanup(void);
31 /* Old style to new style BIO_METHOD conversion functions */
32 int bwrite_conv(BIO
*bio
, const char *data
, size_t datal
, size_t *written
);
33 int bread_conv(BIO
*bio
, char *data
, size_t datal
, size_t *read
);