📄 alert.c
字号:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <fcntl.h>
#include <getopt.h>
#include <errno.h>
#include <sys/ioctl.h>
#include <linux/config.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include "cgivars.h"
#include "htmllib.h"
#include "config_phase.h"
#include "sysconf.h"
#define DEBUG 0
#define ID_ALMFLAG 51
#define ID_ALMVMDF 52
#define ID_ALMVMDTM 53
#define ID_ALMVMDSTMD 54
#define ID_ALMVMDRECT 55
#define ID_ALMVMDSEN 56
#define ID_ALMVMDTY 57
#define ID_ALMSMTPSEL 58
#define ID_ALMSMTPADDR 59
#define ID_ALMFTPSEL 60
#define ID_ALMFTPDIR 61
#define ID_ALMVMDSVFLG 62
#define ID_ALMVMDOUTTY 63
#define ID_ALMINFFLAG 64
#define ID_ALMINFTM 65
#define ID_ALMINFMD 66
#define ID_ALMINFTY 67
#define ID_ALMINFSMTPSEL 68
#define ID_ALMINFSMTPADDR 69
#define ID_ALMINFFTPSEL 70
#define ID_ALMINFFTPADDR 71
#define ID_ALMINFSVFLG 72
#define ID_ALMINFOUTFLG 73
#define ID_ALMWIRDFLAG 74
#define ID_ALMWIRDTM 75
#define ID_ALMWIRDMD 76
#define ID_ALMWIRDTY 77
#define ID_ALMWIRDSMTPSEL 78
#define ID_ALMWIRDSMTPADDR 79
#define ID_ALMWIRDFTPSEL 80
#define ID_ALMWIRDFTPADDR 81
#define ID_ALMWIRDSVFLG 82
#define ID_ALMWIRDOUTFLG 83
#define ID_ALMWIRD2FLAG 84
#define ID_ALMWIRD2TM 85
#define ID_ALMWIRD2MD 86
#define ID_ALMWIRD2TY 87
#define ID_ALMWIRD2SMTPSEL 88
#define ID_ALMWIRD2SMTPADDR 89
#define ID_ALMWIRD2FTPSEL 90
#define ID_ALMWIRD2FTPADDR 91
#define ID_ALMWIRD2SVFLG 92
#define ID_ALMWIRD2OUTFLG 93
#define ID_ALMWIRLFLAG 94
#define ID_ALMWIRLTM 95
#define ID_ALMWIRLMD 96
#define ID_ALMWIRLTY 97
#define ID_ALMWIRLSMTPSEL 98
#define ID_ALMWIRLSMTPADDR 99
#define ID_ALMWIRLFTPSEL 100
#define ID_ALMWIRLFTPADDR 101
#define ID_ALMWIRLSVFLG 102
#define ID_ALMWIRLOUTFLG 103
#define ID_ALMWIRL2FLAG 104
#define ID_ALMWIRL2TM 105
#define ID_ALMWIRL2MD 106
#define ID_ALMWIRL2TY 107
#define ID_ALMWIRL2SMTPSEL 108
#define ID_ALMWIRL2SMTPADDR 109
#define ID_ALMWIRL2FTPSEL 110
#define ID_ALMWIRL2FTPADDR 111
#define ID_ALMWIRL2SVFLG 112
#define ID_ALMWIRL2OUTFLG 113
#define ID_ALMWIRL3FLAG 114
#define ID_ALMWIRL3TM 115
#define ID_ALMWIRL3MD 116
#define ID_ALMWIRL3TY 117
#define ID_ALMWIRL3SMTPSEL 118
#define ID_ALMWIRL3SMTPADDR 119
#define ID_ALMWIRL3FTPSEL 120
#define ID_ALMWIRL3FTPADDR 121
#define ID_ALMWIRL3SVFLG 122
#define ID_ALMWIRL3OUTFLG 123
#define ID_ALMWIRL4FLAG 124
#define ID_ALMWIRL4TM 125
#define ID_ALMWIRL4MD 126
#define ID_ALMWIRL4TY 127
#define ID_ALMWIRL4SMTPSEL 128
#define ID_ALMWIRL4SMTPADDR 129
#define ID_ALMWIRL4FTPSEL 130
#define ID_ALMWIRL4FTPADDR 131
#define ID_ALMWIRL4SVFLG 132
#define ID_ALMWIRL4OUTFLG 133
static config_item ** items;
static int config_list[] = {51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,
81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,
111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133};
static char *config_name[] = {"ALMFLAG","ALMVMDF","ALMVMDTM","ALMVMDSTMD","ALMVMDRECT","ALMVMDSEN",
"ALMVMDTY","ALMSMTPSEL","ALMSMTPADDR","ALMFTPSEL","ALMFTPDIR","ALMVMDSVFLG","ALMVMDOUTTY",
"ALMINFFLAG","ALMINFTM","ALMINFMD","ALMINFTY","ALMINFSMTPSEL",
"ALMINFSMTPADDR","ALMINFFTPSEL","ALMINFFTPADDR","ALMINFSVFLG","ALMINFOUTFLG",
"ALMWIRDFLAG","ALMWIRDTM","ALMWIRDMD","ALMWIRDTY","ALMWIRDSMTPSEL",
"ALMWIRDSMTPADDR","ALMWIRDFTPSEL","ALMWIRDFTPADDR","ALMWIRDSVFLG","ALMWIRDOUTFLG",
"ALMWIRD2FLAG","ALMWIRD2TM","ALMWIRD2MD","ALMWIRD2TY","ALMWIRD2SMTPSEL",
"ALMWIRD2SMTPADDR","ALMWIRD2FTPSEL","ALMWIRD2FTPADDR","ALMWIRD2SVFLG","ALMWIRD2OUTFLG",
"ALMWIRLFLAG","ALMWIRLTM","ALMWIRLMD","ALMWIRLTY","ALMWIRLSMTPSEL",
"ALMWIRLSMTPADDR","ALMWIRLFTPSEL","ALMWIRLFTPADDR","ALMWIRLSVFLG","ALMWIRLOUTFLG",
"ALMWIRL2FLAG","ALMWIRL2TM","ALMWIRL2MD","ALMWIRL2TY","ALMWIRL2SMTPSEL",
"ALMWIRL2SMTPADDR","ALMWIRL2FTPSEL","ALMWIRL2FTPADDR","ALMWIRL2SVFLG","ALMWIRL2OUTFLG",
"ALMWIRL3FLAG","ALMWIRL3TM","ALMWIRL3MD","ALMWIRL3TY","ALMWIRL3SMTPSEL",
"ALMWIRL3SMTPADDR","ALMWIRL3FTPSEL","ALMWIRL3FTPADDR","ALMWIRL3SVFLG","ALMWIRL3OUTFLG",
"ALMWIRL4FLAG","ALMWIRL4TM","ALMWIRL4MD","ALMWIRL4TY","ALMWIRL4SMTPSEL",
"ALMWIRL4SMTPADDR","ALMWIRL4FTPSEL","ALMWIRL4FTPADDR","ALMWIRL4SVFLG","ALMWIRL4OUTFLG" };
void alert(char **postvars, int form_method)
{
int config_num = sizeof(config_list)/sizeof(int);
int i,j;
int r_fd, w_fd;
int temp_int;
char *temp_string;
char t_start[10], t_end[10], t_set[20];
char t_set_VMD[20], t_set_INF[20], t_set_WIRD[20], t_set_WIRD2[20], t_set_WIRL[20], t_set_WIRL2[20], t_set_WIRL3[20], t_set_WIRL4[20];
char java[] = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
<html><head><title>安防报警</title>
<meta http-equiv=\"Expires\" content=\"Tue, 1 Jan 1980 2:00:00 GMT\">
<meta http-equiv=\"Pragma\" content=\"no-cache\">
<meta http-equiv=\"Cache-Control\" content=\"no-cache\">
<meta http-equiv=\"Content-type\" content=\"text/html; charset=gb2312\">
<style type=\"text/css\">BODY {
FONT-SIZE: 10pt; FONT-FAMILY: Arial
}
TD {
FONT-SIZE: 10pt; FONT-FAMILY: Arial
}
FORM {
FONT-SIZE: 10pt; FONT-FAMILY: Arial
}
OPTION {
FONT-SIZE: 10pt; FONT-FAMILY: Arial
}
TEXTAREA {
FONT-SIZE: 10pt; FONT-FAMILY: Arial
}
P {
FONT-SIZE: 10pt; FONT-FAMILY: Arial
}
OL {
FONT-SIZE: 10pt; FONT-FAMILY: Arial
}
INPUT {
FONT-SIZE: 10pt; FONT-FAMILY: Arial
}
SELECT {
FONT-SIZE: 10pt; FONT-FAMILY: Arial
}
.style1 {
FONT-WEIGHT: bold; FONT-SIZE: 14pt
}
.style2 {
COLOR: #999999
}
</style>
<meta content=\"MSHTML 6.00.6000.16414\" name=\"GENERATOR\"></head>";
char jsp[] = "
<script language=JavaScript>
<!--
function isTime(str)
{
var reg=/^(\\d{2})\\:(\\d{2})\\:(\\d{2})$/
if(arr=str.match(reg)){
if(parseInt(arr[1])>23){return false;}
if(parseInt(arr[2])>59){return false;}
if(parseInt(arr[3])>59){return false;}
}else
{
return false;
}
return true;
}
function checkTime()
{
var element ;
element = document.getElementById('T_START_ALMVMD');
if( isTime(element.value) == false){
alert(\"移动侦测启动时间格式不对! \");
return false;
}
element = document.getElementById('T_END_ALMVMD');
if( isTime(element.value) == false){
alert(\"移动侦测启动时间格式不对! \");
return false;
}
element = document.getElementById('T_START_ALMINFTM');
if( isTime(element.value) == false){
alert(\"人体红外探测输入启动时间格式不对! \");
return false;
}
element = document.getElementById('T_END_ALMINFTM');
if( isTime(element.value) == false){
alert(\"人体红外探测输入启动时间格式不对! \");
return false;
}
element = document.getElementById('T_START_ALMWIRDTM');
if( isTime(element.value) == false){
alert(\"有线报警输入1启动时间格式不对! \");
return false;
}
element = document.getElementById('T_END_ALMWIRDTM');
if( isTime(element.value) == false){
alert(\"有线报警输入1启动时间格式不对! \");
return false;
}
element = document.getElementById('T_START_ALMWIRD2TM');
if( isTime(element.value) == false){
alert(\"有线报警输入2启动时间格式不对! \");
return false;
}
element = document.getElementById('T_END_ALMWIRD2TM');
if( isTime(element.value) == false){
alert(\"有线报警输入2启动时间格式不对! \");
return false;
}
element = document.getElementById('T_START_ALMWIRLTM');
if( isTime(element.value) == false){
alert(\"无线报警输入1启动时间格式不对! \");
return false;
}
element = document.getElementById('T_END_ALMWIRLTM');
if( isTime(element.value) == false){
alert(\"无线报警输入1启动时间格式不对! \");
return false;
}
element = document.getElementById('T_START_ALMWIRL2TM');
if( isTime(element.value) == false){
alert(\"无线报警输入2启动时间格式不对! \");
return false;
}
element = document.getElementById('T_END_ALMWIRL2TM');
if( isTime(element.value) == false){
alert(\"无线报警输入2启动时间格式不对! \");
return false;
}
element = document.getElementById('T_START_ALMWIRL3TM');
if( isTime(element.value) == false){
alert(\"无线报警输入3启动时间格式不对! \");
return false;
}
element = document.getElementById('T_END_ALMWIRL3TM');
if( isTime(element.value) == false){
alert(\"无线报警输入3启动时间格式不对! \");
return false;
}
element = document.getElementById('T_START_ALMWIRL4TM');
if( isTime(element.value) == false){
alert(\"无线报警输入4启动时间格式不对! \");
return false;
}
element = document.getElementById('T_END_ALMWIRL4TM');
if( isTime(element.value) == false){
alert(\"无线报警输入4启动时间格式不对! \");
return false;
}
return true;
}
//-->
</script> ";
//r_fd = open_read_fifo();
//unlink("/tmp/trace");
items = init_config_item(items, config_num, config_list);
GetConfValues(config_list, items, config_num);
printf("%s\n", java);
printf("%s\n",jsp);
// If we got post, write it into flash
if(form_method == POST)
{
memset(t_set_INF, 0, 20);
memset(t_set_VMD, 0, 20);
memset(t_set_WIRD, 0, 20);
memset(t_set_WIRD2, 0, 20);
memset(t_set_WIRL, 0, 20);
memset(t_set_WIRL2, 0, 20);
memset(t_set_WIRL3, 0, 20);
memset(t_set_WIRL4, 0, 20);
for (i=0; postvars[i]; i+= 2)
{
if(!strcmp(postvars[i], "T_START_ALMVMD"))
{
memcpy(t_set_VMD, postvars[i+1], 8);
t_set_VMD[8] = '-';
}
if(!strcmp(postvars[i], "T_END_ALMVMD"))
{
memcpy(t_set_VMD+9, postvars[i+1], 8);
}
if(!strcmp(postvars[i], "T_START_ALMINFTM"))
{
memcpy(t_set_INF, postvars[i+1], 8);
t_set_INF[8] = '-';
}
if(!strcmp(postvars[i], "T_END_ALMINFTM"))
{
memcpy(t_set_INF+9, postvars[i+1], 8);
}
if(!strcmp(postvars[i], "T_START_ALMWIRDTM"))
{
memcpy(t_set_WIRD, postvars[i+1], 8);
t_set_WIRD[8] = '-';
}
if(!strcmp(postvars[i], "T_END_ALMWIRDTM"))
{
memcpy(t_set_WIRD+9, postvars[i+1], 8);
}
if(!strcmp(postvars[i], "T_START_ALMWIRD2TM"))
{
memcpy(t_set_WIRD2, postvars[i+1], 8);
t_set_WIRD2[8] = '-';
}
if(!strcmp(postvars[i], "T_END_ALMWIRD2TM"))
{
memcpy(t_set_WIRD2+9, postvars[i+1], 8);
}
if(!strcmp(postvars[i], "T_START_ALMWIRLTM"))
{
memcpy(t_set_WIRL, postvars[i+1], 8);
t_set_WIRL[8] = '-';
}
if(!strcmp(postvars[i], "T_END_ALMWIRLTM"))
{
memcpy(t_set_WIRL+9, postvars[i+1], 8);
}
if(!strcmp(postvars[i], "T_START_ALMWIRL2TM"))
{
memcpy(t_set_WIRL2, postvars[i+1], 8);
t_set_WIRL2[8] = '-';
}
if(!strcmp(postvars[i], "T_END_ALMWIRL2TM"))
{
memcpy(t_set_WIRL2+9, postvars[i+1], 8);
}
if(!strcmp(postvars[i], "T_START_ALMWIRL3TM"))
{
memcpy(t_set_WIRL3, postvars[i+1], 8);
t_set_WIRL3[8] = '-';
}
if(!strcmp(postvars[i], "T_END_ALMWIRL3TM"))
{
memcpy(t_set_WIRL3+9, postvars[i+1], 8);
}
if(!strcmp(postvars[i], "T_START_ALMWIRL4TM"))
{
memcpy(t_set_WIRL4, postvars[i+1], 8);
t_set_WIRL4[8] = '-';
}
if(!strcmp(postvars[i], "T_END_ALMWIRL4TM"))
{
memcpy(t_set_WIRL4+9, postvars[i+1], 8);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -