Lines Matching defs:pathname
317 * Verify that a given pathname is in the include list and not in the
321 accept_pathname(const char *pathname)
324 if (!STAILQ_EMPTY(&include) && !match_pattern(&include, pathname))
326 if (!STAILQ_EMPTY(&exclude) && match_pattern(&exclude, pathname))
529 extract2fd(struct archive *a, char *pathname, int fd)
554 error("write('%s')", pathname);
581 error("write('%s')", pathname);
591 " heuristic", pathname);
604 error("write('%s')", pathname);
761 char *pathname, *realpathname;
765 if ((pathname = pathdup(archive_entry_pathname(e))) == NULL) {
773 if (pathname[0] == '/' ||
774 strncmp(pathname, "../", 3) == 0 ||
775 strstr(pathname, "/../") != NULL) {
776 warningx("skipping insecure entry '%s'", pathname);
778 free(pathname);
784 warningx("skipping non-regular entry '%s'", pathname);
786 free(pathname);
793 free(pathname);
798 if (!accept_pathname(pathname)) {
800 free(pathname);
806 for (p = q = pathname; *p; ++p)
811 realpathname = pathcat(d_arg, pathname);
823 free(pathname);
829 char *pathname;
832 if ((pathname = pathdup(archive_entry_pathname(e))) == NULL) {
841 warningx("skipping non-regular entry '%s'", pathname);
843 free(pathname);
850 free(pathname);
855 if (!accept_pathname(pathname)) {
857 free(pathname);
862 info("x %s\n", pathname);
864 (void)extract2fd(a, pathname, STDOUT_FILENO);
866 free(pathname);