Advertisement
Guest User

Untitled

a guest
Feb 10th, 2016
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.62 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdint.h>
  3. #include <dlfcn.h>
  4.  
  5. void *malloc(size_t size)
  6. {
  7.     static void *(*malloc_default)(size_t size);
  8.     char *error;
  9.     void *ptr;
  10.  
  11.     if (!malloc_default) {
  12.         malloc_default = dlsym(RTLD_NEXT, "malloc");
  13.     }
  14.     ptr = malloc_default(size);
  15.     printf("malloc(%d) = %p\n", size, ptr);    
  16.     return ptr;
  17. }
  18.  
  19. void free(void *ptr)
  20. {
  21.     static void (*free_default)(void *);
  22.     char *error;
  23.  
  24.     if (!free_default) {
  25.         free_default = dlsym(RTLD_NEXT, "free");
  26.     }
  27.     if(ptr){
  28.         printf("free(%p)\n", ptr);    
  29.     }
  30.     free_default(ptr);
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement