extern int MyPid;        /* the shell's process id       */
extern int MyPgrp;       /* the shell's process group    */
extern int TermPgrp;     /* the terminal's process group */

#define	JSTOPPED		(1L<<1)
#define	JRUNNING		(1L<<2)
#define	JNEEDNOTE		(1L<<3)

#define	PTTYINPUT		(1L<<1)
#define	PTTYOUTPUT	(1L<<2)
#define	PSTOPSIGNAL	(1L<<3)
#define	PSTOPPED		(1L<<4)
#define	PDONE		(1L<<5)
#define	PEXITED		(1L<<6)
#define	PCOREDUMP		(1L<<7)
#define	PSIGNALED		(1L<<8)

struct _PROC {
	int pid;
	int status;
	int exitcode;
	int termsig;
	struct _PROC *next;
};
typedef struct _PROC PROC;

struct _JOB {
	int status;
	int pgrp;
	PROC	*procs;
};
typedef struct _JOB JOB;



syntax highlighted by Code2HTML, v. 0.9.1