Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

Untitled

By: a guest on Oct 6th, 2010  |  syntax: None  |  size: 1.66 KB  |  views: 79  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. diff --git a/sys/kern/imgact_elf.c b/sys/kern/imgact_elf.c
  2. index 6146fd2..c886cd0 100644
  3. --- a/sys/kern/imgact_elf.c
  4. +++ b/sys/kern/imgact_elf.c
  5. @@ -117,6 +117,30 @@ static struct sysentvec elf_freebsd_sysvec = {
  6.         MINSIGSTKSZ
  7.  };
  8.  
  9. +static struct sysentvec elf_dragonfly_sysvec = {
  10. +        SYS_MAXSYSCALL,
  11. +        sysent,
  12. +        -1,
  13. +        0,
  14. +        0,
  15. +        0,
  16. +        0,
  17. +        0,
  18. +        elf_freebsd_fixup,
  19. +        sendsig,
  20. +        sigcode,
  21. +        &szsigcode,
  22. +        0,
  23. +#if defined(__x86_64__)
  24. +       "DragonFly ELF64",
  25. +#else
  26. +       "DragonFly ELF32",
  27. +#endif
  28. +       elf_coredump,
  29. +       NULL,
  30. +       MINSIGSTKSZ
  31. +};
  32. +
  33.  static Elf_Brandinfo freebsd_brand_info = {
  34.                                                 ELFOSABI_FREEBSD,
  35.                                                 "FreeBSD",
  36. @@ -132,7 +156,7 @@ static Elf_Brandinfo dragonfly_brand_info = {
  37.                                                 dragonfly_match_abi_note,
  38.                                                 "",
  39.                                                 "/usr/libexec/ld-elf.so.2",
  40. -                                               &elf_freebsd_sysvec
  41. +                                               &elf_dragonfly_sysvec
  42.                                           };
  43.  
  44.  static Elf_Brandinfo *elf_brand_list[MAX_BRANDS] = {
  45. diff --git a/usr.bin/truss/main.c b/usr.bin/truss/main.c
  46. index cbc82cf..84a6bb1 100644
  47. --- a/usr.bin/truss/main.c
  48. +++ b/usr.bin/truss/main.c
  49. @@ -83,10 +83,12 @@ struct ex_types {
  50.  } ex_types[] = {
  51.  #ifdef __i386__
  52.    { "FreeBSD a.out", i386_syscall_entry, i386_syscall_exit },
  53. +  { "DragonFly ELF32", i386_syscall_entry, i386_syscall_exit },
  54.    { "FreeBSD ELF32", i386_syscall_entry, i386_syscall_exit },
  55.    { "Linux ELF32", i386_linux_syscall_entry, i386_linux_syscall_exit },
  56.  #endif
  57.  #ifdef __x86_64__
  58. +  { "DragonFly ELF64", x86_64_syscall_entry, x86_64_syscall_exit },
  59.    { "FreeBSD ELF64", x86_64_syscall_entry, x86_64_syscall_exit },
  60.  #endif
  61.    { 0, 0, 0 },