strcpy(scontextp, policydb.p_cat_val_to_name[i - 1]); scontextp += strlen(policydb.p_cat_val_to_name[i - 1]); 
strcpy(scontextp, policydb.p_cat_val_to_name[i]); scontextp += strlen(policydb.p_cat_val_to_name[i]); 
void mls_sid_to_context(struct context *context,                        char **scontext){	char *scontextp;	int i, l, range, wrote_sep;	if (!selinux_mls_enabled)		return;	scontextp = *scontext;	*scontextp = ':';	scontextp++;	for (l = 0; l < 2; l++) {		range = 0;		wrote_sep = 0;		strcpy(scontextp,		       policydb.p_sens_val_to_name[context->range.level[l].sens - 1]);		scontextp += strlen(policydb.p_sens_val_to_name[context->range.level[l].sens - 1]);		/* categories */		for (i = 1; i <= ebitmap_length(&context->range.level[l].cat); i++) {			if (ebitmap_get_bit(&context->range.level[l].cat, i - 1)) {				if (range) {					range++;					continue;				}				if (!wrote_sep) {					*scontextp++ = ':';					wrote_sep = 1;				} else					*scontextp++ = ',';				strcpy(scontextp, policydb.p_cat_val_to_name[i - 1]);				scontextp += strlen(policydb.p_cat_val_to_name[i - 1]);				range++;			} else {				if (range > 1) {					if (range > 2)						*scontextp++ = '.';					else						*scontextp++ = ',';					strcpy(scontextp, policydb.p_cat_val_to_name[i - 2]);					scontextp += strlen(policydb.p_cat_val_to_name[i - 2]);				}				range = 0;			}		}		/* Handle case where last category is the end of range */		if (range > 1) {			if (range > 2)				*scontextp++ = '.';			else				*scontextp++ = ',';			strcpy(scontextp, policydb.p_cat_val_to_name[i - 2]);			scontextp += strlen(policydb.p_cat_val_to_name[i - 2]);		}		if (l == 0) {			if (mls_level_eq(&context->range.level[0],			                 &context->range.level[1]))				break;			else {				*scontextp = '-';				scontextp++;			}		}	}	*scontext = scontextp;	return;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/782ebb992ec20b5afdd5786ee8c2f1b58b631f24/mls.c/clean/security/selinux/ss/mls.c