+
+#ifdef TRANSSELINUX /*GAN6May06 SELinux MLS */
+ if (convertcon && strcmp(name, "security.selinux"))
+ convertcon = 0; /*GAN24May06 only for selinux */
+
+ if (convertcon)
+ {
+ security_context_t con = NULL;
+ int err;
+
+ if (!transselinuxarg)
+ err = security_canonicalize_context(value, &con);
+ else {
+ strncat(value, transselinuxarg, sizeof value);
+ err = security_canonicalize_context_raw(value, &con);
+ }
+
+ if (err < 0) {
+ warn("%s: EA canonicalize failed\n", value);
+ return FAIL;
+ }
+
+ size = strlen(con) + 1;
+ value[0] = 0;
+ strncat(value, con, sizeof value);
+ freecon(con);
+ }
+#endif