Print this page
OS-4119 lxbrand panic when running native perl inside lx zone
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
        
*** 20,29 ****
--- 20,30 ----
   */
  /*
   * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
   * Use is subject to license terms.
   * Copyright (c) 2011 Bayard G. Bell. All rights reserved.
+  * Copyright 2015, Joyent, Inc.
   */
  
  #include <sys/types.h>
  #include <sys/param.h>
  #include <sys/systm.h>
*** 52,62 ****
  #include <vm/as.h>
  #include <vm/seg.h>
  
  static int aoutexec(vnode_t *vp, execa_t *uap, uarg_t *args,
      intpdata_t *idatap, int level, long *execsz, int setid,
!     caddr_t exec_file, cred_t *cred, int brand_action);
  static int get_aout_head(struct vnode **vpp, struct exdata *edp, long *execsz,
      int *isdyn);
  static int aoutcore(vnode_t *vp, proc_t *pp, cred_t *credp,
      rlim64_t rlimit, int sig, core_content_t content);
  extern int elf32exec(vnode_t *, execa_t *, uarg_t *, intpdata_t *, int,
--- 53,63 ----
  #include <vm/as.h>
  #include <vm/seg.h>
  
  static int aoutexec(vnode_t *vp, execa_t *uap, uarg_t *args,
      intpdata_t *idatap, int level, long *execsz, int setid,
!     caddr_t exec_file, cred_t *cred, int *brand_action);
  static int get_aout_head(struct vnode **vpp, struct exdata *edp, long *execsz,
      int *isdyn);
  static int aoutcore(vnode_t *vp, proc_t *pp, cred_t *credp,
      rlim64_t rlimit, int sig, core_content_t content);
  extern int elf32exec(vnode_t *, execa_t *, uarg_t *, intpdata_t *, int,
*** 128,138 ****
  
  /*ARGSUSED*/
  static int
  aoutexec(vnode_t *vp, struct execa *uap, struct uarg *args,
      struct intpdata *idatap, int level, long *execsz, int setid,
!     caddr_t exec_file, cred_t *cred, int brand_action)
  {
          auxv32_t auxflags_auxv32;
          int error;
          struct exdata edp, edpout;
          struct execenv exenv;
--- 129,139 ----
  
  /*ARGSUSED*/
  static int
  aoutexec(vnode_t *vp, struct execa *uap, struct uarg *args,
      struct intpdata *idatap, int level, long *execsz, int setid,
!     caddr_t exec_file, cred_t *cred, int *brand_action)
  {
          auxv32_t auxflags_auxv32;
          int error;
          struct exdata edp, edpout;
          struct execenv exenv;