i think i almost have the default pass, i have to understand one more function
BIN
verb/fs.etc_ro.web/api/aplug.jar
Normal file
29
verb/fs.etc_ro.web/api/aplug/META-INF/MANIFEST.MF
Normal file
@@ -0,0 +1,29 @@
|
||||
Manifest-Version: 1.0
|
||||
Application-Name: aplug
|
||||
Permissions: all-permissions
|
||||
Created-By: 1.5.0_22 (Sun Microsystems Inc.)
|
||||
Caller-Allowable-Codebase: *
|
||||
Main-Class: aplug
|
||||
Codebase: *
|
||||
|
||||
Name: aplug$Talkie.class
|
||||
SHA1-Digest: 2aVNEt1UmXZxsGDqKuMWyMSdJNo=
|
||||
|
||||
Name: aplug$TS.class
|
||||
SHA1-Digest: bcCulMO2JAF/cEyPAaq+MlpJFNY=
|
||||
|
||||
Name: aplug.class
|
||||
SHA1-Digest: Xq72uaqog4K4CxU+aaRTHI6lnbI=
|
||||
|
||||
Name: aplug$ACS_Control.class
|
||||
SHA1-Digest: dlTPvwzdBrmN8uHUeUeyV2wKXG0=
|
||||
|
||||
Name: aplug$SI.class
|
||||
SHA1-Digest: Cf2RT0iFdv2VDDI+DznPMBWi63w=
|
||||
|
||||
Name: aplug$ACS_Audio.class
|
||||
SHA1-Digest: 0MVKIbdmw41F2CP3X8wlN1o3H0g=
|
||||
|
||||
Name: aplug$AU.class
|
||||
SHA1-Digest: 6BD9xeWhsDRn6sJ4roR85fvIW3c=
|
||||
|
BIN
verb/fs.etc_ro.web/api/aplug/META-INF/WWW_DLIN.RSA
Normal file
26
verb/fs.etc_ro.web/api/aplug/META-INF/WWW_DLIN.SF
Normal file
@@ -0,0 +1,26 @@
|
||||
Signature-Version: 1.0
|
||||
SHA1-Digest-Manifest-Main-Attributes: UBp7e9hhiW9jTs0aB5k+hWchTpw=
|
||||
Created-By: 1.6.0_45 (Sun Microsystems Inc.)
|
||||
SHA1-Digest-Manifest: 1oXVrSmx4HV21apD+8+2AR+RNNI=
|
||||
|
||||
Name: aplug$Talkie.class
|
||||
SHA1-Digest: EP5wpvCzDUkUzp+/p3+ukV+t+/M=
|
||||
|
||||
Name: aplug$TS.class
|
||||
SHA1-Digest: KOmQFfuWyt6wZAkJN2gZuXsjQYA=
|
||||
|
||||
Name: aplug.class
|
||||
SHA1-Digest: 6zuZlxCL+jRUigu/O+yhygmQEMM=
|
||||
|
||||
Name: aplug$ACS_Control.class
|
||||
SHA1-Digest: G3Cxz5qKFceS3FaAhkrlV+AV3dc=
|
||||
|
||||
Name: aplug$SI.class
|
||||
SHA1-Digest: 6UqL3yyydR4/ynbgZGVoq2I01fk=
|
||||
|
||||
Name: aplug$ACS_Audio.class
|
||||
SHA1-Digest: i1cFnbJWe0uE5vHT4vrjCPvYLJ0=
|
||||
|
||||
Name: aplug$AU.class
|
||||
SHA1-Digest: wYFYPf9xYN37zWkEJ/+DHdoILRo=
|
||||
|
BIN
verb/fs.etc_ro.web/api/aplug/aplug$ACS_Audio.class
Normal file
BIN
verb/fs.etc_ro.web/api/aplug/aplug$ACS_Control.class
Normal file
BIN
verb/fs.etc_ro.web/api/aplug/aplug$AU.class
Normal file
BIN
verb/fs.etc_ro.web/api/aplug/aplug$SI.class
Normal file
BIN
verb/fs.etc_ro.web/api/aplug/aplug$TS.class
Normal file
BIN
verb/fs.etc_ro.web/api/aplug/aplug$Talkie.class
Normal file
BIN
verb/fs.etc_ro.web/api/aplug/aplug.class
Normal file
2409
verb/fs.etc_ro.web/api/aplug/aplug.jad
Normal file
BIN
verb/fs.etc_ro.web/api/aplug/aplug.jar
Normal file
BIN
verb/fs.etc_ro.web/api/aplugLiteDL.cab
Normal file
BIN
verb/fs.etc_ro.web/api/aplugLiteDl/aplugLiteDL.cab
Normal file
25
verb/fs.etc_ro.web/api/aplugLiteDl/aplugLiteDL.inf
Normal file
@@ -0,0 +1,25 @@
|
||||
[version]
|
||||
signature="$CHICAGO$"
|
||||
AdvancedINF=2.0
|
||||
[Add.Code]
|
||||
msvcrt.dll=msvcrt.dll
|
||||
mfc42.dll=mfc42.dll
|
||||
olepro32.dll=olepro32.dll
|
||||
aplugLiteDL.ocx=aplugLiteDL.ocx
|
||||
[aplugLiteDL.ocx]
|
||||
file-win32-x86=thiscab
|
||||
clsid={7191F0AC-D686-46A8-BFCC-EA61778C74DD}
|
||||
FileVersion=2,3,2,41
|
||||
RegisterServer=yes
|
||||
[msvcrt.dll]
|
||||
FileVersion=4,20,0,6164
|
||||
hook=mfc42installer
|
||||
[mfc42.dll]
|
||||
FileVersion=4,2,0,6256
|
||||
hook=mfc42installer
|
||||
[olepro32.dll]
|
||||
FileVersion=4,2,0,6068
|
||||
hook=mfc42installer
|
||||
[mfc42installer]
|
||||
file-win32-x86=http://activex.microsoft.com/controls/vc/mfc42.cab
|
||||
run=%EXTRACT_DIR%\mfc42.exe
|
BIN
verb/fs.etc_ro.web/api/aplugLiteDl/aplugLiteDL.ocx
Normal file
BIN
verb/fs.etc_ro.web/api/sounddb.jar
Normal file
14
verb/fs.etc_ro.web/api/sounddb/META-INF/MANIFEST.MF
Normal file
@@ -0,0 +1,14 @@
|
||||
Manifest-Version: 1.0
|
||||
Application-Name: sounddb
|
||||
Permissions: all-permissions
|
||||
Created-By: 1.7.0_04 (Oracle Corporation)
|
||||
Caller-Allowable-Codebase: *
|
||||
Main-Class: sounddb
|
||||
Codebase: *
|
||||
|
||||
Name: sounddb.class
|
||||
SHA1-Digest: 5R8mF2pBzyk5sHynPfeR1i251Lc=
|
||||
|
||||
Name: sounddb$AU.class
|
||||
SHA1-Digest: acxsN9J44TUSmYa1ylUKWfjJDsE=
|
||||
|
BIN
verb/fs.etc_ro.web/api/sounddb/META-INF/WWW_DLIN.RSA
Normal file
11
verb/fs.etc_ro.web/api/sounddb/META-INF/WWW_DLIN.SF
Normal file
@@ -0,0 +1,11 @@
|
||||
Signature-Version: 1.0
|
||||
SHA1-Digest-Manifest-Main-Attributes: X2n8mlKX04cpcm8vj/5IQrf0lS8=
|
||||
Created-By: 1.6.0_45 (Sun Microsystems Inc.)
|
||||
SHA1-Digest-Manifest: g9+nyeyOuSAUhC6IQNp3xKUGmYU=
|
||||
|
||||
Name: sounddb.class
|
||||
SHA1-Digest: DXHVlhyw2rWuueIRRQ6F1jBUOdI=
|
||||
|
||||
Name: sounddb$AU.class
|
||||
SHA1-Digest: MsGGwNhpi46N81Zp9g5+BpdOMfA=
|
||||
|
BIN
verb/fs.etc_ro.web/api/sounddb/sounddb$AU.class
Normal file
BIN
verb/fs.etc_ro.web/api/sounddb/sounddb.class
Normal file
545
verb/fs.etc_ro.web/api/sounddb/sounddb.jad
Normal file
@@ -0,0 +1,545 @@
|
||||
// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov.
|
||||
// Jad home page: http://www.geocities.com/kpdus/jad.html
|
||||
// Decompiler options: packimports(3)
|
||||
// Source File Name: sounddb.java
|
||||
|
||||
import java.applet.Applet;
|
||||
import java.awt.*;
|
||||
import java.io.*;
|
||||
import java.net.Socket;
|
||||
import java.net.URL;
|
||||
import java.security.MessageDigest;
|
||||
import java.util.Random;
|
||||
import javax.sound.sampled.*;
|
||||
|
||||
public class sounddb extends Applet
|
||||
implements Runnable
|
||||
{
|
||||
class AU extends Thread
|
||||
{
|
||||
|
||||
public void run()
|
||||
{
|
||||
do
|
||||
{
|
||||
if(!ThreadRun)
|
||||
break;
|
||||
try
|
||||
{
|
||||
if(algorithm == 0 || algorithm == 2)
|
||||
sTmp = new String("GET /audio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: Basic ");
|
||||
else
|
||||
sTmp = new String("GET /dgaudio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: Basic ");
|
||||
sTmp = sTmp.concat(m_sPassword);
|
||||
sTmp = sTmp.concat("\r\n\r\n");
|
||||
m_GetSoundString = sTmp.getBytes("8859_1");
|
||||
do
|
||||
{
|
||||
Thread.currentThread();
|
||||
Thread.sleep(100L);
|
||||
if(m_iRemotePort.intValue() == 8481 || m_iRemotePort.intValue() == 80)
|
||||
m_sktSound = new Socket(m_sRemoteHost, 80);
|
||||
else
|
||||
m_sktSound = new Socket(m_sRemoteHost, m_iRemotePort.intValue());
|
||||
m_sktSound.setSoTimeout(30000);
|
||||
m_sktSound.setKeepAlive(true);
|
||||
m_soundInput = new DataInputStream(m_sktSound.getInputStream());
|
||||
m_soundOutput = new DataOutputStream(m_sktSound.getOutputStream());
|
||||
m_soundOutput.write(m_GetSoundString);
|
||||
m_soundInput.read(rData, 0, 64);
|
||||
String s = new String(rData, 0, 64);
|
||||
if(s != null && s.indexOf("HTTP/") >= 0 && s.indexOf("200") >= 0)
|
||||
break;
|
||||
BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(m_sktSound.getInputStream()));
|
||||
do
|
||||
{
|
||||
String s1;
|
||||
if((s1 = bufferedreader.readLine()) == null)
|
||||
break;
|
||||
if(s1.indexOf("WWW-Authenticate: ") < 0)
|
||||
continue;
|
||||
int i = s1.indexOf("realm=") + 7;
|
||||
int j = s1.indexOf('"', i);
|
||||
realm = s1.substring(i, j);
|
||||
i = s1.indexOf("qop=") + 5;
|
||||
j = s1.indexOf('"', i);
|
||||
qop = s1.substring(i, j);
|
||||
i = s1.indexOf("nonce=") + 7;
|
||||
j = s1.indexOf('"', i);
|
||||
nonce = s1.substring(i, j);
|
||||
break;
|
||||
} while(true);
|
||||
if(algorithm == 0)
|
||||
{
|
||||
sTmp = new String("GET /audio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: Basic ");
|
||||
sTmp = sTmp.concat(m_sPassword);
|
||||
} else
|
||||
if(algorithm == 1)
|
||||
{
|
||||
String s2 = GetDigestAuthentication("/dgaudio.cgi", realm, qop, nonce);
|
||||
sTmp = new String("GET /dgaudio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: ");
|
||||
sTmp = sTmp.concat(s2);
|
||||
} else
|
||||
{
|
||||
String s3 = GetDigestAuthentication("/audio.cgi", realm, qop, nonce);
|
||||
sTmp = new String("GET /audio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: ");
|
||||
sTmp = sTmp.concat(s3);
|
||||
}
|
||||
sTmp = sTmp.concat("\r\n\r\n");
|
||||
m_GetSoundString = sTmp.getBytes("8859_1");
|
||||
m_soundInput.close();
|
||||
m_soundOutput.close();
|
||||
bufferedreader.close();
|
||||
m_sktSound.close();
|
||||
m_soundInput = null;
|
||||
m_soundOutput = null;
|
||||
bufferedreader = null;
|
||||
m_sktSound = null;
|
||||
} while(true);
|
||||
nRead = 0;
|
||||
boolean flag = false;
|
||||
int j1;
|
||||
do
|
||||
{
|
||||
nRead = nRead + m_soundInput.read(rData, nRead, rData.length - nRead);
|
||||
j1 = 0;
|
||||
do
|
||||
{
|
||||
if(j1 >= nRead - 7)
|
||||
break;
|
||||
if(rData[j1] == 13 && rData[j1 + 1] == 10 && rData[j1 + 2] == 13 && rData[j1 + 3] == 10 && rData[j1 + 4] == 82 && rData[j1 + 5] == 73 && rData[j1 + 6] == 70 && rData[j1 + 7] == 70)
|
||||
{
|
||||
flag = true;
|
||||
j1 += 4;
|
||||
break;
|
||||
}
|
||||
j1++;
|
||||
} while(true);
|
||||
Thread.currentThread();
|
||||
Thread.sleep(3L);
|
||||
} while(nRead != -1 && !flag);
|
||||
long l = (long)rData[j1 + 24] + ((long)rData[j1 + 25] << 8) + ((long)rData[j1 + 26] << 16) + ((long)rData[j1 + 27] << 24);
|
||||
int k = rData[j1 + 22] + (rData[j1 + 23] << 8);
|
||||
int i1 = rData[j1 + 34] + (rData[j1 + 35] << 8);
|
||||
j1 += 44;
|
||||
soundFormat = new AudioFormat(l, i1, k, true, false);
|
||||
info = new javax.sound.sampled.DataLine.Info(javax/sound/sampled/SourceDataLine, soundFormat, InternalBufferSize);
|
||||
line = (SourceDataLine)AudioSystem.getLine(info);
|
||||
line.open(soundFormat, InternalBufferSize);
|
||||
int k1 = line.getBufferSize();
|
||||
mute_start_time = System.currentTimeMillis();
|
||||
int l1 = rData[j1 + 63] << 8 + rData[j1 + 62];
|
||||
nRead = 0;
|
||||
int i2 = k * 256;
|
||||
retry = 0;
|
||||
do
|
||||
{
|
||||
if(nRead == -1 || !ThreadRun)
|
||||
break;
|
||||
if(mute_start_time != 0L)
|
||||
{
|
||||
if(System.currentTimeMillis() - mute_start_time > 1000L)
|
||||
{
|
||||
line.start();
|
||||
mute_start_time = 0L;
|
||||
} else
|
||||
{
|
||||
m_soundInput.read(rData, 0, rData.length);
|
||||
}
|
||||
Thread.currentThread();
|
||||
Thread.sleep(50L);
|
||||
} else
|
||||
{
|
||||
Thread.currentThread();
|
||||
Thread.sleep(8L);
|
||||
nRead = m_soundInput.read(rData, 0, rData.length);
|
||||
if(nRead > 0 && (k1 - line.available()) / i2 < 50)
|
||||
if(line.available() >= nRead)
|
||||
line.write(rData, 0, nRead);
|
||||
else
|
||||
line.flush();
|
||||
}
|
||||
} while(true);
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
System.err.println(exception);
|
||||
}
|
||||
try
|
||||
{
|
||||
line.flush();
|
||||
line.stop();
|
||||
line.close();
|
||||
line = null;
|
||||
soundFormat = null;
|
||||
info = null;
|
||||
m_soundInput.close();
|
||||
m_soundOutput.close();
|
||||
m_sktSound.close();
|
||||
m_soundInput = null;
|
||||
m_soundOutput = null;
|
||||
m_sktSound = null;
|
||||
}
|
||||
catch(Exception exception1)
|
||||
{
|
||||
System.err.println(exception1);
|
||||
}
|
||||
} while(true);
|
||||
}
|
||||
|
||||
int ExternalBufferSize;
|
||||
int InternalBufferSize;
|
||||
SourceDataLine line;
|
||||
String sTmp;
|
||||
Socket m_sktSound;
|
||||
DataInputStream m_soundInput;
|
||||
DataOutputStream m_soundOutput;
|
||||
AudioFormat soundFormat;
|
||||
javax.sound.sampled.DataLine.Info info;
|
||||
int nRead;
|
||||
int retry;
|
||||
byte rData[];
|
||||
byte m_GetSoundString[];
|
||||
String realm;
|
||||
String qop;
|
||||
String nonce;
|
||||
final sounddb this$0;
|
||||
|
||||
AU()
|
||||
{
|
||||
this$0 = sounddb.this;
|
||||
super();
|
||||
ExternalBufferSize = 64000;
|
||||
InternalBufferSize = 64000;
|
||||
line = null;
|
||||
sTmp = null;
|
||||
m_sktSound = null;
|
||||
m_soundInput = null;
|
||||
m_soundOutput = null;
|
||||
soundFormat = null;
|
||||
info = null;
|
||||
nRead = 0;
|
||||
retry = 0;
|
||||
rData = new byte[ExternalBufferSize];
|
||||
realm = null;
|
||||
qop = null;
|
||||
nonce = null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public sounddb()
|
||||
{
|
||||
serverAddress = null;
|
||||
db_val = new int[17];
|
||||
detection_level = 85;
|
||||
ThreadRun = false;
|
||||
algorithm = 0;
|
||||
nc = 1;
|
||||
mute_start_time = 0L;
|
||||
}
|
||||
|
||||
public void init()
|
||||
{
|
||||
try
|
||||
{
|
||||
if(getParameter("RemoteHost") != null)
|
||||
{
|
||||
m_sRemoteHost = getParameter("RemoteHost");
|
||||
} else
|
||||
{
|
||||
m_urlRemoteHost = getCodeBase();
|
||||
m_sRemoteHost = m_urlRemoteHost.getHost();
|
||||
}
|
||||
m_iRemotePort = Integer.valueOf(getParameter("RemotePort"));
|
||||
m_sPassword = getParameter("DeviceSerialNo");
|
||||
if(getParameter("DetectionLevel") != null)
|
||||
detection_level = Integer.parseInt(getParameter("DetectionLevel"));
|
||||
if(getParameter("Algorithm") != null)
|
||||
algorithm = Integer.parseInt(getParameter("Algorithm"));
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
System.err.println(exception);
|
||||
}
|
||||
}
|
||||
|
||||
public void run()
|
||||
{
|
||||
Thread thread = Thread.currentThread();
|
||||
for(int i = 0; i < 17; i++)
|
||||
db_val[i] = 0;
|
||||
|
||||
boolean flag = false;
|
||||
byte abyte0[] = new byte[512];
|
||||
byte abyte1[] = new byte[512];
|
||||
Object obj = null;
|
||||
Object obj1 = null;
|
||||
Object obj2 = null;
|
||||
Object obj3 = null;
|
||||
while(ThreadRun)
|
||||
try
|
||||
{
|
||||
String s = new String("GET /sounddb.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: Basic ");
|
||||
s = s.concat(m_sPassword);
|
||||
s = s.concat("\r\n\r\n");
|
||||
byte abyte2[] = s.getBytes("8859_1");
|
||||
Socket socket;
|
||||
if(m_iRemotePort.intValue() == 8481 || m_iRemotePort.intValue() == 80)
|
||||
socket = new Socket(m_sRemoteHost, 80);
|
||||
else
|
||||
socket = new Socket(m_sRemoteHost, m_iRemotePort.intValue());
|
||||
socket.setSoTimeout(10000);
|
||||
socket.setKeepAlive(true);
|
||||
DataInputStream datainputstream = new DataInputStream(socket.getInputStream());
|
||||
DataOutputStream dataoutputstream = new DataOutputStream(socket.getOutputStream());
|
||||
dataoutputstream.write(abyte2);
|
||||
int k;
|
||||
while((k = datainputstream.read(abyte0, 0, 256)) >= 0)
|
||||
{
|
||||
if(k == 1)
|
||||
{
|
||||
for(int j = 16; j > 0; j--)
|
||||
db_val[j] = db_val[j - 1];
|
||||
|
||||
db_val[0] = abyte0[0];
|
||||
if(db_val[0] > 100)
|
||||
db_val[0] = 100;
|
||||
if(db_val[0] < 0)
|
||||
db_val[0] = 0;
|
||||
repaint();
|
||||
}
|
||||
if(db_val[0] >= detection_level)
|
||||
Toolkit.getDefaultToolkit().beep();
|
||||
thread;
|
||||
Thread.sleep(500L);
|
||||
}
|
||||
datainputstream.close();
|
||||
dataoutputstream.close();
|
||||
socket.close();
|
||||
datainputstream = null;
|
||||
dataoutputstream = null;
|
||||
socket = null;
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
exception.printStackTrace();
|
||||
}
|
||||
finally
|
||||
{
|
||||
throw exception1;
|
||||
}
|
||||
}
|
||||
|
||||
public void start()
|
||||
{
|
||||
ThreadRun = true;
|
||||
m_trdCameraSound = new AU();
|
||||
m_trdCameraSound.start();
|
||||
m_sounddb = new Thread(this);
|
||||
m_sounddb.start();
|
||||
}
|
||||
|
||||
public void Stop()
|
||||
{
|
||||
ThreadRun = false;
|
||||
}
|
||||
|
||||
public void destroy()
|
||||
{
|
||||
ThreadRun = false;
|
||||
}
|
||||
|
||||
public void paint(Graphics g)
|
||||
{
|
||||
g.setColor(Color.black);
|
||||
g.fillRect(0, 0, 576, 240);
|
||||
g.setColor(Color.gray);
|
||||
for(int i = 0; i < 6; i++)
|
||||
g.drawLine(30, i * 40, 575, i * 40);
|
||||
|
||||
g.setColor(Color.lightGray);
|
||||
g.fillRect(30, 0, 2, 240);
|
||||
g.fillRect(30, 238, 546, 2);
|
||||
g.drawString("100", 2, 10);
|
||||
g.drawString("90", 8, 45);
|
||||
g.drawString("80", 8, 85);
|
||||
g.drawString("70", 8, 125);
|
||||
g.drawString("60", 8, 165);
|
||||
g.drawString("50", 8, 205);
|
||||
g.drawString("40", 8, 235);
|
||||
for(int j = 0; j < 17; j++)
|
||||
{
|
||||
if(db_val[j] <= 40)
|
||||
continue;
|
||||
if(db_val[j] >= detection_level)
|
||||
g.setColor(Color.magenta);
|
||||
else
|
||||
g.setColor(Color.blue);
|
||||
g.fillRect(32 + j * 32, 240 - (db_val[j] - 40) * 4, 30, (db_val[j] - 40) * 4 - 2);
|
||||
}
|
||||
|
||||
g.setColor(Color.red);
|
||||
if(detection_level >= 100)
|
||||
g.drawLine(32, 0, 576, 0);
|
||||
else
|
||||
if(detection_level <= 40)
|
||||
g.drawLine(32, 238, 576, 238);
|
||||
else
|
||||
g.drawLine(32, 240 - (detection_level - 40) * 4, 576, 240 - (detection_level - 40) * 4);
|
||||
}
|
||||
|
||||
public void update(Graphics g)
|
||||
{
|
||||
paint(g);
|
||||
}
|
||||
|
||||
public String CvtHex(byte abyte0[])
|
||||
{
|
||||
byte abyte1[] = new byte[abyte0.length * 2];
|
||||
for(int i = 0; i < abyte0.length; i++)
|
||||
{
|
||||
byte byte0 = (byte)(abyte0[i] >> 4 & 0xf);
|
||||
if(byte0 <= 9)
|
||||
abyte1[i * 2] = (byte)(byte0 + 48);
|
||||
else
|
||||
abyte1[i * 2] = (byte)((byte0 + 97) - 10);
|
||||
byte0 = (byte)(abyte0[i] & 0xf);
|
||||
if(byte0 <= 9)
|
||||
abyte1[i * 2 + 1] = (byte)(byte0 + 48);
|
||||
else
|
||||
abyte1[i * 2 + 1] = (byte)((byte0 + 97) - 10);
|
||||
}
|
||||
|
||||
return new String(abyte1);
|
||||
}
|
||||
|
||||
public String decode_base64(byte abyte0[], int i)
|
||||
{
|
||||
byte abyte1[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".getBytes();
|
||||
byte abyte2[] = new byte[4];
|
||||
int j = i % 4;
|
||||
if(j != 0)
|
||||
return null;
|
||||
int k1 = 0;
|
||||
j = 0;
|
||||
int k = i / 4;
|
||||
byte abyte3[] = new byte[k * 3];
|
||||
for(int l = 0; l < k; l++)
|
||||
{
|
||||
for(int i1 = 0; i1 < 4; i1++)
|
||||
{
|
||||
if(abyte0[k1] == 61)
|
||||
{
|
||||
abyte2[i1] = 0;
|
||||
j++;
|
||||
} else
|
||||
{
|
||||
int j1 = 0;
|
||||
do
|
||||
{
|
||||
if(j1 >= 64)
|
||||
break;
|
||||
if(abyte0[k1] == abyte1[j1])
|
||||
{
|
||||
abyte2[i1] = (byte)j1;
|
||||
break;
|
||||
}
|
||||
j1++;
|
||||
} while(true);
|
||||
}
|
||||
k1++;
|
||||
}
|
||||
|
||||
abyte3[l * 3] = (byte)((byte)(abyte2[0] << 2 & 0xfc) | (byte)(abyte2[1] >> 4 & 3));
|
||||
abyte3[l * 3 + 1] = (byte)((byte)(abyte2[1] << 4 & 0xf0) | (byte)(abyte2[2] >> 2 & 0xf));
|
||||
abyte3[l * 3 + 2] = (byte)((byte)(abyte2[2] << 6 & 0xc0) | abyte2[3]);
|
||||
}
|
||||
|
||||
return new String(abyte3);
|
||||
}
|
||||
|
||||
public String GetDigestAuthentication(String s, String s1, String s2, String s3)
|
||||
{
|
||||
String s4 = null;
|
||||
String s5 = null;
|
||||
String s6 = null;
|
||||
String s7 = null;
|
||||
String s8 = null;
|
||||
String s9 = new String("GET");
|
||||
String s10 = decode_base64(m_sPassword.getBytes(), m_sPassword.length());
|
||||
s5 = s10.substring(0, s10.indexOf(':'));
|
||||
if(s10.indexOf('\0') >= 0)
|
||||
s6 = s10.substring(s10.indexOf(':') + 1, s10.indexOf('\0'));
|
||||
else
|
||||
s6 = s10.substring(s10.indexOf(':') + 1);
|
||||
Random random = new Random();
|
||||
byte abyte0[] = new byte[16];
|
||||
random.nextBytes(abyte0);
|
||||
s7 = CvtHex(abyte0);
|
||||
s8 = String.format("%1$08X", new Object[] {
|
||||
Integer.valueOf(nc)
|
||||
});
|
||||
nc++;
|
||||
try
|
||||
{
|
||||
MessageDigest messagedigest = MessageDigest.getInstance("MD5");
|
||||
messagedigest.update(s5.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s1.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s6.getBytes());
|
||||
String s12 = CvtHex(messagedigest.digest());
|
||||
messagedigest.reset();
|
||||
messagedigest.update(s9.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s.getBytes());
|
||||
String s13 = CvtHex(messagedigest.digest());
|
||||
messagedigest.reset();
|
||||
messagedigest.update(s12.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s3.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
if(s2.length() > 0)
|
||||
{
|
||||
messagedigest.update(s8.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s7.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s2.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
}
|
||||
messagedigest.update(s13.getBytes());
|
||||
s4 = CvtHex(messagedigest.digest());
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
exception.printStackTrace();
|
||||
}
|
||||
String s11 = String.format("Digest username=\"%1$s\", realm=\"%2$s\", uri=\"%3$s\", algorithm=MD5, nonce=\"%4$s\", cnonce=\"%5$s\", qop=%6$s, nc=%7$s, response=\"%8$s\"", new Object[] {
|
||||
s5, s1, s, s3, s7, s2, s8, s4
|
||||
});
|
||||
return s11;
|
||||
}
|
||||
|
||||
private Thread m_sounddb;
|
||||
private String m_sRemoteHost;
|
||||
private URL m_urlRemoteHost;
|
||||
private Integer m_iRemotePort;
|
||||
private String m_sPassword;
|
||||
private URL serverAddress;
|
||||
private int db_val[];
|
||||
private int detection_level;
|
||||
private boolean ThreadRun;
|
||||
private int algorithm;
|
||||
private int nc;
|
||||
private AU m_trdCameraSound;
|
||||
private long mute_start_time;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
BIN
verb/fs.etc_ro.web/api/sounddb/sounddb.jar
Normal file
2
verb/fs.etc_ro.web/cgi/audiocfg.cgi
Normal file
@@ -0,0 +1,2 @@
|
||||
AudioEnable=%%AudioEnable();%%
|
||||
AudioVolume=%%AudioVolume();%%
|
1
verb/fs.etc_ro.web/cgi/cgiversion.cgi
Normal file
@@ -0,0 +1 @@
|
||||
CGIVersion=%%CGIVersion();%%
|
17
verb/fs.etc_ro.web/cgi/common.cgi
Normal file
@@ -0,0 +1,17 @@
|
||||
model=%%ModelName();%%
|
||||
brand=%%Company();%%
|
||||
version=%%FirmwareVersion();%%
|
||||
build=%%FirmwareVersion(2);%%
|
||||
hw_version=%%HardwareVersion(2);%%
|
||||
name=%%CameraName();%%
|
||||
location=%%Location();%%
|
||||
macaddr=%%MACAddress(2);%%
|
||||
ipaddr=%%CurrentIPAddress();%%
|
||||
netmask=%%CurrentSubnetMask();%%
|
||||
gateway=%%CurrentDefaultGateway();%%
|
||||
wireless=%%WirelessSupport();%%
|
||||
ptz=%%PTZSupport();%%
|
||||
inputs=0
|
||||
outputs=0
|
||||
speaker=no
|
||||
videoout=no
|
17
verb/fs.etc_ro.web/cgi/datetime.cgi
Normal file
@@ -0,0 +1,17 @@
|
||||
DateTimeMode=%%DateTimeMode();%%
|
||||
TimeServerIPAddress=%%TimeServerIPAddress();%%
|
||||
TimeServerProtocol=%%TimeServerProtocol();%%
|
||||
TimeZone=%%TimeZone();%%
|
||||
TimeZoneIndex=%%TimeZoneIndex();%%
|
||||
Date=%%Date();%%
|
||||
Time=%%Time();%%
|
||||
DSTEnable=%%DSTEnable();%%
|
||||
DSTOffset=%%DSTOffset();%%
|
||||
DSTStartMonth=%%DSTStartMonth();%%
|
||||
DSTStartWeek=%%DSTStartWeek();%%
|
||||
DSTStartDay=%%DSTStartDay();%%
|
||||
DSTStartTime=%%DSTStartTime();%%
|
||||
DSTEndMonth=%%DSTEndMonth();%%
|
||||
DSTEndWeek=%%DSTEndWeek();%%
|
||||
DSTEndDay=%%DSTEndDay();%%
|
||||
DSTEndTime=%%DSTEndTime();%%
|
16
verb/fs.etc_ro.web/cgi/daynight.cgi
Normal file
@@ -0,0 +1,16 @@
|
||||
DayNightMode=%%DayNightMode();%%
|
||||
LightSensorControl=%%LightSensorControl();%%
|
||||
IRLedScheduleSunStart=%%IRLedScheduleSunStart();%%
|
||||
IRLedScheduleSunEnd=%%IRLedScheduleSunEnd();%%
|
||||
IRLedScheduleMonStart=%%IRLedScheduleMonStart();%%
|
||||
IRLedScheduleMonEnd=%%IRLedScheduleMonEnd();%%
|
||||
IRLedScheduleTueStart=%%IRLedScheduleTueStart();%%
|
||||
IRLedScheduleTueEnd=%%IRLedScheduleTueEnd();%%
|
||||
IRLedScheduleWedStart=%%IRLedScheduleWedStart();%%
|
||||
IRLedScheduleWedEnd=%%IRLedScheduleWedEnd();%%
|
||||
IRLedScheduleThuStart=%%IRLedScheduleThuStart();%%
|
||||
IRLedScheduleThuEnd=%%IRLedScheduleThuEnd();%%
|
||||
IRLedScheduleFriStart=%%IRLedScheduleFriStart();%%
|
||||
IRLedScheduleFriEnd=%%IRLedScheduleFriEnd();%%
|
||||
IRLedScheduleSatStart=%%IRLedScheduleSatStart();%%
|
||||
IRLedScheduleSatEnd=%%IRLedScheduleSatEnd();%%
|
1
verb/fs.etc_ro.web/cgi/dbglevel.cgi
Normal file
@@ -0,0 +1 @@
|
||||
WebDebugLevel=%%WebDebugLevel();%%
|
15
verb/fs.etc_ro.web/cgi/email.cgi
Normal file
@@ -0,0 +1,15 @@
|
||||
EmailSMTPServerAddress=%%EmailSMTPServerAddress();%%
|
||||
EmailSMTPPortNumber=%%EmailSMTPPortNumber();%%
|
||||
EmailSenderAddress=%%EmailSenderAddress();%%
|
||||
EmailReceiverAddress=%%EmailReceiverAddress();%%
|
||||
EmailUserName=%%EmailUserName();%%
|
||||
EmailPassword=%%EmailPassword();%%
|
||||
EmailTLSAuthentication=%%EmailTLSAuthentication();%%
|
||||
EmailScheduleEnable=%%EmailScheduleEnable();%%
|
||||
EmailScheduleMode=%%EmailScheduleMode();%%
|
||||
EmailScheduleDay=%%EmailScheduleDay();%%
|
||||
EmailScheduleTimeStart=%%EmailScheduleTimeStart();%%
|
||||
EmailScheduleTimeStop=%%EmailScheduleTimeStop();%%
|
||||
EmailScheduleInterval=%%EmailScheduleInterval();%%
|
||||
EmailMotionMode=%%EmailMotionMode();%%
|
||||
EmailMotionFrameInterval=%%EmailMotionFrameInterval();%%
|
1
verb/fs.etc_ro.web/cgi/iactiveuser.cgi
Normal file
@@ -0,0 +1 @@
|
||||
%%ActiveUserTable(1);%%
|
4
verb/fs.etc_ro.web/cgi/iaudio.cgi
Normal file
@@ -0,0 +1,4 @@
|
||||
Audio=%%AudioEnable();%%
|
||||
Volume=%%AudioVolume();%%
|
||||
Codec=%%AudioCodec();%%
|
||||
SampleRate=%%AudioSampleRate();%%
|
6
verb/fs.etc_ro.web/cgi/iimage.cgi
Normal file
@@ -0,0 +1,6 @@
|
||||
VideoResolution=%%StringOfVideoResolution();%%
|
||||
CompressionRate=%%StringOfCompressionRate();%%
|
||||
FrameRate=%%StringOfFrameRate();%%
|
||||
ViewMode=%%ViewMode();%%
|
||||
FrameSize=%%FrameSize();%% Bytes
|
||||
LightFrequency=%%StringOfLightFrequency();%%
|
10
verb/fs.etc_ro.web/cgi/image.cgi
Normal file
@@ -0,0 +1,10 @@
|
||||
VideoResolution=%%VideoResolution();%%
|
||||
CompressionRate=%%CompressionRate();%%
|
||||
FrameRate=%%FrameRate();%%
|
||||
ViewMode=%%ViewMode();%%
|
||||
BrightnessControl=%%BrightnessControl();%%
|
||||
ContrastControl=%%ContrastControl();%%
|
||||
SaturationControl=%%SaturationControl();%%
|
||||
LightFrequency=%%LightFrequency();%%
|
||||
Mirror=%%Mirror();%%
|
||||
AntiFlickerEnable=%%AntiFlickerEnable();%%
|
11
verb/fs.etc_ro.web/cgi/inetwork.cgi
Normal file
@@ -0,0 +1,11 @@
|
||||
IPAddress=%%CurrentIPAddress();%%
|
||||
SubnetMask=%%CurrentSubnetMask();%%
|
||||
DefaultGateway=%%CurrentDefaultGateway();%%
|
||||
PrimaryDNSAddress=%%DNSIPAddress1();%%
|
||||
SecondaryDNSAddress=%%DNSIPAddress2();%%
|
||||
DynamicDNS=%%StatusOfDynamicDNS();%%
|
||||
SecondaryHTTPPort=%%StringOfSecondHTTPPortEnable();%% (Port : %%SecondHTTPPort();%%)
|
||||
UPnP=%%StringOfUPnPEnable();%% (IP : %%GotIPFromUpnp();%%)
|
||||
UPnPPortForwarding=%%StatusOfUPnPPortForwarding();%%
|
||||
BonjourEnable=%%StringOfBonjourEnable();%%
|
||||
BonjourName=%%BonjourName();%%
|
13
verb/fs.etc_ro.web/cgi/isysdevice.cgi
Normal file
@@ -0,0 +1,13 @@
|
||||
Model=%%ModelName();%%
|
||||
ModelDesc=%%ModelDescription();%%
|
||||
FirmwareVersion=%%FirmwareVersion();%% (%%ReleaseDate();%%)
|
||||
HarwareVersion=%%HardwareVersion();%%
|
||||
ROMVersion=%%ROMVersion();%%
|
||||
Company=%%Company();%%
|
||||
CompanyURL=%%CompanyURL();%%
|
||||
|
||||
MACAddress=%%MACAddress();%%
|
||||
IPAddress=%%CurrentIPAddress();%%
|
||||
EthernetLink=%%EthernetLink();%%
|
||||
EthernetSpeed=%%EthernetSpeed();%% bps
|
||||
EthernetDuplex=%%EthernetDuplex();%%
|
10
verb/fs.etc_ro.web/cgi/isystem.cgi
Normal file
@@ -0,0 +1,10 @@
|
||||
CameraName=%%CameraName();%%
|
||||
Location=%%Location();%%
|
||||
Model=%%ModelName();%%
|
||||
FirmwareVersion=%%FirmwareVersion();%% (%%ReleaseDate();%%)
|
||||
HardwareVersion=%%HardwareVersion(2);%%
|
||||
MACAddress=%%MACAddress();%%
|
||||
IPAddress=%%CurrentIPAddress();%%
|
||||
EthernetLink=%%EthernetLink();%%
|
||||
EthernetSpeed=%%EthernetSpeed();%% bps
|
||||
EthernetDuplex=%%EthernetDuplex();%%
|
6
verb/fs.etc_ro.web/cgi/iwireless.cgi
Normal file
@@ -0,0 +1,6 @@
|
||||
ConnectionMode=%%StringOfConnectionMode();%%
|
||||
WirelessLink=%%WirelessLink();%%
|
||||
SSID=%%WirelessCurrentSSID();%% (MAC : %%WirelessCurrentAPMACAddress();%%)
|
||||
WirelessChannel=%%WirelessCurrentChannel();%%
|
||||
TransmissionRate=%%WirelessCurrentTransmissionRate();%%
|
||||
WEPEncryption=%%WirelessCurrentEncryption();%%
|
7
verb/fs.etc_ro.web/cgi/motion.cgi
Normal file
@@ -0,0 +1,7 @@
|
||||
MotionDetectionEnable=%%MotionDetectionEnable();%%
|
||||
MotionDetectionBlockSet=%%MotionDetectionBlockSet();%%
|
||||
MotionDetectionSensitivity=%%MotionDetectionSensitivity();%%
|
||||
MotionDetectionScheduleMode=%%MotionDetectionScheduleMode();%%
|
||||
MotionDetectionScheduleDay=%%MotionDetectionScheduleDay();%%
|
||||
MotionDetectionScheduleTimeStart=%%MotionDetectionScheduleTimeStart();%%
|
||||
MotionDetectionScheduleTimeStop=%%MotionDetectionScheduleTimeStop();%%
|
19
verb/fs.etc_ro.web/cgi/network.cgi
Normal file
@@ -0,0 +1,19 @@
|
||||
IPAddressMode=%%IPAddressMode();%%
|
||||
IPAddress=%%IPAddress();%%
|
||||
SubnetMask=%%SubnetMask();%%
|
||||
DefaultGateway=%%DefaultGateway();%%
|
||||
PPPoEUserID=%%PPPoEUserID();%%
|
||||
PPPoEPassword=%%PPPoEPassword();%%
|
||||
DNSIPAddress1=%%DNSIPAddress1();%%
|
||||
DNSIPAddress2=%%DNSIPAddress2();%%
|
||||
DDNSEnable=%%DDNSEnable();%%
|
||||
DDNSProvider=%%DDNSProvider();%%
|
||||
DDNSHostName=%%DDNSHostName();%%
|
||||
DDNSUserName=%%DDNSUserName();%%
|
||||
DDNSPassword=%%DDNSPassword();%%
|
||||
SecondHTTPPortEnable=%%SecondHTTPPortEnable();%%
|
||||
SecondHTTPPort=%%SecondHTTPPort();%%
|
||||
UPnPEnable=%%UPnPEnable();%%
|
||||
UPnPPortForwarding=%%UPnPPortForwarding();%%
|
||||
BonjourEnable=%%BonjourEnable();%%
|
||||
BonjourName=%%BonjourName();%%
|
6
verb/fs.etc_ro.web/cgi/sdbdetection.cgi
Normal file
@@ -0,0 +1,6 @@
|
||||
SoundDetectionEnable=%%SoundDetectionEnable();%%
|
||||
SoundDetectionDB=%%SoundDetectionDB();%%
|
||||
SoundDetectionScheduleMode=%%SoundDetectionScheduleMode();%%
|
||||
SoundDetectionScheduleDay=%%SoundDetectionScheduleDay();%%
|
||||
SoundDetectionScheduleTimeStart=%%SoundDetectionScheduleTimeStart();%%
|
||||
SoundDetectionScheduleTimeStop=%%SoundDetectionScheduleTimeStop();%%
|
1
verb/fs.etc_ro.web/cgi/sitesurvey.cgi
Normal file
@@ -0,0 +1 @@
|
||||
%%SiteSurveyList();%%
|
11
verb/fs.etc_ro.web/cgi/strminfo.cgi
Normal file
@@ -0,0 +1,11 @@
|
||||
videos=MJPEG
|
||||
resolutions=640x480,320x240,160x120
|
||||
vprofilenum=1
|
||||
vprofile1=MJPEG
|
||||
vprofileurl1=/video.cgi
|
||||
vprofileres1=%%StringOfVideoResolution();%%
|
||||
vDprofileurl1=/dgvideo.cgi
|
||||
aprofilenum=1
|
||||
aprofile1=PCM
|
||||
aprofileurl1=/audio.cgi
|
||||
aDprofileurl1=/dgaudio.cgi
|
6
verb/fs.etc_ro.web/cgi/system.cgi
Normal file
@@ -0,0 +1,6 @@
|
||||
CameraName=%%CameraName();%%
|
||||
Location=%%Location();%%
|
||||
AdminID=%%AdminID();%%
|
||||
AdminPassword=%%AdminPassword();%%
|
||||
LEDControl=%%LEDControl();%%
|
||||
SnapshotURLAuthentication=%%SnapshotURLAuthentication();%%
|
1
verb/fs.etc_ro.web/cgi/upgradestatus.cgi
Normal file
@@ -0,0 +1 @@
|
||||
upgrade=%%LastDownloadStatus();%%
|
18
verb/fs.etc_ro.web/cgi/upload.cgi
Normal file
@@ -0,0 +1,18 @@
|
||||
FTPHostAddress=%%FTPHostAddress();%%
|
||||
FTPPortNumber=%%FTPPortNumber();%%
|
||||
FTPUserName=%%FTPUserName();%%
|
||||
FTPPassword=%%FTPPassword();%%
|
||||
FTPDirectoryPath=%%FTPDirectoryPath();%%
|
||||
FTPPassiveMode=%%FTPPassiveMode();%%
|
||||
FTPScheduleEnable=%%FTPScheduleEnable();%%
|
||||
FTPScheduleMode=%%FTPScheduleMode();%%
|
||||
FTPScheduleDay=%%FTPScheduleDay();%%
|
||||
FTPScheduleTimeStart=%%FTPScheduleTimeStart();%%
|
||||
FTPScheduleTimeStop=%%FTPScheduleTimeStop();%%
|
||||
FTPScheduleVideoFrequencyMode=%%FTPScheduleVideoFrequencyMode();%%
|
||||
FTPScheduleFramePerSecond=%%FTPScheduleFramePerSecond();%%
|
||||
FTPScheduleSecondPerFrame=%%FTPScheduleSecondPerFrame();%%
|
||||
FTPScheduleBaseFileName=%%FTPScheduleBaseFileName();%%
|
||||
FTPScheduleFileMode=%%FTPScheduleFileMode();%%
|
||||
FTPScheduleMaxFileSequenceNumber=%%FTPScheduleMaxFileSequenceNumber();%%
|
||||
FTPCreateFolderInterval=%%FTPCreateFolderInterval();%%
|
1
verb/fs.etc_ro.web/cgi/user.cgi
Normal file
@@ -0,0 +1 @@
|
||||
AccessControlEnable=%%AccessControlEnable();%%
|
1
verb/fs.etc_ro.web/cgi/userlist.cgi
Normal file
@@ -0,0 +1 @@
|
||||
%%UserTable(1);%%
|
3
verb/fs.etc_ro.web/cgi/usermod.cgi
Normal file
@@ -0,0 +1,3 @@
|
||||
name=%%ModName();%%
|
||||
password=%%ModPassword();%%
|
||||
group=%%ModGroup();%%
|
16
verb/fs.etc_ro.web/cgi/wireless.cgi
Normal file
@@ -0,0 +1,16 @@
|
||||
WirelessDisable=%%WirelessDisable();%%
|
||||
ConnectionMode=%%ConnectionMode();%%
|
||||
SSID=%%SSID();%%
|
||||
WirelessChannel=%%WirelessChannel();%%
|
||||
TransmissionRate=%%StringOfTransmissionRate();%%
|
||||
WEPEncryption=%%WEPEncryption();%%
|
||||
WEPKeyFormat=%%WEPKeyFormat();%%
|
||||
Key1=%%Key1();%%
|
||||
Key2=%%Key2();%%
|
||||
Key3=%%Key3();%%
|
||||
Key4=%%Key4();%%
|
||||
TxKey=%%TxKey();%%
|
||||
BeaconInterval=%%BeaconInterval();%%
|
||||
Preamble=%%Preamble();%%
|
||||
AuthenticationType=%%AuthenticationType();%%
|
||||
PreSharedKey=%%PreSharedKey();%%
|
BIN
verb/fs.etc_ro.web/dcs932lb2.jpg
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
verb/fs.etc_ro.web/devmodel.jpg
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
verb/fs.etc_ro.web/dloadbar.gif
Normal file
After Width: | Height: | Size: 5.4 KiB |
BIN
verb/fs.etc_ro.web/edit.jpg
Normal file
After Width: | Height: | Size: 756 B |
BIN
verb/fs.etc_ro.web/favicon.ico
Normal file
After Width: | Height: | Size: 9.4 KiB |
BIN
verb/fs.etc_ro.web/pack/cht.lzma
Normal file
BIN
verb/fs.etc_ro.web/pack/dbgulf.lzma
Normal file
BIN
verb/fs.etc_ro.web/pack/eng.lzma
Normal file
BIN
verb/fs.etc_ro.web/pack/frh.lzma
Normal file
BIN
verb/fs.etc_ro.web/pack/grm.lzma
Normal file
BIN
verb/fs.etc_ro.web/pack/itn.lzma
Normal file
BIN
verb/fs.etc_ro.web/pack/kor.lzma
Normal file
BIN
verb/fs.etc_ro.web/pack/sph.lzma
Normal file
BIN
verb/fs.etc_ro.web/pack/twn.lzma
Normal file
BIN
verb/fs.etc_ro.web/radiooff.gif
Normal file
After Width: | Height: | Size: 194 B |
BIN
verb/fs.etc_ro.web/radioon.gif
Normal file
After Width: | Height: | Size: 302 B |
BIN
verb/fs.etc_ro.web/security.gif
Normal file
After Width: | Height: | Size: 646 B |
BIN
verb/fs.etc_ro.web/title.gif
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
verb/fs.etc_ro.web/trash.jpg
Normal file
After Width: | Height: | Size: 809 B |
BIN
verb/fs.etc_ro.web/web/api/aplug.jar
Normal file
29
verb/fs.etc_ro.web/web/api/aplug/META-INF/MANIFEST.MF
Normal file
@@ -0,0 +1,29 @@
|
||||
Manifest-Version: 1.0
|
||||
Application-Name: aplug
|
||||
Permissions: all-permissions
|
||||
Created-By: 1.5.0_22 (Sun Microsystems Inc.)
|
||||
Caller-Allowable-Codebase: *
|
||||
Main-Class: aplug
|
||||
Codebase: *
|
||||
|
||||
Name: aplug$Talkie.class
|
||||
SHA1-Digest: 2aVNEt1UmXZxsGDqKuMWyMSdJNo=
|
||||
|
||||
Name: aplug$TS.class
|
||||
SHA1-Digest: bcCulMO2JAF/cEyPAaq+MlpJFNY=
|
||||
|
||||
Name: aplug.class
|
||||
SHA1-Digest: Xq72uaqog4K4CxU+aaRTHI6lnbI=
|
||||
|
||||
Name: aplug$ACS_Control.class
|
||||
SHA1-Digest: dlTPvwzdBrmN8uHUeUeyV2wKXG0=
|
||||
|
||||
Name: aplug$SI.class
|
||||
SHA1-Digest: Cf2RT0iFdv2VDDI+DznPMBWi63w=
|
||||
|
||||
Name: aplug$ACS_Audio.class
|
||||
SHA1-Digest: 0MVKIbdmw41F2CP3X8wlN1o3H0g=
|
||||
|
||||
Name: aplug$AU.class
|
||||
SHA1-Digest: 6BD9xeWhsDRn6sJ4roR85fvIW3c=
|
||||
|
BIN
verb/fs.etc_ro.web/web/api/aplug/META-INF/WWW_DLIN.RSA
Normal file
26
verb/fs.etc_ro.web/web/api/aplug/META-INF/WWW_DLIN.SF
Normal file
@@ -0,0 +1,26 @@
|
||||
Signature-Version: 1.0
|
||||
SHA1-Digest-Manifest-Main-Attributes: UBp7e9hhiW9jTs0aB5k+hWchTpw=
|
||||
Created-By: 1.6.0_45 (Sun Microsystems Inc.)
|
||||
SHA1-Digest-Manifest: 1oXVrSmx4HV21apD+8+2AR+RNNI=
|
||||
|
||||
Name: aplug$Talkie.class
|
||||
SHA1-Digest: EP5wpvCzDUkUzp+/p3+ukV+t+/M=
|
||||
|
||||
Name: aplug$TS.class
|
||||
SHA1-Digest: KOmQFfuWyt6wZAkJN2gZuXsjQYA=
|
||||
|
||||
Name: aplug.class
|
||||
SHA1-Digest: 6zuZlxCL+jRUigu/O+yhygmQEMM=
|
||||
|
||||
Name: aplug$ACS_Control.class
|
||||
SHA1-Digest: G3Cxz5qKFceS3FaAhkrlV+AV3dc=
|
||||
|
||||
Name: aplug$SI.class
|
||||
SHA1-Digest: 6UqL3yyydR4/ynbgZGVoq2I01fk=
|
||||
|
||||
Name: aplug$ACS_Audio.class
|
||||
SHA1-Digest: i1cFnbJWe0uE5vHT4vrjCPvYLJ0=
|
||||
|
||||
Name: aplug$AU.class
|
||||
SHA1-Digest: wYFYPf9xYN37zWkEJ/+DHdoILRo=
|
||||
|
BIN
verb/fs.etc_ro.web/web/api/aplug/aplug$ACS_Audio.class
Normal file
BIN
verb/fs.etc_ro.web/web/api/aplug/aplug$ACS_Control.class
Normal file
BIN
verb/fs.etc_ro.web/web/api/aplug/aplug$AU.class
Normal file
BIN
verb/fs.etc_ro.web/web/api/aplug/aplug$SI.class
Normal file
BIN
verb/fs.etc_ro.web/web/api/aplug/aplug$TS.class
Normal file
BIN
verb/fs.etc_ro.web/web/api/aplug/aplug$Talkie.class
Normal file
BIN
verb/fs.etc_ro.web/web/api/aplug/aplug.class
Normal file
2409
verb/fs.etc_ro.web/web/api/aplug/aplug.jad
Normal file
BIN
verb/fs.etc_ro.web/web/api/aplug/aplug.jar
Normal file
BIN
verb/fs.etc_ro.web/web/api/aplugLiteDL.cab
Normal file
BIN
verb/fs.etc_ro.web/web/api/aplugLiteDl/aplugLiteDL.cab
Normal file
25
verb/fs.etc_ro.web/web/api/aplugLiteDl/aplugLiteDL.inf
Normal file
@@ -0,0 +1,25 @@
|
||||
[version]
|
||||
signature="$CHICAGO$"
|
||||
AdvancedINF=2.0
|
||||
[Add.Code]
|
||||
msvcrt.dll=msvcrt.dll
|
||||
mfc42.dll=mfc42.dll
|
||||
olepro32.dll=olepro32.dll
|
||||
aplugLiteDL.ocx=aplugLiteDL.ocx
|
||||
[aplugLiteDL.ocx]
|
||||
file-win32-x86=thiscab
|
||||
clsid={7191F0AC-D686-46A8-BFCC-EA61778C74DD}
|
||||
FileVersion=2,3,2,41
|
||||
RegisterServer=yes
|
||||
[msvcrt.dll]
|
||||
FileVersion=4,20,0,6164
|
||||
hook=mfc42installer
|
||||
[mfc42.dll]
|
||||
FileVersion=4,2,0,6256
|
||||
hook=mfc42installer
|
||||
[olepro32.dll]
|
||||
FileVersion=4,2,0,6068
|
||||
hook=mfc42installer
|
||||
[mfc42installer]
|
||||
file-win32-x86=http://activex.microsoft.com/controls/vc/mfc42.cab
|
||||
run=%EXTRACT_DIR%\mfc42.exe
|
BIN
verb/fs.etc_ro.web/web/api/aplugLiteDl/aplugLiteDL.ocx
Normal file
BIN
verb/fs.etc_ro.web/web/api/sounddb.jar
Normal file
14
verb/fs.etc_ro.web/web/api/sounddb/META-INF/MANIFEST.MF
Normal file
@@ -0,0 +1,14 @@
|
||||
Manifest-Version: 1.0
|
||||
Application-Name: sounddb
|
||||
Permissions: all-permissions
|
||||
Created-By: 1.7.0_04 (Oracle Corporation)
|
||||
Caller-Allowable-Codebase: *
|
||||
Main-Class: sounddb
|
||||
Codebase: *
|
||||
|
||||
Name: sounddb.class
|
||||
SHA1-Digest: 5R8mF2pBzyk5sHynPfeR1i251Lc=
|
||||
|
||||
Name: sounddb$AU.class
|
||||
SHA1-Digest: acxsN9J44TUSmYa1ylUKWfjJDsE=
|
||||
|
BIN
verb/fs.etc_ro.web/web/api/sounddb/META-INF/WWW_DLIN.RSA
Normal file
11
verb/fs.etc_ro.web/web/api/sounddb/META-INF/WWW_DLIN.SF
Normal file
@@ -0,0 +1,11 @@
|
||||
Signature-Version: 1.0
|
||||
SHA1-Digest-Manifest-Main-Attributes: X2n8mlKX04cpcm8vj/5IQrf0lS8=
|
||||
Created-By: 1.6.0_45 (Sun Microsystems Inc.)
|
||||
SHA1-Digest-Manifest: g9+nyeyOuSAUhC6IQNp3xKUGmYU=
|
||||
|
||||
Name: sounddb.class
|
||||
SHA1-Digest: DXHVlhyw2rWuueIRRQ6F1jBUOdI=
|
||||
|
||||
Name: sounddb$AU.class
|
||||
SHA1-Digest: MsGGwNhpi46N81Zp9g5+BpdOMfA=
|
||||
|
BIN
verb/fs.etc_ro.web/web/api/sounddb/sounddb$AU.class
Normal file
BIN
verb/fs.etc_ro.web/web/api/sounddb/sounddb.class
Normal file
545
verb/fs.etc_ro.web/web/api/sounddb/sounddb.jad
Normal file
@@ -0,0 +1,545 @@
|
||||
// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov.
|
||||
// Jad home page: http://www.geocities.com/kpdus/jad.html
|
||||
// Decompiler options: packimports(3)
|
||||
// Source File Name: sounddb.java
|
||||
|
||||
import java.applet.Applet;
|
||||
import java.awt.*;
|
||||
import java.io.*;
|
||||
import java.net.Socket;
|
||||
import java.net.URL;
|
||||
import java.security.MessageDigest;
|
||||
import java.util.Random;
|
||||
import javax.sound.sampled.*;
|
||||
|
||||
public class sounddb extends Applet
|
||||
implements Runnable
|
||||
{
|
||||
class AU extends Thread
|
||||
{
|
||||
|
||||
public void run()
|
||||
{
|
||||
do
|
||||
{
|
||||
if(!ThreadRun)
|
||||
break;
|
||||
try
|
||||
{
|
||||
if(algorithm == 0 || algorithm == 2)
|
||||
sTmp = new String("GET /audio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: Basic ");
|
||||
else
|
||||
sTmp = new String("GET /dgaudio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: Basic ");
|
||||
sTmp = sTmp.concat(m_sPassword);
|
||||
sTmp = sTmp.concat("\r\n\r\n");
|
||||
m_GetSoundString = sTmp.getBytes("8859_1");
|
||||
do
|
||||
{
|
||||
Thread.currentThread();
|
||||
Thread.sleep(100L);
|
||||
if(m_iRemotePort.intValue() == 8481 || m_iRemotePort.intValue() == 80)
|
||||
m_sktSound = new Socket(m_sRemoteHost, 80);
|
||||
else
|
||||
m_sktSound = new Socket(m_sRemoteHost, m_iRemotePort.intValue());
|
||||
m_sktSound.setSoTimeout(30000);
|
||||
m_sktSound.setKeepAlive(true);
|
||||
m_soundInput = new DataInputStream(m_sktSound.getInputStream());
|
||||
m_soundOutput = new DataOutputStream(m_sktSound.getOutputStream());
|
||||
m_soundOutput.write(m_GetSoundString);
|
||||
m_soundInput.read(rData, 0, 64);
|
||||
String s = new String(rData, 0, 64);
|
||||
if(s != null && s.indexOf("HTTP/") >= 0 && s.indexOf("200") >= 0)
|
||||
break;
|
||||
BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(m_sktSound.getInputStream()));
|
||||
do
|
||||
{
|
||||
String s1;
|
||||
if((s1 = bufferedreader.readLine()) == null)
|
||||
break;
|
||||
if(s1.indexOf("WWW-Authenticate: ") < 0)
|
||||
continue;
|
||||
int i = s1.indexOf("realm=") + 7;
|
||||
int j = s1.indexOf('"', i);
|
||||
realm = s1.substring(i, j);
|
||||
i = s1.indexOf("qop=") + 5;
|
||||
j = s1.indexOf('"', i);
|
||||
qop = s1.substring(i, j);
|
||||
i = s1.indexOf("nonce=") + 7;
|
||||
j = s1.indexOf('"', i);
|
||||
nonce = s1.substring(i, j);
|
||||
break;
|
||||
} while(true);
|
||||
if(algorithm == 0)
|
||||
{
|
||||
sTmp = new String("GET /audio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: Basic ");
|
||||
sTmp = sTmp.concat(m_sPassword);
|
||||
} else
|
||||
if(algorithm == 1)
|
||||
{
|
||||
String s2 = GetDigestAuthentication("/dgaudio.cgi", realm, qop, nonce);
|
||||
sTmp = new String("GET /dgaudio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: ");
|
||||
sTmp = sTmp.concat(s2);
|
||||
} else
|
||||
{
|
||||
String s3 = GetDigestAuthentication("/audio.cgi", realm, qop, nonce);
|
||||
sTmp = new String("GET /audio.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: ");
|
||||
sTmp = sTmp.concat(s3);
|
||||
}
|
||||
sTmp = sTmp.concat("\r\n\r\n");
|
||||
m_GetSoundString = sTmp.getBytes("8859_1");
|
||||
m_soundInput.close();
|
||||
m_soundOutput.close();
|
||||
bufferedreader.close();
|
||||
m_sktSound.close();
|
||||
m_soundInput = null;
|
||||
m_soundOutput = null;
|
||||
bufferedreader = null;
|
||||
m_sktSound = null;
|
||||
} while(true);
|
||||
nRead = 0;
|
||||
boolean flag = false;
|
||||
int j1;
|
||||
do
|
||||
{
|
||||
nRead = nRead + m_soundInput.read(rData, nRead, rData.length - nRead);
|
||||
j1 = 0;
|
||||
do
|
||||
{
|
||||
if(j1 >= nRead - 7)
|
||||
break;
|
||||
if(rData[j1] == 13 && rData[j1 + 1] == 10 && rData[j1 + 2] == 13 && rData[j1 + 3] == 10 && rData[j1 + 4] == 82 && rData[j1 + 5] == 73 && rData[j1 + 6] == 70 && rData[j1 + 7] == 70)
|
||||
{
|
||||
flag = true;
|
||||
j1 += 4;
|
||||
break;
|
||||
}
|
||||
j1++;
|
||||
} while(true);
|
||||
Thread.currentThread();
|
||||
Thread.sleep(3L);
|
||||
} while(nRead != -1 && !flag);
|
||||
long l = (long)rData[j1 + 24] + ((long)rData[j1 + 25] << 8) + ((long)rData[j1 + 26] << 16) + ((long)rData[j1 + 27] << 24);
|
||||
int k = rData[j1 + 22] + (rData[j1 + 23] << 8);
|
||||
int i1 = rData[j1 + 34] + (rData[j1 + 35] << 8);
|
||||
j1 += 44;
|
||||
soundFormat = new AudioFormat(l, i1, k, true, false);
|
||||
info = new javax.sound.sampled.DataLine.Info(javax/sound/sampled/SourceDataLine, soundFormat, InternalBufferSize);
|
||||
line = (SourceDataLine)AudioSystem.getLine(info);
|
||||
line.open(soundFormat, InternalBufferSize);
|
||||
int k1 = line.getBufferSize();
|
||||
mute_start_time = System.currentTimeMillis();
|
||||
int l1 = rData[j1 + 63] << 8 + rData[j1 + 62];
|
||||
nRead = 0;
|
||||
int i2 = k * 256;
|
||||
retry = 0;
|
||||
do
|
||||
{
|
||||
if(nRead == -1 || !ThreadRun)
|
||||
break;
|
||||
if(mute_start_time != 0L)
|
||||
{
|
||||
if(System.currentTimeMillis() - mute_start_time > 1000L)
|
||||
{
|
||||
line.start();
|
||||
mute_start_time = 0L;
|
||||
} else
|
||||
{
|
||||
m_soundInput.read(rData, 0, rData.length);
|
||||
}
|
||||
Thread.currentThread();
|
||||
Thread.sleep(50L);
|
||||
} else
|
||||
{
|
||||
Thread.currentThread();
|
||||
Thread.sleep(8L);
|
||||
nRead = m_soundInput.read(rData, 0, rData.length);
|
||||
if(nRead > 0 && (k1 - line.available()) / i2 < 50)
|
||||
if(line.available() >= nRead)
|
||||
line.write(rData, 0, nRead);
|
||||
else
|
||||
line.flush();
|
||||
}
|
||||
} while(true);
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
System.err.println(exception);
|
||||
}
|
||||
try
|
||||
{
|
||||
line.flush();
|
||||
line.stop();
|
||||
line.close();
|
||||
line = null;
|
||||
soundFormat = null;
|
||||
info = null;
|
||||
m_soundInput.close();
|
||||
m_soundOutput.close();
|
||||
m_sktSound.close();
|
||||
m_soundInput = null;
|
||||
m_soundOutput = null;
|
||||
m_sktSound = null;
|
||||
}
|
||||
catch(Exception exception1)
|
||||
{
|
||||
System.err.println(exception1);
|
||||
}
|
||||
} while(true);
|
||||
}
|
||||
|
||||
int ExternalBufferSize;
|
||||
int InternalBufferSize;
|
||||
SourceDataLine line;
|
||||
String sTmp;
|
||||
Socket m_sktSound;
|
||||
DataInputStream m_soundInput;
|
||||
DataOutputStream m_soundOutput;
|
||||
AudioFormat soundFormat;
|
||||
javax.sound.sampled.DataLine.Info info;
|
||||
int nRead;
|
||||
int retry;
|
||||
byte rData[];
|
||||
byte m_GetSoundString[];
|
||||
String realm;
|
||||
String qop;
|
||||
String nonce;
|
||||
final sounddb this$0;
|
||||
|
||||
AU()
|
||||
{
|
||||
this$0 = sounddb.this;
|
||||
super();
|
||||
ExternalBufferSize = 64000;
|
||||
InternalBufferSize = 64000;
|
||||
line = null;
|
||||
sTmp = null;
|
||||
m_sktSound = null;
|
||||
m_soundInput = null;
|
||||
m_soundOutput = null;
|
||||
soundFormat = null;
|
||||
info = null;
|
||||
nRead = 0;
|
||||
retry = 0;
|
||||
rData = new byte[ExternalBufferSize];
|
||||
realm = null;
|
||||
qop = null;
|
||||
nonce = null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public sounddb()
|
||||
{
|
||||
serverAddress = null;
|
||||
db_val = new int[17];
|
||||
detection_level = 85;
|
||||
ThreadRun = false;
|
||||
algorithm = 0;
|
||||
nc = 1;
|
||||
mute_start_time = 0L;
|
||||
}
|
||||
|
||||
public void init()
|
||||
{
|
||||
try
|
||||
{
|
||||
if(getParameter("RemoteHost") != null)
|
||||
{
|
||||
m_sRemoteHost = getParameter("RemoteHost");
|
||||
} else
|
||||
{
|
||||
m_urlRemoteHost = getCodeBase();
|
||||
m_sRemoteHost = m_urlRemoteHost.getHost();
|
||||
}
|
||||
m_iRemotePort = Integer.valueOf(getParameter("RemotePort"));
|
||||
m_sPassword = getParameter("DeviceSerialNo");
|
||||
if(getParameter("DetectionLevel") != null)
|
||||
detection_level = Integer.parseInt(getParameter("DetectionLevel"));
|
||||
if(getParameter("Algorithm") != null)
|
||||
algorithm = Integer.parseInt(getParameter("Algorithm"));
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
System.err.println(exception);
|
||||
}
|
||||
}
|
||||
|
||||
public void run()
|
||||
{
|
||||
Thread thread = Thread.currentThread();
|
||||
for(int i = 0; i < 17; i++)
|
||||
db_val[i] = 0;
|
||||
|
||||
boolean flag = false;
|
||||
byte abyte0[] = new byte[512];
|
||||
byte abyte1[] = new byte[512];
|
||||
Object obj = null;
|
||||
Object obj1 = null;
|
||||
Object obj2 = null;
|
||||
Object obj3 = null;
|
||||
while(ThreadRun)
|
||||
try
|
||||
{
|
||||
String s = new String("GET /sounddb.cgi HTTP/1.0\r\nUser-Agent: user\r\nAuthorization: Basic ");
|
||||
s = s.concat(m_sPassword);
|
||||
s = s.concat("\r\n\r\n");
|
||||
byte abyte2[] = s.getBytes("8859_1");
|
||||
Socket socket;
|
||||
if(m_iRemotePort.intValue() == 8481 || m_iRemotePort.intValue() == 80)
|
||||
socket = new Socket(m_sRemoteHost, 80);
|
||||
else
|
||||
socket = new Socket(m_sRemoteHost, m_iRemotePort.intValue());
|
||||
socket.setSoTimeout(10000);
|
||||
socket.setKeepAlive(true);
|
||||
DataInputStream datainputstream = new DataInputStream(socket.getInputStream());
|
||||
DataOutputStream dataoutputstream = new DataOutputStream(socket.getOutputStream());
|
||||
dataoutputstream.write(abyte2);
|
||||
int k;
|
||||
while((k = datainputstream.read(abyte0, 0, 256)) >= 0)
|
||||
{
|
||||
if(k == 1)
|
||||
{
|
||||
for(int j = 16; j > 0; j--)
|
||||
db_val[j] = db_val[j - 1];
|
||||
|
||||
db_val[0] = abyte0[0];
|
||||
if(db_val[0] > 100)
|
||||
db_val[0] = 100;
|
||||
if(db_val[0] < 0)
|
||||
db_val[0] = 0;
|
||||
repaint();
|
||||
}
|
||||
if(db_val[0] >= detection_level)
|
||||
Toolkit.getDefaultToolkit().beep();
|
||||
thread;
|
||||
Thread.sleep(500L);
|
||||
}
|
||||
datainputstream.close();
|
||||
dataoutputstream.close();
|
||||
socket.close();
|
||||
datainputstream = null;
|
||||
dataoutputstream = null;
|
||||
socket = null;
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
exception.printStackTrace();
|
||||
}
|
||||
finally
|
||||
{
|
||||
throw exception1;
|
||||
}
|
||||
}
|
||||
|
||||
public void start()
|
||||
{
|
||||
ThreadRun = true;
|
||||
m_trdCameraSound = new AU();
|
||||
m_trdCameraSound.start();
|
||||
m_sounddb = new Thread(this);
|
||||
m_sounddb.start();
|
||||
}
|
||||
|
||||
public void Stop()
|
||||
{
|
||||
ThreadRun = false;
|
||||
}
|
||||
|
||||
public void destroy()
|
||||
{
|
||||
ThreadRun = false;
|
||||
}
|
||||
|
||||
public void paint(Graphics g)
|
||||
{
|
||||
g.setColor(Color.black);
|
||||
g.fillRect(0, 0, 576, 240);
|
||||
g.setColor(Color.gray);
|
||||
for(int i = 0; i < 6; i++)
|
||||
g.drawLine(30, i * 40, 575, i * 40);
|
||||
|
||||
g.setColor(Color.lightGray);
|
||||
g.fillRect(30, 0, 2, 240);
|
||||
g.fillRect(30, 238, 546, 2);
|
||||
g.drawString("100", 2, 10);
|
||||
g.drawString("90", 8, 45);
|
||||
g.drawString("80", 8, 85);
|
||||
g.drawString("70", 8, 125);
|
||||
g.drawString("60", 8, 165);
|
||||
g.drawString("50", 8, 205);
|
||||
g.drawString("40", 8, 235);
|
||||
for(int j = 0; j < 17; j++)
|
||||
{
|
||||
if(db_val[j] <= 40)
|
||||
continue;
|
||||
if(db_val[j] >= detection_level)
|
||||
g.setColor(Color.magenta);
|
||||
else
|
||||
g.setColor(Color.blue);
|
||||
g.fillRect(32 + j * 32, 240 - (db_val[j] - 40) * 4, 30, (db_val[j] - 40) * 4 - 2);
|
||||
}
|
||||
|
||||
g.setColor(Color.red);
|
||||
if(detection_level >= 100)
|
||||
g.drawLine(32, 0, 576, 0);
|
||||
else
|
||||
if(detection_level <= 40)
|
||||
g.drawLine(32, 238, 576, 238);
|
||||
else
|
||||
g.drawLine(32, 240 - (detection_level - 40) * 4, 576, 240 - (detection_level - 40) * 4);
|
||||
}
|
||||
|
||||
public void update(Graphics g)
|
||||
{
|
||||
paint(g);
|
||||
}
|
||||
|
||||
public String CvtHex(byte abyte0[])
|
||||
{
|
||||
byte abyte1[] = new byte[abyte0.length * 2];
|
||||
for(int i = 0; i < abyte0.length; i++)
|
||||
{
|
||||
byte byte0 = (byte)(abyte0[i] >> 4 & 0xf);
|
||||
if(byte0 <= 9)
|
||||
abyte1[i * 2] = (byte)(byte0 + 48);
|
||||
else
|
||||
abyte1[i * 2] = (byte)((byte0 + 97) - 10);
|
||||
byte0 = (byte)(abyte0[i] & 0xf);
|
||||
if(byte0 <= 9)
|
||||
abyte1[i * 2 + 1] = (byte)(byte0 + 48);
|
||||
else
|
||||
abyte1[i * 2 + 1] = (byte)((byte0 + 97) - 10);
|
||||
}
|
||||
|
||||
return new String(abyte1);
|
||||
}
|
||||
|
||||
public String decode_base64(byte abyte0[], int i)
|
||||
{
|
||||
byte abyte1[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".getBytes();
|
||||
byte abyte2[] = new byte[4];
|
||||
int j = i % 4;
|
||||
if(j != 0)
|
||||
return null;
|
||||
int k1 = 0;
|
||||
j = 0;
|
||||
int k = i / 4;
|
||||
byte abyte3[] = new byte[k * 3];
|
||||
for(int l = 0; l < k; l++)
|
||||
{
|
||||
for(int i1 = 0; i1 < 4; i1++)
|
||||
{
|
||||
if(abyte0[k1] == 61)
|
||||
{
|
||||
abyte2[i1] = 0;
|
||||
j++;
|
||||
} else
|
||||
{
|
||||
int j1 = 0;
|
||||
do
|
||||
{
|
||||
if(j1 >= 64)
|
||||
break;
|
||||
if(abyte0[k1] == abyte1[j1])
|
||||
{
|
||||
abyte2[i1] = (byte)j1;
|
||||
break;
|
||||
}
|
||||
j1++;
|
||||
} while(true);
|
||||
}
|
||||
k1++;
|
||||
}
|
||||
|
||||
abyte3[l * 3] = (byte)((byte)(abyte2[0] << 2 & 0xfc) | (byte)(abyte2[1] >> 4 & 3));
|
||||
abyte3[l * 3 + 1] = (byte)((byte)(abyte2[1] << 4 & 0xf0) | (byte)(abyte2[2] >> 2 & 0xf));
|
||||
abyte3[l * 3 + 2] = (byte)((byte)(abyte2[2] << 6 & 0xc0) | abyte2[3]);
|
||||
}
|
||||
|
||||
return new String(abyte3);
|
||||
}
|
||||
|
||||
public String GetDigestAuthentication(String s, String s1, String s2, String s3)
|
||||
{
|
||||
String s4 = null;
|
||||
String s5 = null;
|
||||
String s6 = null;
|
||||
String s7 = null;
|
||||
String s8 = null;
|
||||
String s9 = new String("GET");
|
||||
String s10 = decode_base64(m_sPassword.getBytes(), m_sPassword.length());
|
||||
s5 = s10.substring(0, s10.indexOf(':'));
|
||||
if(s10.indexOf('\0') >= 0)
|
||||
s6 = s10.substring(s10.indexOf(':') + 1, s10.indexOf('\0'));
|
||||
else
|
||||
s6 = s10.substring(s10.indexOf(':') + 1);
|
||||
Random random = new Random();
|
||||
byte abyte0[] = new byte[16];
|
||||
random.nextBytes(abyte0);
|
||||
s7 = CvtHex(abyte0);
|
||||
s8 = String.format("%1$08X", new Object[] {
|
||||
Integer.valueOf(nc)
|
||||
});
|
||||
nc++;
|
||||
try
|
||||
{
|
||||
MessageDigest messagedigest = MessageDigest.getInstance("MD5");
|
||||
messagedigest.update(s5.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s1.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s6.getBytes());
|
||||
String s12 = CvtHex(messagedigest.digest());
|
||||
messagedigest.reset();
|
||||
messagedigest.update(s9.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s.getBytes());
|
||||
String s13 = CvtHex(messagedigest.digest());
|
||||
messagedigest.reset();
|
||||
messagedigest.update(s12.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s3.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
if(s2.length() > 0)
|
||||
{
|
||||
messagedigest.update(s8.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s7.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
messagedigest.update(s2.getBytes());
|
||||
messagedigest.update((byte)58);
|
||||
}
|
||||
messagedigest.update(s13.getBytes());
|
||||
s4 = CvtHex(messagedigest.digest());
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
exception.printStackTrace();
|
||||
}
|
||||
String s11 = String.format("Digest username=\"%1$s\", realm=\"%2$s\", uri=\"%3$s\", algorithm=MD5, nonce=\"%4$s\", cnonce=\"%5$s\", qop=%6$s, nc=%7$s, response=\"%8$s\"", new Object[] {
|
||||
s5, s1, s, s3, s7, s2, s8, s4
|
||||
});
|
||||
return s11;
|
||||
}
|
||||
|
||||
private Thread m_sounddb;
|
||||
private String m_sRemoteHost;
|
||||
private URL m_urlRemoteHost;
|
||||
private Integer m_iRemotePort;
|
||||
private String m_sPassword;
|
||||
private URL serverAddress;
|
||||
private int db_val[];
|
||||
private int detection_level;
|
||||
private boolean ThreadRun;
|
||||
private int algorithm;
|
||||
private int nc;
|
||||
private AU m_trdCameraSound;
|
||||
private long mute_start_time;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
BIN
verb/fs.etc_ro.web/web/api/sounddb/sounddb.jar
Normal file
2
verb/fs.etc_ro.web/web/cgi/audiocfg.cgi
Normal file
@@ -0,0 +1,2 @@
|
||||
AudioEnable=%%AudioEnable();%%
|
||||
AudioVolume=%%AudioVolume();%%
|
1
verb/fs.etc_ro.web/web/cgi/cgiversion.cgi
Normal file
@@ -0,0 +1 @@
|
||||
CGIVersion=%%CGIVersion();%%
|
17
verb/fs.etc_ro.web/web/cgi/common.cgi
Normal file
@@ -0,0 +1,17 @@
|
||||
model=%%ModelName();%%
|
||||
brand=%%Company();%%
|
||||
version=%%FirmwareVersion();%%
|
||||
build=%%FirmwareVersion(2);%%
|
||||
hw_version=%%HardwareVersion(2);%%
|
||||
name=%%CameraName();%%
|
||||
location=%%Location();%%
|
||||
macaddr=%%MACAddress(2);%%
|
||||
ipaddr=%%CurrentIPAddress();%%
|
||||
netmask=%%CurrentSubnetMask();%%
|
||||
gateway=%%CurrentDefaultGateway();%%
|
||||
wireless=%%WirelessSupport();%%
|
||||
ptz=%%PTZSupport();%%
|
||||
inputs=0
|
||||
outputs=0
|
||||
speaker=no
|
||||
videoout=no
|
17
verb/fs.etc_ro.web/web/cgi/datetime.cgi
Normal file
@@ -0,0 +1,17 @@
|
||||
DateTimeMode=%%DateTimeMode();%%
|
||||
TimeServerIPAddress=%%TimeServerIPAddress();%%
|
||||
TimeServerProtocol=%%TimeServerProtocol();%%
|
||||
TimeZone=%%TimeZone();%%
|
||||
TimeZoneIndex=%%TimeZoneIndex();%%
|
||||
Date=%%Date();%%
|
||||
Time=%%Time();%%
|
||||
DSTEnable=%%DSTEnable();%%
|
||||
DSTOffset=%%DSTOffset();%%
|
||||
DSTStartMonth=%%DSTStartMonth();%%
|
||||
DSTStartWeek=%%DSTStartWeek();%%
|
||||
DSTStartDay=%%DSTStartDay();%%
|
||||
DSTStartTime=%%DSTStartTime();%%
|
||||
DSTEndMonth=%%DSTEndMonth();%%
|
||||
DSTEndWeek=%%DSTEndWeek();%%
|
||||
DSTEndDay=%%DSTEndDay();%%
|
||||
DSTEndTime=%%DSTEndTime();%%
|