i think i almost have the default pass, i have to understand one more function

This commit is contained in:
2018-11-18 18:19:38 +01:00
parent 8206ede06a
commit 36aeaa07f6
264 changed files with 11666 additions and 1 deletions

Binary file not shown.

View 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=

Binary file not shown.

View 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=

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

View 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

Binary file not shown.

Binary file not shown.

View 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=

Binary file not shown.

View 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=

Binary file not shown.

Binary file not shown.

View 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;
}

Binary file not shown.

View File

@@ -0,0 +1,2 @@
AudioEnable=%%AudioEnable();%%
AudioVolume=%%AudioVolume();%%

View File

@@ -0,0 +1 @@
CGIVersion=%%CGIVersion();%%

View 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

View 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();%%

View 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();%%

View File

@@ -0,0 +1 @@
WebDebugLevel=%%WebDebugLevel();%%

View 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();%%

View File

@@ -0,0 +1 @@
%%ActiveUserTable(1);%%

View File

@@ -0,0 +1,4 @@
Audio=%%AudioEnable();%%
Volume=%%AudioVolume();%%
Codec=%%AudioCodec();%%
SampleRate=%%AudioSampleRate();%%

View File

@@ -0,0 +1,6 @@
VideoResolution=%%StringOfVideoResolution();%%
CompressionRate=%%StringOfCompressionRate();%%
FrameRate=%%StringOfFrameRate();%%
ViewMode=%%ViewMode();%%
FrameSize=%%FrameSize();%% Bytes
LightFrequency=%%StringOfLightFrequency();%%

View 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();%%

View 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();%%

View 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();%%

View 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();%%

View File

@@ -0,0 +1,6 @@
ConnectionMode=%%StringOfConnectionMode();%%
WirelessLink=%%WirelessLink();%%
SSID=%%WirelessCurrentSSID();%% (MAC : %%WirelessCurrentAPMACAddress();%%)
WirelessChannel=%%WirelessCurrentChannel();%%
TransmissionRate=%%WirelessCurrentTransmissionRate();%%
WEPEncryption=%%WirelessCurrentEncryption();%%

View File

@@ -0,0 +1,7 @@
MotionDetectionEnable=%%MotionDetectionEnable();%%
MotionDetectionBlockSet=%%MotionDetectionBlockSet();%%
MotionDetectionSensitivity=%%MotionDetectionSensitivity();%%
MotionDetectionScheduleMode=%%MotionDetectionScheduleMode();%%
MotionDetectionScheduleDay=%%MotionDetectionScheduleDay();%%
MotionDetectionScheduleTimeStart=%%MotionDetectionScheduleTimeStart();%%
MotionDetectionScheduleTimeStop=%%MotionDetectionScheduleTimeStop();%%

View 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();%%

View File

@@ -0,0 +1,6 @@
SoundDetectionEnable=%%SoundDetectionEnable();%%
SoundDetectionDB=%%SoundDetectionDB();%%
SoundDetectionScheduleMode=%%SoundDetectionScheduleMode();%%
SoundDetectionScheduleDay=%%SoundDetectionScheduleDay();%%
SoundDetectionScheduleTimeStart=%%SoundDetectionScheduleTimeStart();%%
SoundDetectionScheduleTimeStop=%%SoundDetectionScheduleTimeStop();%%

View File

@@ -0,0 +1 @@
%%SiteSurveyList();%%

View 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

View File

@@ -0,0 +1,6 @@
CameraName=%%CameraName();%%
Location=%%Location();%%
AdminID=%%AdminID();%%
AdminPassword=%%AdminPassword();%%
LEDControl=%%LEDControl();%%
SnapshotURLAuthentication=%%SnapshotURLAuthentication();%%

View File

@@ -0,0 +1 @@
upgrade=%%LastDownloadStatus();%%

View 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();%%

View File

@@ -0,0 +1 @@
AccessControlEnable=%%AccessControlEnable();%%

View File

@@ -0,0 +1 @@
%%UserTable(1);%%

View File

@@ -0,0 +1,3 @@
name=%%ModName();%%
password=%%ModPassword();%%
group=%%ModGroup();%%

View 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();%%

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

BIN
verb/fs.etc_ro.web/edit.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 756 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 302 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 646 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 809 B

Binary file not shown.

View 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=

Binary file not shown.

View 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=

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

View 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

Binary file not shown.

Binary file not shown.

View 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=

View 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=

Binary file not shown.

Binary file not shown.

View 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;
}

Binary file not shown.

View File

@@ -0,0 +1,2 @@
AudioEnable=%%AudioEnable();%%
AudioVolume=%%AudioVolume();%%

View File

@@ -0,0 +1 @@
CGIVersion=%%CGIVersion();%%

View 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

View 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();%%

Some files were not shown because too many files have changed in this diff Show More