123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- =pod
- =head1 NAME
- BIO_s_socket, BIO_new_socket - socket BIO
- =head1 SYNOPSIS
- #include <openssl/bio.h>
- BIO_METHOD *BIO_s_socket(void);
- long BIO_set_fd(BIO *b, int fd, long close_flag);
- long BIO_get_fd(BIO *b, int *c);
- BIO *BIO_new_socket(int sock, int close_flag);
- =head1 DESCRIPTION
- BIO_s_socket() returns the socket BIO method. This is a wrapper
- round the platform's socket routines.
- BIO_read() and BIO_write() read or write the underlying socket.
- BIO_puts() is supported but BIO_gets() is not.
- If the close flag is set then the socket is shut down and closed
- when the BIO is freed.
- BIO_set_fd() sets the socket of BIO B<b> to B<fd> and the close
- flag to B<close_flag>.
- BIO_get_fd() places the socket in B<c> if it is not NULL, it also
- returns the socket. If B<c> is not NULL it should be of type (int *).
- BIO_new_socket() returns a socket BIO using B<sock> and B<close_flag>.
- =head1 NOTES
- Socket BIOs also support any relevant functionality of file descriptor
- BIOs.
- The reason for having separate file descriptor and socket BIOs is that on some
- platforms sockets are not file descriptors and use distinct I/O routines,
- Windows is one such platform. Any code mixing the two will not work on
- all platforms.
- BIO_set_fd() and BIO_get_fd() are macros.
- =head1 RETURN VALUES
- BIO_s_socket() returns the socket BIO method.
- BIO_set_fd() always returns 1.
- BIO_get_fd() returns the socket or -1 if the BIO has not been
- initialized.
- BIO_new_socket() returns the newly allocated BIO or NULL is an error
- occurred.
- =head1 SEE ALSO
- TBA
|