[BACK]Return to linux_misc.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / compat / linux / common

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/compat/linux/common/linux_misc.c between version 1.72 and 1.73

version 1.72, 2000/09/07 22:20:45 version 1.73, 2000/11/01 20:56:30
Line 77 
Line 77 
 #include <sys/mbuf.h>  #include <sys/mbuf.h>
 #include <sys/mman.h>  #include <sys/mman.h>
 #include <sys/mount.h>  #include <sys/mount.h>
 #include <sys/ptrace.h>  
 #include <sys/reboot.h>  #include <sys/reboot.h>
 #include <sys/resource.h>  #include <sys/resource.h>
 #include <sys/resourcevar.h>  #include <sys/resourcevar.h>
Line 92 
Line 91 
 #include <sys/utsname.h>  #include <sys/utsname.h>
 #include <sys/unistd.h>  #include <sys/unistd.h>
   
   #include <sys/ptrace.h>
   #include <machine/ptrace.h>
   
 #include <sys/syscallargs.h>  #include <sys/syscallargs.h>
   
 #include <compat/linux/common/linux_types.h>  #include <compat/linux/common/linux_types.h>
Line 107 
Line 109 
 #include <compat/linux/common/linux_ptrace.h>  #include <compat/linux/common/linux_ptrace.h>
 #include <compat/linux/common/linux_reboot.h>  #include <compat/linux/common/linux_reboot.h>
   
 int linux_ptrace_request_map[] = {  const int linux_ptrace_request_map[] = {
         LINUX_PTRACE_TRACEME,   PT_TRACE_ME,          LINUX_PTRACE_TRACEME,   PT_TRACE_ME,
         LINUX_PTRACE_PEEKTEXT,  PT_READ_I,          LINUX_PTRACE_PEEKTEXT,  PT_READ_I,
         LINUX_PTRACE_PEEKDATA,  PT_READ_D,          LINUX_PTRACE_PEEKDATA,  PT_READ_D,
Line 117  int linux_ptrace_request_map[] = {
Line 119  int linux_ptrace_request_map[] = {
         LINUX_PTRACE_KILL,      PT_KILL,          LINUX_PTRACE_KILL,      PT_KILL,
         LINUX_PTRACE_ATTACH,    PT_ATTACH,          LINUX_PTRACE_ATTACH,    PT_ATTACH,
         LINUX_PTRACE_DETACH,    PT_DETACH,          LINUX_PTRACE_DETACH,    PT_DETACH,
   #ifdef PT_STEP
           LINUX_PTRACE_SINGLESTEP,        PT_STEP,
   #endif
         -1          -1
 };  };
   
Line 1078  linux_sys_ptrace(p, v, retval)
Line 1083  linux_sys_ptrace(p, v, retval)
                 syscallarg(T) addr;                  syscallarg(T) addr;
                 syscallarg(T) data;                  syscallarg(T) data;
         } */ *uap = v;          } */ *uap = v;
         int *ptr, request;          const int *ptr;
           int request;
   
         ptr = linux_ptrace_request_map;          ptr = linux_ptrace_request_map;
         request = SCARG(uap, request);          request = SCARG(uap, request);
Line 1094  linux_sys_ptrace(p, v, retval)
Line 1100  linux_sys_ptrace(p, v, retval)
                         SCARG(&pta, addr) = (caddr_t)SCARG(uap, addr);                          SCARG(&pta, addr) = (caddr_t)SCARG(uap, addr);
                         SCARG(&pta, data) = SCARG(uap, data);                          SCARG(&pta, data) = SCARG(uap, data);
   
                           /*
                            * Linux ptrace(PTRACE_CONT, pid, 0, 0) means actually
                            * to continue as the process left off previously,
                            * i.e. same as if NetBSD ptrace called with
                            * addr == (caddr_t) 1.
                            */
                           if (request == LINUX_PTRACE_CONT && SCARG(uap, addr)==0)
                                   SCARG(&pta, addr) = (caddr_t) 1;
   
                         return sys_ptrace(p, &pta, retval);                          return sys_ptrace(p, &pta, retval);
                 }                  }
                 else                  else

Legend:
Removed from v.1.72  
changed lines
  Added in v.1.73

CVSweb <webmaster@jp.NetBSD.org>