Home | History | Annotate | Download | only in android

Lines Matching defs:pathname

1280 static int pkgdir_selabel_lookup(const char *pathname,
1292 if (!strncmp(pathname, DATA_DATA_PREFIX, sizeof(DATA_DATA_PREFIX)-1)) {
1293 pathname += sizeof(DATA_DATA_PREFIX) - 1;
1294 } else if (!strncmp(pathname, DATA_USER_PREFIX, sizeof(DATA_USER_PREFIX)-1)) {
1295 pathname += sizeof(DATA_USER_PREFIX) - 1;
1296 while (isdigit(*pathname))
1297 pathname++;
1298 if (*pathname == '/')
1299 pathname++;
1302 } else if (!strncmp(pathname, DATA_USER_DE_PREFIX, sizeof(DATA_USER_DE_PREFIX)-1)) {
1303 pathname += sizeof(DATA_USER_DE_PREFIX) - 1;
1304 while (isdigit(*pathname))
1305 pathname++;
1306 if (*pathname == '/')
1307 pathname++;
1310 } else if (!fnmatch(EXPAND_USER_PATH, pathname, FNM_LEADING_DIR|FNM_PATHNAME)) {
1311 pathname += sizeof(EXPAND_USER_PATH);
1312 while (isdigit(*pathname))
1313 pathname++;
1314 if (*pathname == '/')
1315 pathname++;
1318 } else if (!fnmatch(EXPAND_USER_DE_PATH, pathname, FNM_LEADING_DIR|FNM_PATHNAME)) {
1319 pathname += sizeof(EXPAND_USER_DE_PATH);
1320 while (isdigit(*pathname))
1321 pathname++;
1322 if (*pathname == '/')
1323 pathname++;
1329 if (!(*pathname))
1332 pkgname = strdup(pathname);
1338 pathname = end;
1340 pathname++;
1347 pkgname, pathname);
1358 info ? info->seinfo : seinfo, info ? info->name : pkgname, pathname, ctx);
1386 __FUNCTION__, pathname, pkgname, info->seinfo, info->uid, strerror(errno));
1393 static int restorecon_sb(const char *pathname, const struct stat *sb,
1401 if (selabel_lookup(fc_sehandle, &secontext, pathname, sb->st_mode) < 0)
1404 if (lgetfilecon(pathname, &oldsecontext) < 0)
1413 if (!strncmp(pathname, DATA_DATA_PREFIX, sizeof(DATA_DATA_PREFIX)-1) ||
1414 !strncmp(pathname, DATA_USER_PREFIX, sizeof(DATA_USER_PREFIX)-1) ||
1415 !strncmp(pathname, DATA_USER_DE_PREFIX, sizeof(DATA_USER_DE_PREFIX)-1) ||
1416 !fnmatch(EXPAND_USER_PATH, pathname, FNM_LEADING_DIR|FNM_PATHNAME) ||
1417 !fnmatch(EXPAND_USER_DE_PATH, pathname, FNM_LEADING_DIR|FNM_PATHNAME)) {
1418 if (pkgdir_selabel_lookup(pathname, seinfo, uid, &secontext) < 0)
1425 "SELinux: Relabeling %s from %s to %s.\n", pathname, oldsecontext, secontext);
1427 if (lsetfilecon(pathname, secontext) < 0)
1442 pathname, strerror(errno));
1468 char *pathname = NULL, *pathdnamer = NULL, *pathdname, *pathbname;
1488 * Convert passed-in pathname to canonical pathname by resolving realpath of
1493 pathname = realpath(pathname_orig, NULL);
1494 if (!pathname)
1502 error = asprintf(&pathname, "/%s", pathbname);
1504 error = asprintf(&pathname, "%s/%s", pathdnamer, pathbname);
1509 paths[0] = pathname;
1510 issys = (!strcmp(pathname, SYS_PATH)
1511 || !strncmp(pathname, SYS_PREFIX, sizeof(SYS_PREFIX)-1)) ? true : false;
1514 if (lstat(pathname, &sb) < 0) {
1519 error = restorecon_sb(pathname, &sb, nochange, verbose, seinfo, uid);
1529 if (!strncmp(pathname, DATA_DATA_PREFIX, sizeof(DATA_DATA_PREFIX)-1) ||
1530 !strncmp(pathname, DATA_USER_PREFIX, sizeof(DATA_USER_PREFIX)-1) ||
1531 !strncmp(pathname, DATA_USER_DE_PREFIX, sizeof(DATA_USER_DE_PREFIX)-1) ||
1532 !fnmatch(EXPAND_USER_PATH, pathname, FNM_LEADING_DIR|FNM_PATHNAME) ||
1533 !fnmatch(EXPAND_USER_DE_PATH, pathname, FNM_LEADING_DIR|FNM_PATHNAME))
1541 if (statfs(pathname, &sfsb) == 0) {
1547 size = getxattr(pathname, RESTORECON_LAST, xattr_value, sizeof fc_digest);
1551 pathname);
1622 setxattr(pathname, RESTORECON_LAST, fc_digest, sizeof fc_digest, 0);
1630 free(pathname);