final class oadd.org.apache.commons.net.telnet.TelnetInputStream extends java.io.BufferedInputStream implements java.lang.Runnable
{
private static final int EOF;
private static final int WOULD_BLOCK;
static final int STATE_DATA;
static final int STATE_IAC;
static final int STATE_WILL;
static final int STATE_WONT;
static final int STATE_DO;
static final int STATE_DONT;
static final int STATE_SB;
static final int STATE_SE;
static final int STATE_CR;
static final int STATE_IAC_SB;
private boolean hasReachedEOF;
private volatile boolean isClosed;
private boolean readIsWaiting;
private int receiveState;
private int queueHead;
private int queueTail;
private int bytesAvailable;
private final int[] queue;
private final oadd.org.apache.commons.net.telnet.TelnetClient client;
private final java.lang.Thread thread;
private java.io.IOException ioException;
private final int[] suboption;
private int suboptionCount;
private volatile boolean threaded;
void <init>(java.io.InputStream, oadd.org.apache.commons.net.telnet.TelnetClient)
{
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
java.io.InputStream v;
oadd.org.apache.commons.net.telnet.TelnetClient v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
v := @parameter: java.io.InputStream;
v := @parameter: oadd.org.apache.commons.net.telnet.TelnetClient;
specialinvoke v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: void <init>(java.io.InputStream,oadd.org.apache.commons.net.telnet.TelnetClient,boolean)>(v, v, 1);
return;
}
void <init>(java.io.InputStream, oadd.org.apache.commons.net.telnet.TelnetClient, boolean)
{
oadd.org.apache.commons.net.telnet.TelnetClient v;
int[] v, v;
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
java.lang.Thread v;
int v;
boolean v;
java.io.InputStream v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
v := @parameter: java.io.InputStream;
v := @parameter: oadd.org.apache.commons.net.telnet.TelnetClient;
v := @parameter: boolean;
specialinvoke v.<java.io.BufferedInputStream: void <init>(java.io.InputStream)>(v);
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client> = v;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean isClosed> = 1;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean hasReachedEOF> = 0;
v = newarray (int)[2049];
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue> = v;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueHead> = 0;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueTail> = 0;
v = v.<oadd.org.apache.commons.net.telnet.TelnetClient: int maxSubnegotiationLength>;
v = newarray (int)[v];
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] suboption> = v;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable> = 0;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.io.IOException ioException> = null;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean readIsWaiting> = 0;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean threaded> = 0;
if v == 0 goto label;
v = new java.lang.Thread;
specialinvoke v.<java.lang.Thread: void <init>(java.lang.Runnable)>(v);
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.lang.Thread thread> = v;
goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.lang.Thread thread> = null;
label:
return;
}
public int available() throws java.io.IOException
{
java.lang.Throwable v;
int[] v;
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
int v, v, v, v;
boolean v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean threaded>;
if v == 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
exitmonitor v;
label:
return v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
v = specialinvoke v.<java.io.BufferedInputStream: int available()>();
v = v + v;
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public void close() throws java.io.IOException
{
java.lang.Throwable v;
int[] v, v;
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
java.lang.Thread v, v, v;
boolean v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
specialinvoke v.<java.io.BufferedInputStream: void close()>();
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
entermonitor v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean hasReachedEOF> = 1;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean isClosed> = 1;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.lang.Thread thread>;
if v == null goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.lang.Thread thread>;
v = virtualinvoke v.<java.lang.Thread: boolean isAlive()>();
if v == 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.lang.Thread thread>;
virtualinvoke v.<java.lang.Thread: void interrupt()>();
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void notifyAll()>();
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public boolean markSupported()
{
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
return 0;
}
private boolean processChar(int) throws java.lang.InterruptedException
{
java.lang.Throwable v;
java.lang.IllegalStateException v;
int[] v, v, v, v, v, v, v;
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
int v, v, v, v, v, v, v, v, v, v, v;
boolean v, v, v, v, v;
java.lang.InterruptedException v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
v := @parameter: int;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
v = lengthof v;
v = v - 1;
if v < v goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean threaded>;
if v != 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Queue is full! Cannot process another character.");
throw v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void notify()>();
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void wait()>();
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean readIsWaiting>;
if v == 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean threaded>;
if v == 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void notify()>();
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueTail>;
v[v] = v;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
v = v + 1;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable> = v;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueTail>;
v = v + 1;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueTail> = v;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
v = lengthof v;
if v < v goto label;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueTail> = 0;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return v;
catch java.lang.InterruptedException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public int read() throws java.io.IOException
{
int[] v, v, v, v, v, v, v, v, v, v;
boolean v, v, v, v, v;
java.lang.Throwable v, v;
java.io.InterruptedIOException v, v;
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.io.IOException v, v;
java.lang.InterruptedException v, v, v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.io.IOException ioException>;
if v == null goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.io.IOException ioException>;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.io.IOException ioException> = null;
throw v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
if v != 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean hasReachedEOF>;
if v == 0 goto label;
exitmonitor v;
label:
v = (int) -1;
return v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean threaded>;
if v == 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void notify()>();
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean readIsWaiting> = 1;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void wait()>();
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean readIsWaiting> = 0;
label:
goto label;
label:
v := @caughtexception;
v = new java.io.InterruptedIOException;
specialinvoke v.<java.io.InterruptedIOException: void <init>(java.lang.String)>("Fatal thread interruption during read.");
throw v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean readIsWaiting> = 1;
v = 1;
label:
v = specialinvoke v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int read(boolean)>(v);
if v >= 0 goto label;
v = (int) -2;
if v == v goto label;
label:
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
entermonitor v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.io.IOException ioException> = v;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void notifyAll()>();
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void wait(long)>(100L);
label:
goto label;
label:
v := @caughtexception;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
exitmonitor v;
label:
v = (int) -1;
return v;
label:
v = (int) -2;
if v == v goto label;
specialinvoke v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean processChar(int)>(v);
label:
goto label;
label:
v := @caughtexception;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean isClosed>;
if v == 0 goto label;
exitmonitor v;
label:
v = (int) -1;
return v;
label:
v = 0;
v = specialinvoke v.<java.io.BufferedInputStream: int available()>();
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
v = lengthof v;
v = v - 1;
if v < v goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean readIsWaiting> = 0;
goto label;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueHead>;
v = v[v];
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueHead>;
v = v + 1;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueHead> = v;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
v = lengthof v;
if v < v goto label;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int queueHead> = 0;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
v = v - 1;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable> = v;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
if v != 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean threaded>;
if v == 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void notify()>();
label:
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.InterruptedException from label to label with label;
catch java.io.InterruptedIOException from label to label with label;
catch java.lang.InterruptedException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.InterruptedException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private int read(boolean) throws java.io.IOException
{
oadd.org.apache.commons.net.telnet.TelnetClient v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
int[] v, v, v, v, v;
boolean v, v;
java.lang.Throwable v, v, v, v, v, v, v;
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
v := @parameter: boolean;
label:
if v != 0 goto label;
v = specialinvoke v.<java.io.BufferedInputStream: int available()>();
if v != 0 goto label;
v = (int) -2;
return v;
label:
v = specialinvoke v.<java.io.BufferedInputStream: int read()>();
if v >= 0 goto label;
v = (int) -1;
return v;
label:
v = v & 255;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void processAYTResponse()>();
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void spyRead(int)>(v);
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState>;
tableswitch(v)
{
case 0: goto label;
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
default: goto label;
};
label:
if v == 0 goto label;
label:
if v != 255 goto label;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 1;
goto label;
label:
if v != 13 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
v = virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: boolean requestedDont(int)>(0);
if v == 0 goto label;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 8;
goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
goto label;
label:
tableswitch(v)
{
case 240: goto label;
case 241: goto label;
case 242: goto label;
case 243: goto label;
case 244: goto label;
case 245: goto label;
case 246: goto label;
case 247: goto label;
case 248: goto label;
case 249: goto label;
case 250: goto label;
case 251: goto label;
case 252: goto label;
case 253: goto label;
case 254: goto label;
case 255: goto label;
default: goto label;
};
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 2;
goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 3;
goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 4;
goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 5;
goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int suboptionCount> = 0;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 6;
goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
goto label;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void processCommand(int)>(v);
goto label;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void processWill(int)>(v);
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void flushOutputStream()>();
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
goto label;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void processWont(int)>(v);
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void flushOutputStream()>();
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
goto label;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void processDo(int)>(v);
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void flushOutputStream()>();
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
goto label;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void processDont(int)>(v);
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void flushOutputStream()>();
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
goto label;
label:
lookupswitch(v)
{
case 255: goto label;
default: goto label;
};
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 9;
goto label;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int suboptionCount>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] suboption>;
v = lengthof v;
if v >= v goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] suboption>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int suboptionCount>;
v = v + 1;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int suboptionCount> = v;
v[v] = v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 6;
goto label;
label:
lookupswitch(v)
{
case 240: goto label;
case 255: goto label;
default: goto label;
};
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] suboption>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int suboptionCount>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void processSuboption(int[],int)>(v, v);
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void flushOutputStream()>();
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 0;
goto label;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int suboptionCount>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] suboption>;
v = lengthof v;
if v >= v goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] suboption>;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int suboptionCount>;
v = v + 1;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int suboptionCount> = v;
v[v] = v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int receiveState> = 6;
goto label;
label:
return v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public int read(byte[]) throws java.io.IOException
{
byte[] v;
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
int v, v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
v := @parameter: byte[];
v = lengthof v;
v = virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int read(byte[],int,int)>(v, 0, v);
return v;
}
public int read(byte[], int, int) throws java.io.IOException
{
java.lang.Throwable v;
byte[] v;
int[] v;
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
int v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
if v >= 1 goto label;
return 0;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
entermonitor v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
if v <= v goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int bytesAvailable>;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int read()>();
v = v;
v = (int) -1;
if v != v goto label;
v = (int) -1;
return v;
label:
v = v;
label:
v = v;
v = v + 1;
v[v] = v;
v = v - 1;
if v <= 0 goto label;
v = virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int read()>();
v = v;
v = (int) -1;
if v != v goto label;
label:
v = v - v;
return v;
catch java.lang.Throwable from label to label with label;
}
public void run()
{
java.lang.Throwable v, v, v;
java.io.InterruptedIOException v;
oadd.org.apache.commons.net.telnet.TelnetClient v, v;
int[] v, v, v, v, v, v;
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
int v;
boolean v, v, v, v;
java.io.IOException v;
java.lang.RuntimeException v;
java.lang.InterruptedException v, v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean isClosed>;
if v != 0 goto label;
label:
v = specialinvoke v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int read(boolean)>(1);
if v < 0 goto label;
label:
goto label;
label:
v := @caughtexception;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
entermonitor v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.io.IOException ioException> = v;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void notifyAll()>();
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void wait(long)>(100L);
label:
goto label;
label:
v := @caughtexception;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean isClosed>;
if v == 0 goto label;
exitmonitor v;
label:
goto label;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v := @caughtexception;
specialinvoke v.<java.io.BufferedInputStream: void close()>();
goto label;
label:
v = 0;
label:
v = specialinvoke v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean processChar(int)>(v);
label:
goto label;
label:
v := @caughtexception;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean isClosed>;
if v != 0 goto label;
label:
if v == 0 goto label;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void notifyInputListener()>();
goto label;
label:
v := @caughtexception;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
entermonitor v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.io.IOException ioException> = v;
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: oadd.org.apache.commons.net.telnet.TelnetClient client>;
virtualinvoke v.<oadd.org.apache.commons.net.telnet.TelnetClient: void notifyInputListener()>();
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
entermonitor v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean isClosed> = 1;
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean hasReachedEOF> = 1;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: int[] queue>;
virtualinvoke v.<java.lang.Object: void notify()>();
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean threaded> = 0;
return;
catch java.io.InterruptedIOException from label to label with label;
catch java.lang.InterruptedException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.RuntimeException from label to label with label;
catch java.lang.InterruptedException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
void start()
{
oadd.org.apache.commons.net.telnet.TelnetInputStream v;
java.lang.Thread v, v, v, v, v;
int v, v;
v := @this: oadd.org.apache.commons.net.telnet.TelnetInputStream;
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.lang.Thread thread>;
if v != null goto label;
return;
label:
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean isClosed> = 0;
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
v = virtualinvoke v.<java.lang.Thread: int getPriority()>();
v = v + 1;
if v <= 10 goto label;
v = 10;
label:
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.lang.Thread thread>;
virtualinvoke v.<java.lang.Thread: void setPriority(int)>(v);
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.lang.Thread thread>;
virtualinvoke v.<java.lang.Thread: void setDaemon(boolean)>(1);
v = v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: java.lang.Thread thread>;
virtualinvoke v.<java.lang.Thread: void start()>();
v.<oadd.org.apache.commons.net.telnet.TelnetInputStream: boolean threaded> = 1;
return;
}
}