diff --git a/Ext4Crypt.h b/Ext4Crypt.h
index eb33876..3fb6f16 100644
--- a/Ext4Crypt.h
+++ b/Ext4Crypt.h
@@ -23,7 +23,6 @@
 
 // General functions
 int e4crypt_enable(const char* path);
-int e4crypt_main(int argc, char* argv[]);
 int e4crypt_change_password(const char* path, int crypt_type,
                             const char* password);
 int e4crypt_crypto_complete(const char* path);
@@ -36,12 +35,11 @@
                       char* value, size_t len);
 int e4crypt_set_field(const char* path, const char* fieldname,
                       const char* value);
-int e4crypt_vold_set_user_crypto_policies(const char *path);
 
 int e4crypt_vold_create_user_key(userid_t user_id, int serial, bool ephemeral);
 int e4crypt_destroy_user_key(userid_t user_id);
 
-int e4crypt_unlock_user_key(userid_t user_id, const char* token);
+int e4crypt_unlock_user_key(userid_t user_id, int serial, const char* token);
 int e4crypt_lock_user_key(userid_t user_id);
 
 int e4crypt_prepare_user_storage(const char* volume_uuid,
