Copyright © 2001 - 2007 SILC Project SILC Project Website | SILC Toolkit Reference Manual Index

SILC Toolkit Reference Manual SILC Core Library SILC Authentication Interface SILC Message Interface SILC Channel Interface SILC Command Interface SILC Notify Interface SILC Status Types SILC Modes SILC ID Interface SILC Argument Interface SILC Attributes Interface Packet Protocol Interface SILC Public Key Payload Interface SILC Utility Library Basic Types and Definitions Data Buffer Interface Data Buffer Format Interface Hash Table Interface Memory Allocation Interface Data Stack (memory pool) Interface Finite State Machine Interface Thread Interface Mutual Exclusion Lock Interface Condition Variable Interface Atomic Operations Interface Network (TCP and UDP) Interface Scheduler Interface Asynchronous Operation Interface Abstract Stream Interface Socket Stream Interface File Descriptor Stream Interface File Utility Functions String Utility Interface Snprintf Interface UTF-8 String Interface Stringprep Interface Utility Functions List Interface Dynamic List Interface MIME Interface Time Utility Functions Logging Interface Config File Interface SILC Key Repository Library SILC SKR Interface SILC ASN.1 Library SILC ASN.1 Interface SILC BER interface SILC Client Library Using SILC Client Library Tutorial Arguments for command_reply Client Operation SilcStatus Error Arguments in command_reply Client Operation Arguments for notify Client Operation Unicode and UTF-8 Strings in Client Library Client Library Interface Reference Client Entry Interface Reference SILC Key Exchange Library SILC SKE Interface SILC Connection Authentication Interface SILC VCard Library SILC VCard Interface SILC SFTP Library SILC SFTP Interface SFTP Filesystems Interface SILC HTTP Library SILC HTTP Server Interface SILC HTTP PHP Translator SILC Crypto Library Introduction to SILC RNG SILC RNG Interface SILC Cipher API SILC PKCS API SILC Public Key API SILC PKCS #1 API SILC Hash Interface SILC HMAC Interface SILC Application Utility Library SILC Application Utilities SILC ID Cache Interface SILC Math Library SILC MP Interface SILC Math Interface Resource Links SILC Project Website SILC Protocol Documentation SILC White Paper SILC FAQs
Function silc_srealloc SYNOPSIS
        void *silc_srealloc(SilcStack stack, SilcUInt32 old_size,
                            void *ptr, SilcUInt32 size);
DESCRIPTION
        Change the size of the memory block indicated by `ptr' to the new
        size of `size' bytes.  The contents of `ptr' will not be changed.
        If `ptr' is NULL the call is equivalent to silc_smalloc.  If `size'
        is zero (0) error will occur.  Returns NULL on error and the old
        pointer remain intact.
NOTES
        This function reallocates successfully only if the previous allocation
        to `stack' was `ptr'.  If there was another memory allocation between
        allocating `ptr' and this call, this routine will return NULL.  The
        NULL is also returned if the `size' does not fit to current stack
        and allocating new block would require slow copying of the data.  It
        is left to the caller to decide whether to allocate new pointer and
        copy the old data in case this function returns NULL.

        This function can be used to reallocate only aligned memory allocated
        with silc_smalloc.

        If `stack' is NULL this function calls silc_realloc.
SILC Memory Interface silc_malloc silc_calloc silc_realloc silc_free silc_memdup silc_smalloc silc_smalloc_ua silc_scalloc silc_srealloc silc_srealloc_ua silc_smemdup silc_sstrdup

Copyright © 2001 - 2007 SILC Project SILC Project Website | SILC Toolkit Reference Manual Index