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);