NAME
    Sys::Ptrace - Perl interface to the ptrace(2) command

SYNOPSIS
      use Sys::Ptrace qw(ptrace PTRACE_TRACEME);

      ptrace( PTRACE_TRACEME, $pid, $addr, $data );

EXAMPLES
      use Sys::Ptrace qw(ptrace PTRACE_SYSCALL PTRACE_CONT PTRACE_TRACEME);

      ptrace(PTRACE_SYSCALL, $pid, undef, undef);

      ptrace(PTRACE_CONT, $pid, undef, undef);

      ptrace(PTRACE_TRACEME, $$, 0, 0);

DESCRIPTION
    Perl interface to the ptrace(2) command. This module is meant to be used
    mostly for debugging purposes and for black box testing where the source
    code is generally not available or unknown. This may also prove useful
    when the program or script in question has already been compiled to a
    binary or it is third party code.

  EXPORT
    ptrace( $request, $pid, $addr, $data)

      Returns true on success and sets $! on failure.

  EXPORT_OK
      PT_ATTACH
      PT_CONTINUE
      PT_DETACH
      PT_GETFPREGS
      PT_GETFPXREGS
      PT_GETREGS
      PT_KILL
      PT_READ_D
      PT_READ_I
      PT_READ_U
      PT_SETFPREGS
      PT_SETFPXREGS
      PT_SETREGS
      PT_STEP
      PT_SYSCALL
      PT_TRACE_ME
      PT_WRITE_D
      PT_WRITE_I
      PT_WRITE_U
      ptrace

    and all PTRACE_* constants defined in linux/ptrace.h and asm/ptrace.h

BUGS
    It is designed specifically for linux OS on the x86 and x86_64
    platforms. It is not meant to be tested or used on any other system at
    this time. Any portability changes and/or bug fixes should be sent to
    the author.

AUTHOR
    Rob Brown, rob@roobik.com

COPYRIGHT
    Copyright (c) 2001 Rob Brown. All rights reserved.

    Copyright (c) 2012 John Lightsey. All rights reserved.

    This program is free software; you may redistribute it and/or modify it
    under the same terms as Perl itself.

SEE ALSO
    ptrace(2)

