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, [email protected]

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)