📄 webhandle.c
字号:
/* webhandle.c - CGI background process routines *//* Copyright(C) eyBuild Group, 2005, 2006. All Rights Reserved. *//*modification history--------------------01a, 2006-03-22, newzy author*//*DESCRIPTIONCGI background process routines */#include <stdio.h>#include <string.h>#include <eblib.h>#include "webhandle.h"/**************************************************************************** do_login - auth user* * this routine is a hook, while request a virtual file, * this routine will be call.** RETURN: TRUE/FALSE*/ int do_login(void * ppage, char * pname, int type){ char * puser = getCookie("username"); char * pid = getCookie("session_id"); BROADBAND_ROUTER bbr[1]; char errmsg[256] = ""; char * language = getCookie("lang"); load_bbr(bbr, errmsg); /* chage default language */ if (!strcmp("ch", language)) defLangSet(LANG_CH); else if (!strcmp("en", language)) defLangSet(LANG_EN); else if (!strcmp("jp", language)) defLangSet(LANG_JP); /* have been login */ if (!isblankstr(puser) && !isblankstr(pid) && !strcmp(puser, bbr->account.user) && !strcmp(pid, bbr->account.session_id)) return FALSE; /* just login.csp */ if (!strcmp(pname, "/login.csp") || !strcmp(pname, "/authcode.csp")) return FALSE; /* redirect to login.csp */ forward("/login.csp", TRUE); return FALSE; return TRUE;} int make_default_config(BROADBAND_ROUTER * bbr, char * errmsg){ memset(bbr, 0, sizeof(*bbr)); memset(errmsg, 0, 256); strcpy(bbr->lan.ip, "192.168.1.1"); strcpy(bbr->lan.ipmask, "255.255.0.0"); strcpy(bbr->mac.lan_mac, "00-0A-EB-B2-6B-D8"); strcpy(bbr->mac.wan_mac, FACTORY_WAN_MAC); strcpy(bbr->mac.pc_mac, "00-00-00-00-00-00"); strcpy(bbr->wan.ip, "0.0.0.0"); strcpy(bbr->wan.ipmask, "0.0.0.0"); strcpy(bbr->wan.connect_mode, "2"); bbr->pppoe.mtu = 1492; bbr->dhcps.enable = 1; strcpy(bbr->dhcps.main_dsn_server, "202.96.209.5"); strcpy(bbr->dhcps.backup_dsn_server, "211.116.192.7"); strcpy(bbr->dhcps.pool_start, "192.168.1.100"); strcpy(bbr->dhcps.pool_end, "192.168.1.199"); bbr->dhcps.lease = 120; bbr->ip_filter.ip_filter_allow_all = TRUE; bbr->ip_filter.mac_filter_allow_added = TRUE; bbr->rmanage.wan_port = 8080; strcpy(bbr->rmanage.remote_manage_host, "255.255.255.255"); strcpy(bbr->wan.wan_type, WAN_TYPE_PPPOE); strcpy(bbr->account.user, "user"); strcpy(bbr->account.passwd, "user"); strcpy(bbr->account.session_id, "0123456789"); return save_bbr(bbr, errmsg);}int save_bbr(BROADBAND_ROUTER * bbr, char * errmsg){ FILE * fp; /* open error */ if (NULL == (fp=fopen(CONFIG_FILE, "wb"))) { return ERROR| sprintf(errmsg, "Make default configuration error."); } fwrite(bbr, 1, sizeof(*bbr), fp); fclose(fp); return OK;}int load_bbr(BROADBAND_ROUTER * bbr, char * errmsg){ FILE * fp; memset(bbr, 0, sizeof(*bbr)); memset(errmsg, 0, 256); /* open error */ if (NULL == (fp=fopen(CONFIG_FILE, "rb"))) { return make_default_config(bbr, errmsg); } /* read error */ if ( sizeof(*bbr) != fread(bbr, 1, sizeof(*bbr), fp) ) { fclose(fp); return make_default_config(bbr, errmsg); } fclose(fp); return OK;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -