rsyslog/tests/override_getaddrinfo.c
Rainer Gerhards cbcc9a6d20 testbench: add test for very early startup messages
... and failures of getaddrinfo() when obtaining hostname.

This requires a number of testing LD_PRELOD libraries, which just
simulate system error. The actual test is rather small.

see also https://github.com/rsyslog/rsyslog/issues/1573
2017-07-18 14:50:09 +02:00

29 lines
757 B
C

// we need this for dlsym(): #include <dlfcn.h>
#include "config.h"
#include <stdio.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
int getaddrinfo(const char *node __attribute__((unused)),
const char *service __attribute__((unused)),
const struct addrinfo *hints __attribute__((unused)),
struct addrinfo **res __attribute__((unused)))
{
return EAI_MEMORY;
}
static void __attribute__((constructor))
my_init(void)
{
/* we currently do not need this entry point, but keep it as
* a "template". It can be used, e.g. to emit some diagnostic
* information:
printf("loaded\n");
* or - more importantly - obtain a pointer to the overriden
* API:
orig_etry = dlsym(RTLD_NEXT, "original_entry_point");
*/
}