Return 1 if NAME is an absolute symbolic link, -1 if it is relative, 0 if it is not a symbolic link. If *CACHE is not -2, it is the cached result of a previous call to this function with the same NAME. */
| 1851 | progname, diagdir(target), diagslash(target), target, e); |
| 1852 | exit(EXIT_FAILURE); |
| 1853 | } |
| 1854 | tp = open_outfile(&outname, &tempname); |
| 1855 | for (; (c = getc(fp)) != EOF; check_for_signal()) |
| 1856 | putc(c, tp); |
| 1857 | close_file(tp, directory, linkname, tempname); |
| 1858 | close_file(fp, directory, target, NULL); |
| 1859 | if (link_errno != ENOTSUP) |
| 1860 | warning(N_("copy used because hard link failed: %s"), |
| 1861 | strerror(link_errno)); |
| 1862 | else if (symlink_errno < 0) |
| 1863 | warning(N_("copy used because symbolic link not obvious")); |
| 1864 | else if (symlink_errno != ENOSYS && symlink_errno != ENOTSUP |