kvm_getcmd man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

kvm_getu(3KVM)		  Kernel VM Library Functions		kvm_getu(3KVM)

NAME
       kvm_getu,  kvm_getcmd  -	 get  the u-area or invocation arguments for a
       process

SYNOPSIS
       cc [ flag... ] file... -lkvm [ library...]
       #include <kvm.h>
       #include <sys/param.h>
       #include <sys/user.h>
       #include <sys/proc.h>

       struct user *kvm_getu(kvm_t *kd, struct proc *proc);

       int kvm_getcmd(kvm_t *kd, struct	 proc  *proc,  struct  user  *u,  char
       ***arg, char ***env);

DESCRIPTION
       The  kvm_getu()	function  reads the u-area of the process specified by
       proc to an area of static storage associated  with  kd  and  returns  a
       pointer	to  it.	 Subsequent  calls  to	kvm_getu() will overwrite this
       static area.

       The kd argument is  a  pointer  to  a  kernel  descriptor  returned  by
       kvm_open(3KVM). The proc argument is a pointer to a copy in the current
       process's address space of a proc structure, obtained, for instance, by
       a prior kvm_nextproc(3KVM) call.

       The  kvm_getcmd()  function  constructs	a list of string pointers that
       represent the command arguments and environment that were used to  ini‐
       tiate the process specified by proc.

       The  kd	argument  is  a	 pointer  to  a	 kernel descriptor returned by
       kvm_open(3KVM). The u argument is a pointer to a copy  in  the  current
       process's address space of a user structure, obtained, for instance, by
       a prior kvm_getu() call. If arg is not NULL, the command line arguments
       are formed into a null-terminated array of string pointers. The address
       of the first such pointer is returned in arg. If env is not  NULL,  the
       environment  is formed into a null-terminated array of string pointers.
       The address of the first of these is returned in env.

       The pointers returned in arg and env refer to data  allocated  by  mal‐
       loc()  and  should  be freed by a call to free() when no longer needed.
       See malloc(3C). Both the string pointers and the strings themselves are
       deallocated when freed.

       Since  the environment and command line arguments might have been modi‐
       fied by the user process, there is no guarantee that it will be	possi‐
       ble to reconstruct the original command at all.	The kvm_getcmd() func‐
       tion will make the best attempt possible,  returning  −1	 if  the  user
       process data is unrecognizable.

RETURN VALUES
       On success, kvm_getu() returns a pointer to a copy of the u-area of the
       process specified by proc. On failure, it returns NULL.

       The kvm_getcmd() function returns 0 on success and −1 on failure. If −1
       is  returned, the caller still has the option of using the command line
       fragment that is stored in the u-area.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Stable			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │Unsafe			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       kvm_nextproc(3KVM),   kvm_open(3KVM),   kvm_kread(3KVM),	   malloc(3C),
       libkvm(3LIB), attributes (5)

NOTES
       On  systems  that  support both 32-bit and 64-bit processes, the 64-bit
       implementation of libkvm ensures that the arg and  env  pointer	arrays
       for kvm_getcmd() are translated to the same form as if they were 64-bit
       processes.  Applications that wish  to  access  the  raw	 32-bit	 stack
       directly can use kvm_uread(). See kvm_read(3KVM).

SunOS 5.10			  2 May 2002			kvm_getu(3KVM)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net