ssh

Dependents:   OS

Committer:
sPymbed
Date:
Mon Nov 25 14:24:05 2019 +0000
Revision:
0:c4152c628df5
first commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sPymbed 0:c4152c628df5 1 /* memory.h
sPymbed 0:c4152c628df5 2 *
sPymbed 0:c4152c628df5 3 * Copyright (C) 2014-2016 wolfSSL Inc.
sPymbed 0:c4152c628df5 4 *
sPymbed 0:c4152c628df5 5 * This file is part of wolfSSH.
sPymbed 0:c4152c628df5 6 *
sPymbed 0:c4152c628df5 7 * wolfSSH is free software; you can redistribute it and/or modify
sPymbed 0:c4152c628df5 8 * it under the terms of the GNU General Public License as published by
sPymbed 0:c4152c628df5 9 * the Free Software Foundation; either version 3 of the License, or
sPymbed 0:c4152c628df5 10 * (at your option) any later version.
sPymbed 0:c4152c628df5 11 *
sPymbed 0:c4152c628df5 12 * wolfSSH is distributed in the hope that it will be useful,
sPymbed 0:c4152c628df5 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
sPymbed 0:c4152c628df5 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
sPymbed 0:c4152c628df5 15 * GNU General Public License for more details.
sPymbed 0:c4152c628df5 16 *
sPymbed 0:c4152c628df5 17 * You should have received a copy of the GNU General Public License
sPymbed 0:c4152c628df5 18 * along with wolfSSH. If not, see <http://www.gnu.org/licenses/>.
sPymbed 0:c4152c628df5 19 */
sPymbed 0:c4152c628df5 20
sPymbed 0:c4152c628df5 21
sPymbed 0:c4152c628df5 22 /*
sPymbed 0:c4152c628df5 23 * The memory module contains the interface to the custom memory handling hooks.
sPymbed 0:c4152c628df5 24 */
sPymbed 0:c4152c628df5 25
sPymbed 0:c4152c628df5 26
sPymbed 0:c4152c628df5 27 #pragma once
sPymbed 0:c4152c628df5 28
sPymbed 0:c4152c628df5 29 #include <wolfssh/settings.h>
sPymbed 0:c4152c628df5 30 #include <stdlib.h>
sPymbed 0:c4152c628df5 31
sPymbed 0:c4152c628df5 32 #ifdef __cplusplus
sPymbed 0:c4152c628df5 33 extern "C" {
sPymbed 0:c4152c628df5 34 #endif
sPymbed 0:c4152c628df5 35
sPymbed 0:c4152c628df5 36
sPymbed 0:c4152c628df5 37 typedef void *(*wolfSSH_Malloc_cb)(size_t size);
sPymbed 0:c4152c628df5 38 typedef void (*wolfSSH_Free_cb)(void *ptr);
sPymbed 0:c4152c628df5 39 typedef void *(*wolfSSH_Realloc_cb)(void *ptr, size_t size);
sPymbed 0:c4152c628df5 40
sPymbed 0:c4152c628df5 41
sPymbed 0:c4152c628df5 42 /* Public set function */
sPymbed 0:c4152c628df5 43 WOLFSSH_API int wolfSSH_SetAllocators(wolfSSH_Malloc_cb malloc_function,
sPymbed 0:c4152c628df5 44 wolfSSH_Free_cb free_function,
sPymbed 0:c4152c628df5 45 wolfSSH_Realloc_cb realloc_function);
sPymbed 0:c4152c628df5 46
sPymbed 0:c4152c628df5 47 /* Public in case user app wants to use WMALLOC/WFREE */
sPymbed 0:c4152c628df5 48 WOLFSSH_API void* wolfSSH_Malloc(size_t size);
sPymbed 0:c4152c628df5 49 WOLFSSH_API void wolfSSH_Free(void *ptr);
sPymbed 0:c4152c628df5 50 WOLFSSH_API void* wolfSSH_Realloc(void *ptr, size_t size);
sPymbed 0:c4152c628df5 51
sPymbed 0:c4152c628df5 52
sPymbed 0:c4152c628df5 53 #ifdef __cplusplus
sPymbed 0:c4152c628df5 54 }
sPymbed 0:c4152c628df5 55 #endif
sPymbed 0:c4152c628df5 56