mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-10-30 10:45:40 +03:00 
			
		
		
		
	This commit adds fixed-size allocation buffers. The primary use case is in NSS modules, where dynamically sized data is stored in a fixed-size buffer provided by the caller. Other uses include a replacement of mempcpy cascades (which is safer due to the size checking inherent to allocation buffers).
		
			
				
	
	
		
			97 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| libc {
 | |
|   GLIBC_2.0 {
 | |
|     # global variables
 | |
|     _obstack;
 | |
| 
 | |
|     # interface of malloc functions
 | |
|     __libc_calloc; __libc_free; __libc_mallinfo; __libc_malloc;
 | |
|     __libc_mallopt; __libc_memalign; __libc_pvalloc; __libc_realloc;
 | |
|     __libc_valloc;
 | |
|     __malloc_initialize_hook; __free_hook; __malloc_hook; __realloc_hook;
 | |
|     __memalign_hook; __after_morecore_hook;
 | |
|     __malloc_initialized; __default_morecore; __morecore;
 | |
| 
 | |
|     # functions used in inline functions or macros
 | |
|     _obstack_allocated_p; _obstack_begin; _obstack_begin_1;
 | |
|     _obstack_free; _obstack_memory_used; _obstack_newchunk;
 | |
| 
 | |
|     # variables in normal name space
 | |
|     mallwatch; obstack_alloc_failed_handler; obstack_exit_failure;
 | |
| 
 | |
|     # c*
 | |
|     calloc; cfree;
 | |
| 
 | |
|     # f*
 | |
|     free;
 | |
| 
 | |
|     # m*
 | |
|     mallinfo; malloc; malloc_get_state; malloc_set_state; malloc_stats;
 | |
|     malloc_trim; malloc_usable_size; mallopt; memalign; mprobe; mtrace;
 | |
|     muntrace;
 | |
| 
 | |
|     # o*
 | |
|     obstack_free;
 | |
| 
 | |
|     # p*
 | |
|     pvalloc;
 | |
| 
 | |
|     # r*
 | |
|     realloc;
 | |
| 
 | |
|     # t*
 | |
|     tr_break;
 | |
| 
 | |
|     # v*
 | |
|     valloc;
 | |
|   }
 | |
|   GLIBC_2.1 {
 | |
|     # Special functions.
 | |
|     __libc_freeres;
 | |
|   }
 | |
|   GLIBC_2.2 {
 | |
|     # m*
 | |
|     mcheck_check_all; mcheck_pedantic;
 | |
| 
 | |
|     # p*
 | |
|     posix_memalign;
 | |
|   }
 | |
|   GLIBC_2.10 {
 | |
|     malloc_info;
 | |
|   }
 | |
|   GLIBC_2.16 {
 | |
|     aligned_alloc;
 | |
|   }
 | |
|   GLIBC_2.26 {
 | |
|     reallocarray;
 | |
|   }
 | |
|   GLIBC_PRIVATE {
 | |
|     # Internal startup hook for libpthread.
 | |
|     __libc_malloc_pthread_startup;
 | |
| 
 | |
|     # Internal destructor hook for libpthread.
 | |
|     __libc_thread_freeres;
 | |
| 
 | |
|     # struct scratch_buffer support
 | |
|     __libc_scratch_buffer_grow;
 | |
|     __libc_scratch_buffer_grow_preserve;
 | |
|     __libc_scratch_buffer_set_array_size;
 | |
| 
 | |
|     # Internal name for reallocarray
 | |
|     __libc_reallocarray;
 | |
| 
 | |
|     # dynarray support
 | |
|     __libc_dynarray_at_failure;
 | |
|     __libc_dynarray_emplace_enlarge;
 | |
|     __libc_dynarray_finalize;
 | |
|     __libc_dynarray_resize;
 | |
|     __libc_dynarray_resize_clear;
 | |
| 
 | |
|     # struct alloc_buffer support
 | |
|     __libc_alloc_buffer_alloc_array;
 | |
|     __libc_alloc_buffer_allocate;
 | |
|     __libc_alloc_buffer_copy_bytes;
 | |
|     __libc_alloc_buffer_copy_string;
 | |
|     __libc_alloc_buffer_create_failure;
 | |
|   }
 | |
| }
 |