Print this page
OS-5509 /native/usr/bin/mount does not work in LX
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>

*** 19,28 **** --- 19,29 ---- * CDDL HEADER END */ /* * Copyright 2015 Nexenta Systems, Inc. All rights reserved. + * Copyright 2016 Joyent, Inc. */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */
*** 53,62 **** --- 54,64 ---- #include <sys/signal.h> #include <sys/resource.h> #include <stropts.h> #include <sys/conf.h> #include <locale.h> + #include <zone.h> #include "fslib.h" #define VFS_PATH "/usr/lib/fs" #define ALT_PATH "/etc/fs" #define REMOTE "/etc/dfs/fstypes"
*** 799,816 **** } void doexec(char *fstype, char *newargv[]) { char full_path[PATH_MAX]; char alter_path[PATH_MAX]; char *vfs_path = VFS_PATH; char *alt_path = ALT_PATH; int i; /* build the full pathname of the fstype dependent command. */ ! sprintf(full_path, "%s/%s/%s", vfs_path, fstype, myname); sprintf(alter_path, "%s/%s/%s", alt_path, fstype, myname); newargv[1] = myname; if (Vflg) { printf("%s -F %s", newargv[1], fstype); --- 801,820 ---- } void doexec(char *fstype, char *newargv[]) { + const char *zroot = zone_get_nroot(); char full_path[PATH_MAX]; char alter_path[PATH_MAX]; char *vfs_path = VFS_PATH; char *alt_path = ALT_PATH; int i; /* build the full pathname of the fstype dependent command. */ ! (void) snprintf(full_path, sizeof (full_path), "%s/%s/%s/%s", ! (zroot != NULL ? zroot : ""), vfs_path, fstype, myname); sprintf(alter_path, "%s/%s/%s", alt_path, fstype, myname); newargv[1] = myname; if (Vflg) { printf("%s -F %s", newargv[1], fstype);