Lines Matching refs:lib_pathname
468 bool is_accessible(ns_t *ns, const char *lib_pathname, bool is_asan, bool check_inherited)
475 char *shortname = strrchr(lib_pathname, '/');
485 LD_LOGD("is_accessible ns [%{public}s] lib_pathname [%{public}s] is not in allowed_libs, return false.",
487 lib_pathname);
496 if (strncmp(lib_pathname, paths->strs[i], len) == 0 &&
497 lib_pathname[len] == '/' &&
498 !strchr(lib_pathname + len + 1, '/')) {
499 LD_LOGD("is_accessible ns [%{public}s] lib_pathname [%{public}s] in env_paths, return true.",
501 lib_pathname);
510 if (check_asan_path(ns, lib_pathname)) {
511 LD_LOGD("is_accessible ns [%{public}s] lib_pathname [%{public}s] check_asan_path success, return true.",
513 lib_pathname);
521 if (strncmp(lib_pathname, paths->strs[i], len) == 0 &&
522 lib_pathname[len] == '/' &&
523 !strchr(lib_pathname + len + 1, '/')) {
525 LD_LOGD("is_accessible ns [%{public}s] lib_pathname [%{public}s] in lib_paths, return true.",
527 lib_pathname);
537 if (strncmp(lib_pathname, ns->permitted_paths->strs[i], len) == 0 &&
538 lib_pathname[len] == '/') {
539 LD_LOGD("is_accessible ns [%{public}s] lib_pathname [%{public}s] in permitted_paths, return true.",
541 lib_pathname);
549 bool check_asan_path(ns_t *ns, const char *lib_pathname)
555 if (strncmp(lib_pathname, paths->strs[i], len) == 0 &&
556 lib_pathname[len] == '/' &&
557 !strchr(lib_pathname + len + 1, '/')) {
559 LD_LOGD("check_asan_path ns [%{public}s] lib_pathname [%{public}s] in asan_lib_paths, return true.",
561 lib_pathname);
570 if (strncmp(lib_pathname, ns->asan_permitted_paths->strs[i], len) == 0 &&
571 lib_pathname[len] == '/') {
573 "check_asan_path ns [%{public}s] lib_pathname [%{public}s] in asan_permitted_paths, return true.",
575 lib_pathname);
581 "check_asan_path ns [%{public}s] lib_pathname [%{public}s] failed, return false.", ns->ns_name, lib_pathname);