|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.iids.aos.agentserver.jailing.Jail
public class Jail
Process jail. TODO description
| Field Summary | |
|---|---|
static java.lang.String |
defaultJailBinary
|
static java.lang.String |
defaultJailPolicy
|
static boolean |
JAIL_ENABLED
|
static int |
JF_EXEC_BACKGROUND
Jail execution in foreground/background. |
static int |
JF_EXEC_JAILED
Enable or disable process jailing. |
| Constructor Summary | |
|---|---|
Jail()
Create Jail with default options (all flags disabled). |
|
Jail(int flags)
Create jail with flags. |
|
| Method Summary | |
|---|---|
void |
addIpcEscape(int port)
Add IPC escape to jailer for local TCP port. |
void |
addIpcEscape(java.lang.String ipv4,
int port)
|
boolean |
canJail()
Query if the platform is able to do jailing. |
boolean |
checkFlag(int flag)
|
java.lang.Process |
exec(java.lang.String... args)
Start the (possibly jailed) process. |
java.lang.String |
getCommand()
Get the complete command to execute the (possibly jailed) agent. |
void |
setArgs(java.lang.String args)
|
boolean |
setCode(byte[] code,
java.lang.String path)
Set the binary code for this agent and store it in path. |
void |
setEnv(java.util.Map<java.lang.String,java.lang.String> env)
|
void |
setFlag(int flag)
|
void |
setRuntimeDir(java.lang.String path)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final boolean JAIL_ENABLED
public static final int JF_EXEC_BACKGROUND
public static final int JF_EXEC_JAILED
public static final java.lang.String defaultJailPolicy
public static final java.lang.String defaultJailBinary
| Constructor Detail |
|---|
public Jail(int flags)
public Jail()
| Method Detail |
|---|
public boolean canJail()
public java.lang.String getCommand()
Otherwise it returns the complete command (including necessary IPC escapes) so that the agent in the jail can still contact the necessary TCP ports, provided these were all set with addIpcEscape().
public boolean setCode(byte[] code,
java.lang.String path)
public boolean checkFlag(int flag)
public void setFlag(int flag)
public void setRuntimeDir(java.lang.String path)
public void setEnv(java.util.Map<java.lang.String,java.lang.String> env)
public void setArgs(java.lang.String args)
public void addIpcEscape(int port)
throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentException
public void addIpcEscape(java.lang.String ipv4,
int port)
throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentExceptionpublic java.lang.Process exec(java.lang.String... args)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||