diff --exclude-from=exclude -N -u -r nsalibselinux/include/selinux/selinux.h libselinux-1.27.14/include/selinux/selinux.h --- nsalibselinux/include/selinux/selinux.h 2005-10-25 15:15:53.000000000 -0400 +++ libselinux-1.27.14/include/selinux/selinux.h 2005-10-25 17:54:34.000000000 -0400 @@ -359,6 +359,7 @@ extern const char *selinux_customizable_types_path(void); extern const char *selinux_users_path(void); extern const char *selinux_usersconf_path(void); +extern const char *selinux_translations_path(void); extern const char *selinux_path(void); /* Check a permission in the passwd class. diff --exclude-from=exclude -N -u -r nsalibselinux/src/file_path_suffixes.h libselinux-1.27.14/src/file_path_suffixes.h --- nsalibselinux/src/file_path_suffixes.h 2005-10-25 15:15:53.000000000 -0400 +++ libselinux-1.27.14/src/file_path_suffixes.h 2005-10-25 17:53:04.000000000 -0400 @@ -13,3 +13,4 @@ S_(CUSTOMIZABLE_TYPES, "/contexts/customizable_types") S_(USERS_DIR, "/users/") S_(SEUSERS, "/seusers") +S_(TRANSLATIONS, "/setrans.conf") diff --exclude-from=exclude -N -u -r nsalibselinux/src/selinux_config.c libselinux-1.27.14/src/selinux_config.c --- nsalibselinux/src/selinux_config.c 2005-10-25 15:15:53.000000000 -0400 +++ libselinux-1.27.14/src/selinux_config.c 2005-10-26 15:58:29.000000000 -0400 @@ -32,7 +32,8 @@ #define CUSTOMIZABLE_TYPES 11 #define USERS_DIR 12 #define SEUSERS 13 -#define NEL 14 +#define TRANSLATIONS 14 +#define NEL 15 /* New layout is relative to SELINUXDIR/policytype. */ static char *file_paths[NEL]; @@ -192,7 +193,9 @@ } free(line_buf); fclose(fp); - } + } + else + return; for (i = 0; i < NEL; i++) { len = rootlen + strlen(file_path_suffixes_data.str @@ -303,10 +306,16 @@ const char *selinux_users_path() { return get_path(USERS_DIR); } +hidden_def(selinux_users_path) + const char *selinux_usersconf_path() { return get_path(SEUSERS); } - -hidden_def(selinux_users_path) hidden_def(selinux_usersconf_path) +const char *selinux_translations_path() +{ + return get_path(TRANSLATIONS); +} +hidden_def(selinux_translations_path) + diff --exclude-from=exclude -N -u -r nsalibselinux/src/selinux_internal.h libselinux-1.27.14/src/selinux_internal.h --- nsalibselinux/src/selinux_internal.h 2005-10-25 15:15:53.000000000 -0400 +++ libselinux-1.27.14/src/selinux_internal.h 2005-10-25 18:01:47.000000000 -0400 @@ -60,6 +60,7 @@ hidden_proto(matchpathcon_init) hidden_proto(selinux_users_path) hidden_proto(selinux_usersconf_path); +hidden_proto(selinux_translations_path); hidden_proto(selinux_getenforcemode); extern int context_translations hidden; diff --exclude-from=exclude -N -u -r nsalibselinux/src/seusers.c libselinux-1.27.14/src/seusers.c --- nsalibselinux/src/seusers.c 2005-10-17 13:42:38.000000000 -0400 +++ libselinux-1.27.14/src/seusers.c 2005-10-26 16:13:53.000000000 -0400 @@ -115,7 +115,7 @@ if (!strcmp(username, name)) break; - if (!defaultseuser && !strcmp(username,"default")) { + if (!defaultseuser && !strcmp(username,"__default__")) { free(username); defaultseuser = seuser; defaultlevel = level;