Page MenuHomeFreeBSD

D38028.id115004.diff
No OneTemporary

D38028.id115004.diff

diff --git a/usr.sbin/makefs/zfs/fs.c b/usr.sbin/makefs/zfs/fs.c
--- a/usr.sbin/makefs/zfs/fs.c
+++ b/usr.sbin/makefs/zfs/fs.c
@@ -297,15 +297,23 @@
char *buf, size_t bufsz)
{
char path[PATH_MAX];
- ssize_t n;
int fd;
- fs_populate_path(cur, arg, path, sizeof(path), &fd);
+ if (cur->symlink != NULL) {
+ size_t n;
- n = readlinkat(fd, path, buf, bufsz - 1);
- if (n == -1)
- err(1, "readlinkat(%s)", cur->name);
- buf[n] = '\0';
+ n = strlcpy(buf, cur->symlink, bufsz);
+ assert(n < bufsz);
+ } else {
+ ssize_t n;
+
+ fs_populate_path(cur, arg, path, sizeof(path), &fd);
+
+ n = readlinkat(fd, path, buf, bufsz - 1);
+ if (n == -1)
+ err(1, "readlinkat(%s)", cur->name);
+ buf[n] = '\0';
+ }
}
static void

File Metadata

Mime Type
text/plain
Expires
Tue, Sep 29, 6:07 PM (3 h, 21 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
39885718
Default Alt Text
D38028.id115004.diff (738 B)

Event Timeline