1c0b746e5SOllivier Robert /* 2c0b746e5SOllivier Robert * emalloc - return new memory obtained from the system. Belch if none. 3c0b746e5SOllivier Robert */ 4c0b746e5SOllivier Robert #include "ntp_types.h" 5c0b746e5SOllivier Robert #include "ntp_malloc.h" 6c0b746e5SOllivier Robert #include "ntp_stdlib.h" 7c0b746e5SOllivier Robert #include "ntp_syslog.h" 8c0b746e5SOllivier Robert 9c0b746e5SOllivier Robert #if defined SYS_WINNT && defined DEBUG 10c0b746e5SOllivier Robert #include <crtdbg.h> 11c0b746e5SOllivier Robert #endif 12c0b746e5SOllivier Robert 13c0b746e5SOllivier Robert #if defined SYS_WINNT && defined DEBUG 14c0b746e5SOllivier Robert 15c0b746e5SOllivier Robert void * 16c0b746e5SOllivier Robert debug_emalloc( 17c0b746e5SOllivier Robert u_int size, 18c0b746e5SOllivier Robert char *filename, 19c0b746e5SOllivier Robert int line 20c0b746e5SOllivier Robert ) 21c0b746e5SOllivier Robert { 22c0b746e5SOllivier Robert char *mem; 23c0b746e5SOllivier Robert 24c0b746e5SOllivier Robert if ((mem = (char *)_malloc_dbg(size, _NORMAL_BLOCK, filename, line)) == 0) { 25c0b746e5SOllivier Robert msyslog(LOG_ERR, "No more memory!"); 26c0b746e5SOllivier Robert exit(1); 27c0b746e5SOllivier Robert } 28c0b746e5SOllivier Robert return mem; 29c0b746e5SOllivier Robert } 30c0b746e5SOllivier Robert 31c0b746e5SOllivier Robert #else 32c0b746e5SOllivier Robert 33c0b746e5SOllivier Robert void * 34c0b746e5SOllivier Robert emalloc( 35c0b746e5SOllivier Robert u_int size 36c0b746e5SOllivier Robert ) 37c0b746e5SOllivier Robert { 38c0b746e5SOllivier Robert char *mem; 39c0b746e5SOllivier Robert 40c0b746e5SOllivier Robert if ((mem = (char *)malloc(size)) == 0) { 41c0b746e5SOllivier Robert msyslog(LOG_ERR, "No more memory!"); 42c0b746e5SOllivier Robert exit(1); 43c0b746e5SOllivier Robert } 44c0b746e5SOllivier Robert return mem; 45c0b746e5SOllivier Robert } 46c0b746e5SOllivier Robert 47c0b746e5SOllivier Robert 48c0b746e5SOllivier Robert #endif 49