1dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project#include <stdio.h> 2dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project 3dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project#include <cutils/properties.h> 4dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project 5dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project#include <sys/system_properties.h> 6dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project 7dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectstatic void proplist(const char *key, const char *name, 8dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project void *user __attribute__((unused))) 9dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project{ 10dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project printf("[%s]: [%s]\n", key, name); 11dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project} 12dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project 13dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectint __system_property_wait(prop_info *pi); 14dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project 15dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectint getprop_main(int argc, char *argv[]) 16dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project{ 17dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project int n = 0; 18dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project 19dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project if (argc == 1) { 20dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project (void)property_list(proplist, NULL); 21dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project } else { 22dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project char value[PROPERTY_VALUE_MAX]; 23dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project char *default_value; 24dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project if(argc > 2) { 25dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project default_value = argv[2]; 26dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project } else { 27dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project default_value = ""; 28dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project } 29dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project 30dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project property_get(argv[1], value, default_value); 31dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project printf("%s\n", value); 32dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project } 33dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project return 0; 34dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project} 35