Switch to toybox getprop and regenerate generated files.

Change-Id: Ic9ee4d9411bd8904546358db3768d95183be0e82
diff --git a/.config b/.config
index 7f2201a..f353fcd 100644
--- a/.config
+++ b/.config
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
 # ToyBox version: KCONFIG_VERSION
-# Tue Apr  7 14:59:31 2015
+# Tue Apr  7 21:08:32 2015
 #
 CONFIG_TOYBOX_CONTAINER=y
 CONFIG_TOYBOX_FIFREEZE=y
@@ -275,6 +275,7 @@
 # Android
 #
 CONFIG_GETENFORCE=y
+CONFIG_GETPROP=y
 CONFIG_LOAD_POLICY=y
 CONFIG_RESTORECON=y
 CONFIG_RUNCON=y
diff --git a/Android.mk b/Android.mk
index 7a3baca..5782451 100644
--- a/Android.mk
+++ b/Android.mk
@@ -58,6 +58,7 @@
     lib/xwrap.c \
     main.c \
     toys/android/getenforce.c \
+    toys/android/getprop.c \
     toys/android/load_policy.c \
     toys/android/restorecon.c \
     toys/android/runcon.c \
@@ -251,6 +252,7 @@
     find \
     free \
     getenforce \
+    getprop \
     groups \
     head \
     hostname \
diff --git a/generated/config.h b/generated/config.h
index b892003..1c60ad8 100644
--- a/generated/config.h
+++ b/generated/config.h
@@ -494,6 +494,8 @@
 #define USE_SKELETON_ALIAS(...)
 #define CFG_GETENFORCE 1
 #define USE_GETENFORCE(...) __VA_ARGS__
+#define CFG_GETPROP 1
+#define USE_GETPROP(...) __VA_ARGS__
 #define CFG_LOAD_POLICY 1
 #define USE_LOAD_POLICY(...) __VA_ARGS__
 #define CFG_RESTORECON 1
diff --git a/generated/flags.h b/generated/flags.h
index f99bda1..69c2481 100644
--- a/generated/flags.h
+++ b/generated/flags.h
@@ -735,6 +735,14 @@
 #undef FOR_getenforce
 #endif
 
+// getprop >2 >2
+#undef OPTSTR_getprop
+#define OPTSTR_getprop ">2"
+#ifdef CLEANUP_getprop
+#undef CLEANUP_getprop
+#undef FOR_getprop
+#endif
+
 // getty   <2t#<0H:I:l:f:iwnmLh
 #undef OPTSTR_getty
 #define OPTSTR_getty  0 
@@ -3262,6 +3270,12 @@
 #endif
 #endif
 
+#ifdef FOR_getprop
+#ifndef TT
+#define TT this.getprop
+#endif
+#endif
+
 #ifdef FOR_getty
 #ifndef TT
 #define TT this.getty
diff --git a/generated/globals.h b/generated/globals.h
index 928a955..f28fe32 100644
--- a/generated/globals.h
+++ b/generated/globals.h
@@ -1,3 +1,10 @@
+// toys/android/getprop.c
+
+struct getprop_data {
+  size_t size;
+  size_t capacity;
+};
+
 // toys/example/hello.c
 
 struct hello_data {
@@ -1163,6 +1170,7 @@
 };
 
 extern union global_union {
+	struct getprop_data getprop;
 	struct hello_data hello;
 	struct skeleton_data skeleton;
 	struct dmesg_data dmesg;
diff --git a/generated/help.h b/generated/help.h
index f65eb52..372f602 100644
--- a/generated/help.h
+++ b/generated/help.h
@@ -22,7 +22,7 @@
 
 #define help_toybox "usage: toybox [--long | [command] [arguments...]]\n\nWith no arguments, shows available commands. First argument is\nname of a command to run, followed by any arguments to that command.\n\n--long	Show path to each command\n\nTo install command symlinks, try:\n  for i in $(/bin/toybox --long); do ln -s /bin/toybox $i; done\n\n"
 
-#define help_setprop "usage: setprop KEY VALUE\n\nSets an Android system property.\n\n"
+#define help_setprop "usage: setprop NAME VALUE\n\nSets an Android system property.\n\n"
 
 #define help_setenforce "usage: setenforce [enforcing|permissive|1|0]\n\nSets whether SELinux is enforcing (1) or permissive (0).\n\n"
 
@@ -32,6 +32,8 @@
 
 #define help_load_policy "usage: load_policy FILE\n\nLoad the specified policy file.\n\n"
 
+#define help_getprop "usage: getprop [NAME [DEFAULT]]\n\nGets an Android system property, or lists them all.\n\n"
+
 #define help_getenforce "usage: getenforce\n\nShows whether SELinux is disabled, enforcing, or permissive.\n\n"
 
 #define help_skeleton_alias "usage: skeleton_alias [-dq] [-b NUMBER]\n\nExample of a second command with different arguments in the same source\nfile as the first. This allows shared infrastructure not added to lib/.\n\n\n"
diff --git a/generated/newtoys.h b/generated/newtoys.h
index 5bdcca6..04e525f 100644
--- a/generated/newtoys.h
+++ b/generated/newtoys.h
@@ -69,6 +69,7 @@
 USE_FTPGET(NEWTOY(ftpget, "<2cvu:p:P#<0=21>65535", TOYFLAG_BIN))
 USE_FTPGET(OLDTOY(ftpput, ftpget, TOYFLAG_BIN))
 USE_GETENFORCE(NEWTOY(getenforce, ">0", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_GETPROP(NEWTOY(getprop, ">2", TOYFLAG_USR|TOYFLAG_SBIN))
 USE_GETTY(NEWTOY(getty, "<2t#<0H:I:l:f:iwnmLh",TOYFLAG_SBIN))
 USE_GREP(NEWTOY(grep, "ZzEFHabhinorsvwclqe*f*m#x[!wx][!EFw]", TOYFLAG_BIN))
 USE_GROUPADD(NEWTOY(groupadd, "<1>2g#<0S", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))