Skip to content
Snippets Groups Projects
Select Git revision
  • 664f85a376cad9ff8220ce87c0a2696d88d13ac6
  • master default
  • dbck-q-n-d-link
  • foutput-text_stat-override
  • generations
  • text-stat-sha256
  • use-nettle
  • import-nettle
  • refactor-cached_get_text
  • refactor-cached_get_text-part-2
  • add-text_store
  • introduce-generation_position
  • remove-reclamation
  • dbfile-temp-filenames
  • sstrdup
  • dbfile_open_read-check-magic
  • adns_dist
  • liboop_dist
  • search
  • isc
  • dbdbckmultiplechoice
  • last.cvs.revision
  • 2.1.2
  • 2.1.1
  • 2.1.0
  • adns_1_0
  • liboop_0_9
  • 2.0.7
  • search_bp
  • 2.0.6
  • 2.0.5
  • isc_1_01
  • Protocol-A-10.4
  • 2.0.4
  • 2.0.3
  • 2.0.2
  • 2.0.1
  • 2.0.0
  • isc_1_00
  • isc_merge_1999_05_01
  • isc_merge_1999_04_21
41 results

isc-malloc.c

Blame
  • isc-malloc.c 1.97 KiB
    /*
     * $Id: isc-malloc.c,v 1.9 1998/07/08 13:41:47 ceder Exp $
     * Copyright (C) 1991, 1992, 1993, 1994, 1995  Lysator Academic Computer Association.
     *
     * This file is part of the LysKOM server.
     * 
     * LysKOM is free software; you can redistribute it and/or modify it
     * under the terms of the GNU General Public License as published by 
     * the Free Software Foundation; either version 1, or (at your option) 
     * any later version.
     * 
     * LysKOM is distributed in the hope that it will be useful, but WITHOUT
     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
     * for more details.
     * 
     * You should have received a copy of the GNU General Public License
     * along with LysKOM; see the file COPYING.  If not, write to
     * Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN,
     * or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, 
     * MA 02139, USA.
     *
     * Please mail bug reports to bug-lyskom@lysator.liu.se. 
     */
    /*
     * Malloc wrappers for the isc package.
     *
     * These functions call smalloc and also counts
     * how many allocated blocks there are.
     */
    
    static const char *
    rcsid = "$Id: isc-malloc.c,v 1.9 1998/07/08 13:41:47 ceder Exp $";
    #include "rcs.h"
    USE(rcsid);
    
    #include <sys/types.h>
    #ifdef HAVE_STDDEF_H
    #  include <stddef.h>
    #endif
    #include <stdio.h>
    
    #include "exp.h"
    #include "isc-malloc.h"
    #include "server/smalloc.h"
    
    static int no_of_allocated_blocks = 0;
    
    EXPORT  void *
    isc_malloc_wrapper(size_t size)
    {
       ++no_of_allocated_blocks;
       return smalloc (size);
    }
    
    
    EXPORT  void
    isc_free_wrapper(void * ptr)
    {
        --no_of_allocated_blocks;
        sfree(ptr);
    }
    
    EXPORT  void *
    isc_realloc_wrapper (void * ptr,
    		     size_t size)
    {
        if ( ptr == NULL )
    	return isc_malloc_wrapper (size);
    
        return srealloc (ptr, size);
    }
    
    
    EXPORT void
    dump_isc_alloc_counts(FILE *stat_file)
    {
        fprintf(stat_file, "---%s:\n\tAllocated blocks by isc: %d\n",
    	    __FILE__, no_of_allocated_blocks);
    }