1999-12-09 13:01:21 +00:00
|
|
|
/*
|
|
|
|
* emalloc - return new memory obtained from the system. Belch if none.
|
|
|
|
*/
|
|
|
|
#include "ntp_types.h"
|
|
|
|
#include "ntp_malloc.h"
|
|
|
|
#include "ntp_syslog.h"
|
2001-08-29 14:35:15 +00:00
|
|
|
#include "ntp_stdlib.h"
|
1999-12-09 13:01:21 +00:00
|
|
|
|
|
|
|
#if defined SYS_WINNT && defined DEBUG
|
|
|
|
#include <crtdbg.h>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined SYS_WINNT && defined DEBUG
|
|
|
|
|
|
|
|
void *
|
|
|
|
debug_emalloc(
|
|
|
|
u_int size,
|
|
|
|
char *filename,
|
|
|
|
int line
|
|
|
|
)
|
|
|
|
{
|
|
|
|
char *mem;
|
|
|
|
|
|
|
|
if ((mem = (char *)_malloc_dbg(size, _NORMAL_BLOCK, filename, line)) == 0) {
|
2001-08-29 14:35:15 +00:00
|
|
|
msyslog(LOG_ERR, "Exiting: No more memory!");
|
1999-12-09 13:01:21 +00:00
|
|
|
exit(1);
|
|
|
|
}
|
|
|
|
return mem;
|
|
|
|
}
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|
|
|
void *
|
|
|
|
emalloc(
|
|
|
|
u_int size
|
|
|
|
)
|
|
|
|
{
|
|
|
|
char *mem;
|
|
|
|
|
|
|
|
if ((mem = (char *)malloc(size)) == 0) {
|
2001-08-29 14:35:15 +00:00
|
|
|
msyslog(LOG_ERR, "Exiting: No more memory!");
|
1999-12-09 13:01:21 +00:00
|
|
|
exit(1);
|
|
|
|
}
|
|
|
|
return mem;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|