diff options
Diffstat (limited to 'solaris/SolarisProcess.h')
-rw-r--r-- | solaris/SolarisProcess.h | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/solaris/SolarisProcess.h b/solaris/SolarisProcess.h index 74cbb86..0fd458d 100644 --- a/solaris/SolarisProcess.h +++ b/solaris/SolarisProcess.h @@ -8,30 +8,36 @@ Released under the GNU GPLv2, see the COPYING file in the source distribution for its full text. */ -#include "Settings.h" +#include "config.h" // IWYU pragma: keep + #include <zone.h> #include <sys/proc.h> + +/* On OmniOS /usr/include/sys/regset.h redefines ERR to 13 - \r, breaking the Enter key. + * Since ncruses macros use the ERR macro, we can not use another name. + */ +#undef ERR #include <libproc.h> +#undef ERR +#define ERR (-1) + +#include "Settings.h" + typedef struct SolarisProcess_ { Process super; - int kernel; zoneid_t zoneid; char* zname; taskid_t taskid; projid_t projid; poolid_t poolid; ctid_t contid; - bool is_lwp; pid_t realpid; pid_t realppid; + pid_t realtgid; pid_t lwpid; } SolarisProcess; -#define Process_isKernelThread(_process) (_process->kernel == 1) - -#define Process_isUserlandThread(_process) (_process->pid != _process->tgid) - extern const ProcessClass SolarisProcess_class; extern const ProcessFieldData Process_fields[LAST_PROCESSFIELD]; @@ -40,6 +46,4 @@ Process* SolarisProcess_new(const Settings* settings); void Process_delete(Object* cast); -bool Process_isThread(const Process* this); - #endif |