int do_login_process() { // DEBUG("do_login_process", "0", 0); char user_name[MAX_PROPERTY_DARA_SIZE], password[MAX_PROPERTY_DARA_SIZE]; unsigned char decrypt[16]; MD5_CTX md5; int i; // DEBUG("do_login_process", "1", 1); // DEBUG("do_login_process--data", http_post_data, 1); sprintf(user_name, "%s", get_post_data_property("user_name")); // DEBUG("do_login_process", "2", 2); sprintf(password, "%s", get_post_data_property("password")); md5_check(password, password); if(is_authority_ok(user_name, password) < 0) return -1; save_session_info(NULL, NULL); // DEBUG("md5 password", password, 007); return 0; }
void do_change_admin_password() { char u[MAX_PROPERTY_DARA_SIZE] = {0}, p[MAX_PROPERTY_DARA_SIZE] = {0}, *_username = NULL, *_password = NULL; sprintf(u, get_post_data_property("username")); sprintf(p, get_post_data_property("password")); if ( strlen(u) > 0) _username = u; if ( strlen(p) > 0) _password = p; if ( !_username || !_password ){ fprintf(stdout, "%s", "{\"result\":1}"); return; } md5_check(_password, _password); save_session_info(_username, _password); fprintf(stdout, "%s", "{\"result\":0}"); }
static int std_rcv_pads(struct session* ses, struct pppoe_packet *p_in, struct pppoe_packet **p_out){ if( verify_packet(ses, p_in) < 0) return -1; if (DEB_DISC) poe_dbglog (ses,"Got connection: %x", ntohs(p_in->hdr->sid)); poe_info (ses,"Got connection: %x", ntohs(p_in->hdr->sid)); ses->sp.sa_family = AF_PPPOX; ses->sp.sa_protocol = PX_PROTO_OE; ses->sp.sa_addr.pppoe.sid = p_in->hdr->sid; memcpy(ses->sp.sa_addr.pppoe.dev,ses->name, IFNAMSIZ); memcpy(ses->sp.sa_addr.pppoe.remote, p_in->addr.sll_addr, ETH_ALEN); create_msg(BCM_PPPOE_CLIENT_STATE_CONFIRMED, MDMVS_ERROR_NONE); syslog(LOG_CRIT,"PPP session established.\n"); // patch2 save_session_info(ses->sp.sa_addr.pppoe.remote, ses->sp.sa_addr.pppoe.sid); return 1; }