Print this page
4839 3294 generated elfdump struct layouts by hand, shouldn't have


  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
  24  * Use is subject to license terms.
  25  */
  26 /*
  27  * Copyright 2012 DEY Storage Systems, Inc.  All rights reserved.
  28  */
  29 
  30 #include <struct_layout.h>
  31 
  32 

  33 static const sl_auxv_layout_t auxv_layout = {
  34         { 0,    8,      0,      0 },            /* sizeof (auxv_t) */
  35         { 0,    4,      0,      1 },            /* a_type */
  36         { 4,    4,      0,      1 },            /* a_un.a_val */
  37         { 4,    4,      0,      0 },            /* a_un.a_ptr */
  38         { 4,    4,      0,      0 },            /* a_un.a_fcn */
  39 };
  40 
  41 
  42 static const sl_prgregset_layout_t prgregset_layout = {
  43         { 0,    76,     0,      0 },            /* sizeof (prgregset_t) */
  44         { 0,    4,      19,     0 },            /* elt0 */
  45 };
  46 
  47 
  48 static const sl_lwpstatus_layout_t lwpstatus_layout = {
  49         { 0,    800,    0,      0 },            /* sizeof (lwpstatus_t) */
  50         { 0,    4,      0,      0 },            /* pr_flags */
  51         { 4,    4,      0,      0 },            /* pr_lwpid */
  52         { 8,    2,      0,      0 },            /* pr_why */


 354         { 257,  1,      257,    0 },            /* nodename[] */
 355         { 514,  1,      257,    0 },            /* release[] */
 356         { 771,  1,      257,    0 },            /* version[] */
 357         { 1028, 1,      257,    0 },            /* machine[] */
 358 };
 359 
 360 
 361 static const sl_prfdinfo_layout_t prfdinfo_layout = {
 362         { 0,    1088,   0,      0 },    /* sizeof (prfdinfo_t) */
 363         { 0,    4,      0,      0 },    /* pr_fd */
 364         { 4,    4,      0,      0 },    /* pr_mode */
 365         { 8,    4,      0,      0 },    /* pr_uid */
 366         { 12,   4,      0,      0 },    /* pr_gid */
 367         { 16,   4,      0,      0 },    /* pr_major */
 368         { 20,   4,      0,      0 },    /* pr_minor */
 369         { 24,   4,      0,      0 },    /* pr_rmajor */
 370         { 28,   4,      0,      0 },    /* pr_rminor */
 371         { 32,   8,      0,      0 },    /* pr_ino */
 372         { 40,   8,      0,      0 },    /* pr_offset */
 373         { 48,   8,      0,      0 },    /* pr_size */
 374         { 56,   4,      0,      0 },    /* pr_filefags */
 375         { 60,   4,      0,      0 },    /* pr_fdflags */
 376         { 64,   1,      1024,   0 },    /* pr_path */
 377 };
 378 
 379 


 380 static const sl_arch_layout_t layout_i386 = {
 381         &auxv_layout,
 382         &fltset_layout,
 383         &lwpsinfo_layout,
 384         &lwpstatus_layout,
 385         &prcred_layout,
 386         &priv_impl_info_layout,
 387         &prpriv_layout,
 388         &psinfo_layout,
 389         &pstatus_layout,
 390         &prgregset_layout,
 391         &prpsinfo_layout,
 392         &prstatus_layout,
 393         &sigaction_layout,
 394         &siginfo_layout,
 395         &sigset_layout,
 396         &stack_layout,
 397         &sysset_layout,
 398         &timestruc_layout,
 399         &utsname_layout,


  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
  24  * Use is subject to license terms.
  25  */
  26 /*
  27  * Copyright 2012 DEY Storage Systems, Inc.  All rights reserved.
  28  */
  29 
  30 #include <struct_layout.h>
  31 
  32 
  33 
  34 static const sl_auxv_layout_t auxv_layout = {
  35         { 0,    8,      0,      0 },            /* sizeof (auxv_t) */
  36         { 0,    4,      0,      1 },            /* a_type */
  37         { 4,    4,      0,      1 },            /* a_un.a_val */
  38         { 4,    4,      0,      0 },            /* a_un.a_ptr */
  39         { 4,    4,      0,      0 },            /* a_un.a_fcn */
  40 };
  41 
  42 
  43 static const sl_prgregset_layout_t prgregset_layout = {
  44         { 0,    76,     0,      0 },            /* sizeof (prgregset_t) */
  45         { 0,    4,      19,     0 },            /* elt0 */
  46 };
  47 
  48 
  49 static const sl_lwpstatus_layout_t lwpstatus_layout = {
  50         { 0,    800,    0,      0 },            /* sizeof (lwpstatus_t) */
  51         { 0,    4,      0,      0 },            /* pr_flags */
  52         { 4,    4,      0,      0 },            /* pr_lwpid */
  53         { 8,    2,      0,      0 },            /* pr_why */


 355         { 257,  1,      257,    0 },            /* nodename[] */
 356         { 514,  1,      257,    0 },            /* release[] */
 357         { 771,  1,      257,    0 },            /* version[] */
 358         { 1028, 1,      257,    0 },            /* machine[] */
 359 };
 360 
 361 
 362 static const sl_prfdinfo_layout_t prfdinfo_layout = {
 363         { 0,    1088,   0,      0 },            /* sizeof (prfdinfo_t) */
 364         { 0,    4,      0,      0 },            /* pr_fd */
 365         { 4,    4,      0,      0 },            /* pr_mode */
 366         { 8,    4,      0,      0 },            /* pr_uid */
 367         { 12,   4,      0,      0 },            /* pr_gid */
 368         { 16,   4,      0,      0 },            /* pr_major */
 369         { 20,   4,      0,      0 },            /* pr_minor */
 370         { 24,   4,      0,      0 },            /* pr_rmajor */
 371         { 28,   4,      0,      0 },            /* pr_rminor */
 372         { 32,   8,      0,      0 },            /* pr_ino */
 373         { 40,   8,      0,      0 },            /* pr_offset */
 374         { 48,   8,      0,      0 },            /* pr_size */
 375         { 56,   4,      0,      0 },            /* pr_fileflags */
 376         { 60,   4,      0,      0 },            /* pr_fdflags */
 377         { 64,   1,      1024,   0 },            /* pr_path[] */
 378 };
 379 
 380 
 381 
 382 
 383 static const sl_arch_layout_t layout_i386 = {
 384         &auxv_layout,
 385         &fltset_layout,
 386         &lwpsinfo_layout,
 387         &lwpstatus_layout,
 388         &prcred_layout,
 389         &priv_impl_info_layout,
 390         &prpriv_layout,
 391         &psinfo_layout,
 392         &pstatus_layout,
 393         &prgregset_layout,
 394         &prpsinfo_layout,
 395         &prstatus_layout,
 396         &sigaction_layout,
 397         &siginfo_layout,
 398         &sigset_layout,
 399         &stack_layout,
 400         &sysset_layout,
 401         &timestruc_layout,
 402         &utsname_layout,