  
  #define _FOREIGN_HAS_(x)  (0 != ((_FOREIGNS_TO_USE_) & (_FOREIGN_MASK_##x##_)))
  
-@@ -60,6 +62,9 @@ enum fkey {
+ enum fkey {
+-    _FOREIGN_INVALID_ = -1, 
++    _FOREIGN_INVALID_ = -1,
+ #if _FOREIGN_HAS_(HOME)
+     HOME,
+ #endif
+ #if _FOREIGN_HAS_(UID)
+-    UID, 
++    UID,
+ #endif
+ #if _FOREIGN_HAS_(USER)
+     USER,
+@@ -52,14 +54,17 @@
+     GID, 
+ #endif
+ #if _FOREIGN_HAS_(EHOME)
+-    EHOME, 
++    EHOME,
+ #endif
+ #if _FOREIGN_HAS_(EUID)
+-    EUID, 
++    EUID,
+ #endif
  #if _FOREIGN_HAS_(EUSER)
      EUSER,
  #endif

 };
 
diff --git a/src/init.c b/src/init.c
index 735fef6..184ebb3 100644
--- a/src/init.c
+++ b/src/init.c
@@ -65,7 +65,8 @@ static inline void unlock() { }
 
 #define _HAS_IDS_   (  _FOREIGN_HAS_(UID)  \
                     || _FOREIGN_HAS_(EUID) \

From 3f698caea8b6e35f89963e8ad633a9f6ca8f4970 Mon Sep 17 00:00:00 2001
From: Ronan Le Martret <ronan@fridu.net>
Date: Tue, 08 Jul 2014 10:40:21 +0200
Subject: [PATCH] Add env value SYSROOT for root fs prefix

Change-Id: I5c57494317473dcd74c85cbc2bce19a6d68c2739
Signed-off-by: Ronan Le Martret <ronan@fridu.net>
---

diff --git a/src/foreign.c b/src/foreign.c
index a19f6ad..6b172b2 100644
--- a/src/foreign.c
+++ b/src/foreign.c
@@ -85,6 +85,11 @@
         default: break;
         }
     }
+#if _FOREIGN_HAS_(SYSROOT)
+    else if (length == 7)
+        if (name[0]=='S' && name[1]=='Y' && name[2]=='S' && name[3]=='R' && name[4]=='O' && name[5]=='O' && name[6]=='T')
+            return SYSROOT;
+#endif
     return _FOREIGN_INVALID_;
 }
 
diff --git a/src/foreign.h b/src/foreign.h
index 646a41d..6b1ea06 100644
--- a/src/foreign.h
+++ b/src/foreign.h
@@ -24,26 +24,28 @@
 #ifndef FOREIGN_H
 #define FOREIGN_H
 
-#define _FOREIGN_MASK_HOME_    1
-#define _FOREIGN_MASK_UID_     2
-#define _FOREIGN_MASK_USER_    4
-#define _FOREIGN_MASK_GID_     8
-#define _FOREIGN_MASK_EHOME_  16
-#define _FOREIGN_MASK_EUID_   32
-#define _FOREIGN_MASK_EUSER_  64
+#define _FOREIGN_MASK_HOME_       1
+#define _FOREIGN_MASK_UID_        2
+#define _FOREIGN_MASK_USER_       4
+#define _FOREIGN_MASK_GID_        8
+#define _FOREIGN_MASK_EHOME_     16
+#define _FOREIGN_MASK_EUID_      32
+#define _FOREIGN_MASK_EUSER_     64
+#define _FOREIGN_MASK_SYSROOT_  128
 
 #define _FOREIGNS_TO_USE_   ( _FOREIGN_MASK_HOME_  \
