/*
- * Copyright 2005-2022 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2005-2023 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
#include "internal/e_os.h"
#include "internal/sockets.h"
+#include "internal/bio_addr.h"
/* BEGIN BIO_ADDRINFO/BIO_ADDR stuff. */
struct bio_addrinfo_st *bai_next;
};
# endif
-
-union bio_addr_st {
- struct sockaddr sa;
-# if OPENSSL_USE_IPV6
- struct sockaddr_in6 s_in6;
-# endif
- struct sockaddr_in s_in;
-# ifndef OPENSSL_NO_UNIX_SOCK
- struct sockaddr_un s_un;
-# endif
-};
#endif
/* END BIO_ADDRINFO/BIO_ADDR stuff. */
uint64_t num_read;
uint64_t num_write;
CRYPTO_EX_DATA ex_data;
- CRYPTO_RWLOCK *lock;
};
#ifndef OPENSSL_NO_SOCK
# endif
#endif
-extern CRYPTO_RWLOCK *bio_type_lock;
+extern CRYPTO_REF_COUNT bio_type_count;
void bio_sock_cleanup_int(void);