\n\n"; echo "unable to connect to database !!!\n"; echo "\n\n"; } return $conn; } function db_begin_work( $conn ) { if( pg_exec( $conn, "begin work" ) ) { showVar( "begin", "done" ); return true; } else { echo "SQL: begin work failed
\n"; return false; } } function db_commit_work( $conn ) { if( pg_exec( $conn, "commit work" ) ) { showVar( "commit", "done" ); return true; } else { echo "SQL: commit work failed
\n"; pg_exec( $conn, "rollback" ); return false; } } function db_rollback_work( $conn ) { if( pg_exec( $conn, "rollback work" ) ) { showVar( "rollback", "done" ); return true; } else { echo "SQL: rollback work failed
\n"; return false; } } function db_check_login( $conn, $user, $pass ) { if( !ereg( "^[a-zA-Z0-9]*$", $user ) ) { echo "illegal username
\n"; return false; } if( !ereg( "^[a-zA-Z0-9]*$", $pass ) ) { echo "illegal password
\n"; return false; } // add md5 hashes for password ++++++ $sql = "select du_id, du_admin from dnsuser where " . "du_name = '$user' and du_pass = '$pass' and " . "du_enabled = true and du_id_del is null"; showVar( "sql", $sql ); $rs = pg_exec( $conn, $sql ); if( $arr = pg_fetch_array( $rs ) ) { $_SESSION["dnsuser"] = $user; $_SESSION["dnsuid"] = $arr[0]; if( $arr[1] == "t" ) { $_SESSION["dnsadmin"] = true; } else { $_SESSION["dnsadmin"] = false; } $dnsuser = $user; $dnsuid = $arr[0]; $dnsadmin = $_SESSION["dnsadmin"]; $from = $_SERVER["REMOTE_ADDR"]; // ipdate entries where no logout happened $sql = "update dnsuserlog set dul_logout = CURRENT_TIMESTAMP where " . "dul_logout is null and du_id = $dnsuid"; pg_exec( $conn, $sql ); // log the login $sql = "insert into dnsuserlog ( " . "du_id, dul_login, dul_logout, dul_from " . ") values ( " . "$dnsuid, CURRENT_TIMESTAMP, null, '$from' " . ")"; pg_exec( $conn, $sql ); return true; } else { echo "not found on db
\n"; return false; } } function db_logout( $conn ) { $dnsuid = $_SESSION["dnsuid"]; $dnsuser = $_SESSION["dnsuser"]; $sql = "update dnsuserlog set dul_logout = CURRENT_TIMESTAMP where " . "dul_logout is null and du_id = $dnsuid"; pg_exec( $conn, $sql ); session_unregister( "dnsuser" ); session_unregister( "dnsuid" ); session_destroy(); $dnsuser = ""; $dnsuid = ""; } function db_domain_list( $conn, $id, $withnull, $uid, $var ) { if( $uid == 0 ) { $sql = "select dom_id, dom_name from domain order by dom_name"; } else { $sql = "select d.dom_id, dom_name from domain d, domainpriv p where " . "d.dom_id = p.dom_id and p.du_id = $uid order by dom_name"; } showVar( "sql", $sql ); //showVar( "id", $id ); $rs = pg_exec( $conn, $sql ); if( !$rs ) { return; } echo "\n"; } function makeIpBase( $minip, $maxip ) { $minip = (int)$minip; $maxip = (int)$maxip; $ip1n = ($minip >> 24) & 255; $ip1x = ($maxip >> 24) & 255; $ip2n = ($minip >> 16) & 255; $ip2x = ($maxip >> 16) & 255; $ip3n = ($minip >> 8) & 255; $ip3x = ($maxip >> 8) & 255; $ip4n = $minip & 255; $ip4x = $maxip & 255; if( $ip1n != $ip1x ) { return ""; } if( $ip2n != $ip2x ) { return $ip1n . "."; } if( $ip3n != $ip3x ) { return $ip1n . "." . $ip2n . "."; } if( $ip4n != $ip4x ) { return $ip1n . "." . $ip2n . "." . $ip3n . "."; } return $ip1n . "." . $ip2n . "." . $ip3n . "." . $ip4n; } function db_iprange_list( $conn, $id, $withnull, $uid, $var, $form, $txtfield ) { if( $uid == 0 ) { $sql = "select ipr_id, ipr_min_addr, ipr_max_addr, ipr_descr " . "from iprange " . "where du_id_del is null and ipr_dhcp = false " . "order by ipr_min_addr"; } else { $sql = "select r.ipr_id, ipr_min_addr, ipr_max_addr, ipr_descr " . "from iprange r, iprangepriv p where " . "r.ipr_id = p.ipr_id and p.du_id = $uid and " . "r.du_id_del is null and r.ipr_dhcp = false " . "order by ipr_min_addr"; } $rs = pg_exec( $conn, $sql ); if( !$rs ) { return; } if( $form != "" && $txtfield != "" ) { $script = true; echo "\n"; } if( $withnull ) { echo "