Blame src/regression/setenv-oom.c

Szabolcs Nagy 54fb6c
// commit 543787039098c121917cb5f3e129d84b61afa61b 2013-10-04
Szabolcs Nagy 54fb6c
// setenv should not crash on oom
Szabolcs Nagy 54fb6c
#include <stdlib.h>
Szabolcs Nagy a7679d
#include <sys/resource.h>
Szabolcs Nagy 54fb6c
#include <string.h>
Szabolcs Nagy 54fb6c
#include <errno.h>
Szabolcs Nagy 54fb6c
#include "test.h"
Szabolcs Nagy 54fb6c
Szabolcs Nagy 54fb6c
int main(void)
Szabolcs Nagy 54fb6c
{
Szabolcs Nagy 54fb6c
	char buf[10000];
Szabolcs Nagy 54fb6c
Szabolcs Nagy a7679d
	if (t_memfill() < 0)
Szabolcs Nagy a7679d
		t_error("memfill failed\n");
Szabolcs Nagy 54fb6c
Szabolcs Nagy 54fb6c
	memset(buf, 'x', sizeof buf);
Szabolcs Nagy 54fb6c
	buf[sizeof buf - 1] = 0;
Szabolcs Nagy 54fb6c
Szabolcs Nagy 54fb6c
	errno = 0;
Szabolcs Nagy 54fb6c
	if (setenv("TESTVAR", buf, 1) != -1)
Szabolcs Nagy 54fb6c
		t_error("setenv was successful\n");
Szabolcs Nagy 54fb6c
	if (errno != ENOMEM)
Szabolcs Nagy 54fb6c
		t_error("expected ENOMEM, got %s\n", strerror(errno));
Szabolcs Nagy 54fb6c
Szabolcs Nagy 54fb6c
	return t_status;
Szabolcs Nagy 54fb6c
}