Home | History | Annotate | Download | only in include
      1 /******************************************************************************
      2  *
      3  *  Copyright 2016 Google, Inc.
      4  *
      5  *  Licensed under the Apache License, Version 2.0 (the "License");
      6  *  you may not use this file except in compliance with the License.
      7  *  You may obtain a copy of the License at:
      8  *
      9  *  http://www.apache.org/licenses/LICENSE-2.0
     10  *
     11  *  Unless required by applicable law or agreed to in writing, software
     12  *  distributed under the License is distributed on an "AS IS" BASIS,
     13  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     14  *  See the License for the specific language governing permissions and
     15  *  limitations under the License.
     16  *
     17  ******************************************************************************/
     18 
     19 #pragma once
     20 
     21 #include <cstdint>
     22 
     23 #define PROPERTY_VALUE_MAX 92
     24 #define BUILD_SANITY_PROPERTY_VALUE_MAX 92
     25 
     26 // Get value associated with key |key| into |value|.
     27 // Returns the length of the value which will never be greater than
     28 // PROPERTY_VALUE_MAX - 1 and will always be zero terminated.
     29 // (the length does not include the terminating zero).
     30 // If the property read fails or returns an empty value, the |default_value|
     31 // is used (if nonnull).  If the |default_value| is null, zero is returned.
     32 int osi_property_get(const char* key, char* value, const char* default_value);
     33 
     34 // Write value of property associated with key |key| to |value|.
     35 // Returns 0 on success, < 0 on failure
     36 int osi_property_set(const char* key, const char* value);
     37 
     38 // Adapter function for property_get_int32 in
     39 // libcutils/include/cutils/properties.h
     40 //
     41 // returns the value of |key| truncated and coerced into an
     42 // int32_t. If the property is not set, then the |default_value| is used.
     43 int32_t osi_property_get_int32(const char* key, int32_t default_value);
     44 
     45 // Adapter function for property_get_bool in
     46 // libcutils/include/cutils/properties.h
     47 //
     48 // returns the value of |key| coerced into a bool. If the property is not set,
     49 // then the |default_value| is used.
     50 bool osi_property_get_bool(const char* key, bool default_value);