16dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines/* 26dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * Copyright (C) 2013 The Android Open Source Project 36dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * 46dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * Licensed under the Apache License, Version 2.0 (the "License"); 56dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * you may not use this file except in compliance with the License. 66dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * You may obtain a copy of the License at 76dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * 86dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * http://www.apache.org/licenses/LICENSE-2.0 96dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * 106dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * Unless required by applicable law or agreed to in writing, software 116dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * distributed under the License is distributed on an "AS IS" BASIS, 126dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 136dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * See the License for the specific language governing permissions and 146dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines * limitations under the License. 156dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines */ 166dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines 176dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines#include "rsCompatibilityLib.h" 186dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines#include <string.h> 196dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines#include <sys/system_properties.h> 206dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines 216dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines// Implementation of property_get from libcutils 226dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hinesint property_get(const char *key, char *value, const char *default_value) { 236dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines int len; 24127d51c1193f4055795da967d47a13bedd3cb951Miao Wang#ifndef __LP64__ 256dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines len = __system_property_get(key, value); 26127d51c1193f4055795da967d47a13bedd3cb951Miao Wang#else 27127d51c1193f4055795da967d47a13bedd3cb951Miao Wang len = 0; 28127d51c1193f4055795da967d47a13bedd3cb951Miao Wang#endif 296dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines if (len > 0) { 306dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines return len; 316dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines } 326dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines 336dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines if (default_value) { 346dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines len = strlen(default_value); 356dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines memcpy(value, default_value, len + 1); 366dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines } 376dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines return len; 38127d51c1193f4055795da967d47a13bedd3cb951Miao Wang 396dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines} 406dfe6841d357a1664433f0dcec3c8f4ae8ffbeb0Stephen Hines 41