Initial Contribution
diff --git a/libnativehelper/include/nativehelper/AndroidSystemNatives.h b/libnativehelper/include/nativehelper/AndroidSystemNatives.h
new file mode 100644
index 0000000..d095b39
--- /dev/null
+++ b/libnativehelper/include/nativehelper/AndroidSystemNatives.h
@@ -0,0 +1,109 @@
+/*
+ * Copyright (C) 2007 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
+ * Registration functions for native methods in system classes.
+ */
+#ifndef _NATIVEHELPER_ANDROIDSYSTEMNATIVES
+#define _NATIVEHELPER_ANDROIDSYSTEMNATIVES
+
+#include "jni.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * Call this to register the methods below. Ideally, this is the only
+ * symbol that needs to be exported from the library.
+ */
+int jniRegisterSystemJavaMethods(JNIEnv* env);
+
+
+/*
+ * Registration functions for native methods in libcore.
+ */
+int register_org_apache_harmony_dalvik_NativeTestTarget(JNIEnv* env);
+
+int register_dalvik_system_TouchDex(JNIEnv* env);
+
+int register_org_apache_harmony_xml_ExpatParser(JNIEnv *env);
+
+int register_java_io_File(JNIEnv* env);
+int register_java_io_FileDescriptor(JNIEnv* env);
+int register_java_io_ObjectOutputStream(JNIEnv* env);
+int register_java_io_ObjectInputStream(JNIEnv* env);
+int register_java_io_ObjectStreamClass(JNIEnv* env);
+
+int register_java_lang_Character(JNIEnv* env);
+int register_java_lang_Double(JNIEnv* env);
+int register_java_lang_Float(JNIEnv* env);
+int register_java_lang_Math(JNIEnv* env);
+int register_java_lang_ProcessManager(JNIEnv* env);
+int register_java_lang_StrictMath(JNIEnv* env);
+int register_java_lang_System(JNIEnv* env);
+int register_java_lang_reflect_Proxy(JNIEnv* env);
+
+int register_org_apache_harmony_luni_platform_OSFileSystem(JNIEnv* env);
+int register_org_apache_harmony_luni_platform_OSMemory(JNIEnv* env);
+int register_org_apache_harmony_luni_platform_OSNetworkSystem(JNIEnv* env);
+int register_org_apache_harmony_nio_AddressUtil(JNIEnv* env);
+int register_org_apache_harmony_text_BidiWrapper(JNIEnv *env);
+
+int register_org_apache_harmony_xnet_provider_jsse_OpenSSLServerSocketImpl(JNIEnv *env);
+int register_org_apache_harmony_xnet_provider_jsse_OpenSSLSessionImpl(JNIEnv *env);
+int register_org_apache_harmony_xnet_provider_jsse_OpenSSLSocketImpl(JNIEnv *env);
+int register_org_openssl_NativeBN(JNIEnv *env);
+int register_org_apache_harmony_xnet_provider_jsse_NativeCrypto(JNIEnv *env);
+
+int register_java_util_jar_JarFile(JNIEnv* env);
+int register_java_util_zip_Adler32(JNIEnv* env);
+int register_java_util_zip_CRC32(JNIEnv* env);
+int register_java_util_zip_Deflater(JNIEnv* env);
+int register_java_util_zip_Inflater(JNIEnv* env);
+int register_java_util_zip_ZipFile(JNIEnv* env);
+int register_java_net_InetAddress(JNIEnv* env);
+int register_java_net_NetworkInterface(JNIEnv* env);
+
+int register_org_apache_harmony_luni_util_fltparse(JNIEnv *env);
+int register_org_apache_harmony_luni_util_NumberConvert(JNIEnv *env);
+
+int register_javax_crypto_HmacSpi(JNIEnv* env);
+
+int register_com_ibm_icu4jni_converters_NativeConverter(JNIEnv* env);
+int register_com_ibm_icu4jni_lang_UCharacter(JNIEnv* env);
+int register_com_ibm_icu4jni_text_NativeCollator(JNIEnv* env);
+int register_com_ibm_icu4jni_text_NativeBreakIterator(JNIEnv* env);
+int register_com_ibm_icu4jni_text_NativeDecimalFormat(JNIEnv* env);
+int register_com_ibm_icu4jni_regex_NativeRegEx(JNIEnv* env);
+int register_com_ibm_icu4jni_util_Resources(JNIEnv* env);
+int register_com_ibm_icu4jni_text_NativeRBNF(JNIEnv* env);
+
+int register_sun_misc_Unsafe(JNIEnv* env);
+
+int register_SQLite_Database(JNIEnv* env);
+int register_SQLite_Vm(JNIEnv* env);
+int register_SQLite_FunctionContext(JNIEnv* env);
+int register_SQLite_Stmt(JNIEnv* env);
+int register_SQLite_Blob(JNIEnv* env);
+
+int register_org_openssl_NativeBN(JNIEnv* env);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*_NATIVEHELPER_ANDROIDSYSTEMNATIVES*/