⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mymalloc.c

📁 linux下开发的针对所有磁盘的数据恢复的源码
💻 C
字号:
/* * The Sleuth Kit  * * * Brian Carrier [carrier <at> sleuthkit [dot] org] * Copyright (c) 2006-2008 Brian Carrier, Basis Technology.  All rights reserved. *//** \file mymalloc.c * These functions allocate and realocate memory and set the error handling functions * when an error occurs. *//*++* NAME*	tsk_malloc 3* SUMMARY*	memory management wrappers* SYNOPSIS*	#include <tsk_malloc.h>**	char	*tsk_malloc(len)*	int	len;**	char	*tsk_realloc(ptr, len)*	char	*ptr;*	int	len;**	char	*mystrdup(str)*const char *str;*DESCRIPTION*	This module performs low-level memory management with error*	handling. A call of these functions either succeeds or it does*	not return at all.**	tsk_malloc() allocates the requested amount of memory. The memory*	is not set to zero.**	tsk_realloc() resizes memory obtained from tsk_malloc() or tsk_realloc()*	to the requested size. The result pointer value may differ from*	that given via the \fBptr\fR argument.**	mystrdup() returns a dynamic-memory copy of its null-terminated*	argument. This routine uses tsk_malloc().* SEE ALSO*	error(3) error reporting module.* DIAGNOSTICS*	Fatal errors: the requested amount of memory is not available.* LICENSE* .ad* .fi*	The IBM Public Licence must be distributed with this software.* AUTHOR(S)*	Wietse Venema*	IBM T.J. Watson Research*	P.O. Box 704*	Yorktown Heights, NY 10598, USA*--*/#include "tsk_base_i.h"#include <errno.h>/* tsk_malloc - allocate and zero memory and set error values on error */void *tsk_malloc(size_t len){    void *ptr;    if ((ptr = malloc(len)) == 0) {        tsk_error_reset();        tsk_errno = TSK_ERR_AUX_MALLOC;        snprintf(tsk_errstr, TSK_ERRSTR_L, "tsk_malloc: %s",            strerror(errno));    }    memset(ptr, 0, len);    return (ptr);}/* tsk_realloc - reallocate memory and set error values if needed */void *tsk_realloc(void *ptr, size_t len){    if ((ptr = realloc(ptr, len)) == 0) {        tsk_error_reset();        tsk_errno = TSK_ERR_AUX_MALLOC;        snprintf(tsk_errstr, TSK_ERRSTR_L, "tsk_realloc: %s",            strerror(errno));    }    return (ptr);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -