BUF_MEM_new man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

BUF_MEM_NEW(3)		 BSD Library Functions Manual		BUF_MEM_NEW(3)

NAME
     BUF_MEM_new, BUF_MEM_free, BUF_MEM_grow, BUF_strdup — simple character
     arrays structure

SYNOPSIS
     #include <openssl/buffer.h>

     BUF_MEM *
     BUF_MEM_new(void);

     void
     BUF_MEM_free(BUF_MEM *a);

     int
     BUF_MEM_grow(BUF_MEM *str, size_t len);

     char *
     BUF_strdup(const char *str);

DESCRIPTION
     The buffer library handles simple character arrays.  Buffers are used for
     various purposes in the library, most notably memory BIOs.

     The library uses the BUF_MEM structure defined in buffer.h:

     typedef struct buf_mem_st
     {
	     size_t length;  /* current number of bytes */
	     char *data;
	     size_t max;     /* size of buffer */
     } BUF_MEM;

     length is the current size of the buffer in bytes, max is the amount of
     memory allocated to the buffer.  There are three functions which handle
     these and one “miscellaneous” function.

     BUF_MEM_new() allocates a new buffer of zero size.

     BUF_MEM_free() frees up an already existing buffer.  The data is zeroed
     before freeing up in case the buffer contains sensitive data.

     BUF_MEM_grow() changes the size of an already existing buffer to len.
     Any data already in the buffer is preserved if it increases in size.

     BUF_strdup() copies a NUL terminated string into a block of allocated
     memory and returns a pointer to the allocated block.  Unlike the system
     strdup(3) function, BUF_strdup() will accept a NULL argument and will
     return NULL in that case.	Its use in new programes is discouraged.

     The memory allocated from BUF_strdup() should be freed up using the
     free(3) function.

RETURN VALUES
     BUF_MEM_new() returns the buffer or NULL on error.

     BUF_MEM_free() returns no value.

     BUF_MEM_grow() returns zero on error or the new size (i.e.	 len).

SEE ALSO
     bio(3)

HISTORY
     BUF_MEM_new(), BUF_MEM_free() and BUF_MEM_grow() are available in all
     versions of SSLeay and OpenSSL.  BUF_strdup() was added in SSLeay 0.8.

BSD				March 28, 2024				   BSD
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net