xref: /openbsd-src/regress/libexec/ld.so/init-env/prog/prog.c (revision 5827e47d54b095cd7dc0c2424f88c2ddf01c87d2)
1*5827e47dSguenther /*
2*5827e47dSguenther  * Public Domain 2016 Philip Guenther <guenther@openbsd.org>
3*5827e47dSguenther  *
4*5827e47dSguenther  * $OpenBSD: prog.c,v 1.1 2016/03/20 05:13:22 guenther Exp $
5*5827e47dSguenther  */
6*5827e47dSguenther 
7*5827e47dSguenther #include <stdio.h>
8*5827e47dSguenther #include <stdlib.h>
9*5827e47dSguenther 
10*5827e47dSguenther extern char **environ;
11*5827e47dSguenther 
12*5827e47dSguenther int
main(int argc,char ** argv,char ** env)13*5827e47dSguenther main(int argc, char **argv, char **env)
14*5827e47dSguenther {
15*5827e47dSguenther 	int ret = 0;
16*5827e47dSguenther 
17*5827e47dSguenther 	if (env == environ)
18*5827e47dSguenther 		printf("OK: main's 3rd arg == environ\n");
19*5827e47dSguenther 	else {
20*5827e47dSguenther 		ret = 1;
21*5827e47dSguenther 		printf("FAILED: main's 3rd arg isn't environ\n");
22*5827e47dSguenther 	}
23*5827e47dSguenther 	if (getenv("INIT_ENV_REGRESS_TEST") != NULL)
24*5827e47dSguenther 		printf("OK: env var set by .so init function set\n");
25*5827e47dSguenther 	else {
26*5827e47dSguenther 		ret = 1;
27*5827e47dSguenther 		printf("FAILED: env var set by .so init function not set\n");
28*5827e47dSguenther 	}
29*5827e47dSguenther 
30*5827e47dSguenther 	return ret;
31*5827e47dSguenther }
32