53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
| /* Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
 | |
|  * Use of this source code is governed by a BSD-style license that can be
 | |
|  * found in the LICENSE file.
 | |
|  */
 | |
| 
 | |
| #ifndef VBOOT_REFERENCE_CROSSYSTEM_H_
 | |
| #define VBOOT_REFERENCE_CROSSYSTEM_H_
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
| #include <stddef.h>
 | |
| 
 | |
| /* Recommended size for string property buffers used with
 | |
|  * VbGetSystemPropertyString(). */
 | |
| #define VB_MAX_STRING_PROPERTY     ((size_t) 8192)
 | |
| 
 | |
| /* Reads a system property integer.
 | |
|  *
 | |
|  * Returns the property value, or -1 if error. */
 | |
| int VbGetSystemPropertyInt(const char* name);
 | |
| 
 | |
| /* Read a system property string into a destination buffer of the
 | |
|  * specified size.  Returned string will be null-terminated.  If the
 | |
|  * buffer is too small, the returned string will be truncated.
 | |
|  *
 | |
|  * The caller can expect an un-truncated value if the size provided is
 | |
|  * at least VB_MAX_STRING_PROPERTY.
 | |
|  *
 | |
|  * Returns the passed buffer, or NULL if error. */
 | |
| const char* VbGetSystemPropertyString(const char* name, char* dest,
 | |
|                                       size_t size);
 | |
| 
 | |
| /* Sets a system property integer.
 | |
|  *
 | |
|  * Returns 0 if success, -1 if error. */
 | |
| int VbSetSystemPropertyInt(const char* name, int value);
 | |
| 
 | |
| /* Set a system property string.
 | |
|  *
 | |
|  * The maximum length of the value accepted depends on the specific
 | |
|  * property, not on VB_MAX_STRING_PROPERTY.
 | |
|  *
 | |
|  * Returns 0 if success, -1 if error. */
 | |
| int VbSetSystemPropertyString(const char* name, const char* value);
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 | |
| 
 | |
| #endif  /* VBOOT_REFERENCE__CROSSYSTEM_H_ */
 |