Lines Matching refs:pathname
296 * Verify that a given pathname is in the include list and not in the
300 accept_pathname(const char *pathname)
303 if (!STAILQ_EMPTY(&include) && !match_pattern(&include, pathname))
305 if (!STAILQ_EMPTY(&exclude) && match_pattern(&exclude, pathname))
498 extract2fd(struct archive *a, char *pathname, int fd)
523 error("write('%s')", pathname);
550 error("write('%s')", pathname);
560 " heuristic", pathname);
573 error("write('%s')", pathname);
684 char *pathname, *realpathname;
688 pathname = pathdup(archive_entry_pathname(e));
692 if (pathname[0] == '/' ||
693 strncmp(pathname, "../", 3) == 0 ||
694 strstr(pathname, "/../") != NULL) {
695 warningx("skipping insecure entry '%s'", pathname);
697 free(pathname);
703 warningx("skipping non-regular entry '%s'", pathname);
705 free(pathname);
712 free(pathname);
717 if (!accept_pathname(pathname)) {
719 free(pathname);
725 for (p = q = pathname; *p; ++p)
730 realpathname = pathcat(d_arg, pathname);
742 free(pathname);
748 char *pathname;
751 pathname = pathdup(archive_entry_pathname(e));
756 warningx("skipping non-regular entry '%s'", pathname);
758 free(pathname);
765 free(pathname);
770 if (!accept_pathname(pathname)) {
772 free(pathname);
777 info("x %s\n", pathname);
779 (void)extract2fd(a, pathname, STDOUT_FILENO);
781 free(pathname);