diff --git a/adb/file_sync_service.c b/adb/file_sync_service.c
index 577fb8f..e981c2a 100644
--- a/adb/file_sync_service.c
+++ b/adb/file_sync_service.c
@@ -68,7 +68,7 @@
                 *x = '/';
                 return ret;
             }
-            selinux_android_restorecon(name);
+            selinux_android_restorecon(name, 0);
         }
         *x++ = '/';
     }
@@ -246,7 +246,7 @@
     if(fd >= 0) {
         struct utimbuf u;
         adb_close(fd);
-        selinux_android_restorecon(path);
+        selinux_android_restorecon(path, 0);
         u.actime = timestamp;
         u.modtime = timestamp;
         utime(path, &u);
diff --git a/debuggerd/tombstone.cpp b/debuggerd/tombstone.cpp
index c630020..e598ab4 100755
--- a/debuggerd/tombstone.cpp
+++ b/debuggerd/tombstone.cpp
@@ -741,7 +741,7 @@
       LOG("failed to change ownership of %s: %s\n", TOMBSTONE_DIR, strerror(errno));
   }
 
-  if (selinux_android_restorecon(TOMBSTONE_DIR) == -1) {
+  if (selinux_android_restorecon(TOMBSTONE_DIR, 0) == -1) {
     *detach_failed = false;
     return NULL;
   }
diff --git a/init/util.c b/init/util.c
index e772342..0f69e1c 100644
--- a/init/util.c
+++ b/init/util.c
@@ -527,10 +527,10 @@
 
 int restorecon(const char* pathname)
 {
-    return selinux_android_restorecon(pathname);
+    return selinux_android_restorecon(pathname, 0);
 }
 
 int restorecon_recursive(const char* pathname)
 {
-    return selinux_android_restorecon_recursive(pathname);
+    return selinux_android_restorecon(pathname, SELINUX_ANDROID_RESTORECON_RECURSE);
 }
diff --git a/toolbox/restorecon.c b/toolbox/restorecon.c
index 137e9fa..11532da 100644
--- a/toolbox/restorecon.c
+++ b/toolbox/restorecon.c
@@ -49,7 +49,7 @@
         usage();
 
     for (i = 0; i < argc; i++) {
-        rc = selinux_android_restorecon_flags(argv[i], flags);
+        rc = selinux_android_restorecon(argv[i], flags);
         if (rc < 0)
             fprintf(stderr, "Could not restorecon %s:  %s\n", argv[i],
                     strerror(errno));
