mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-10-30 10:45:40 +03:00 
			
		
		
		
	* elf/loadfail.c: Little cosmetic changes to avoid warnings. * elf/loadtest.c: Likewise. * elf/multiload.c: Likewise. * elf/next.c: Likewise. * elf/nodelete.c: Likewise. * elf/noload.c: Likewise. * elf/order.c: Likewise. * elf/origtest.c: Likewise. * elf/preloadtest.c: Likewise. * elf/restest1.c: Likewise.
		
			
				
	
	
		
			45 lines
		
	
	
		
			973 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			973 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #include <stdio.h>
 | |
| 
 | |
| 
 | |
| extern int successful_rtld_next_test (void);
 | |
| extern void *failing_rtld_next_use (void);
 | |
| 
 | |
| 
 | |
| static int
 | |
| do_test (void)
 | |
| {
 | |
|   int result;
 | |
|   void *addr;
 | |
| 
 | |
|   /* First try call a function which uses RTLD_NEXT and calls that
 | |
|      function.  */
 | |
|   result = successful_rtld_next_test ();
 | |
|   if (result == 42)
 | |
|     {
 | |
|       puts ("RTLD_NEXT seems to work for existing functions");
 | |
|       result = 0;
 | |
|     }
 | |
|   else
 | |
|     {
 | |
|       printf ("Heh?  `successful_rtld_next_test' returned %d\n", result);
 | |
|       result = 1;
 | |
|     }
 | |
| 
 | |
|   /* Next try a function which tries to get a function with RTLD_NEXT
 | |
|      but that fails.  This dlsym() call should return a NULL pointer
 | |
|      and do nothing else.  */
 | |
|   addr = failing_rtld_next_use ();
 | |
|   if (addr == NULL)
 | |
|     puts ("dlsym returned NULL for non-existing function.  Good");
 | |
|   else
 | |
|     {
 | |
|       puts ("dlsym found something !?");
 | |
|       result = 1;
 | |
|     }
 | |
| 
 | |
|   return result;
 | |
| }
 | |
| 
 | |
| #define TEST_FUNCTION do_test ()
 | |
| #include "../test-skeleton.c"
 |