* not, write to the Free Software Foundation, Inc, 59 Temple Place -
* Suite 330, Boston, MA 02111-1307, USA.
*
- * TODO
- *
- * DISABLED_TO_FIX - DNS access (perform blocking dns requests, must be fixed)
- *
- * TEST - database connection fails after a while, check close and try PGSQL_CONNECT_FORCE_NEW.
- * TEST - images flickering on slow windows: try to poll stream every 300 ms
- *
- * - configuration file management
- * - centralize all '<script ...' incapsulation to allow multiple transport system.
- *
- * - manage and test cross forwarder between table and room
- * - log_legal address fix
- * - setcookie (for tables only and persist prefs)
- * - 404 wrong page management
- *
- * TEST - unneeded garbage_time.expired access
- * TEST - BUG: fast loop on stream index_rd_ifra page (js watchdog start without timeout corrupt counts)
- * TEST - BUG: lurker are logged out (and remain a pending socket opened (look the spush log)
- * TEST - BUG: logout failed (fixed with a garbage_collector wrapper at sac-a-push level
- * TEST - garbage management
- *
- * DONE/FROZEN - problema con getpeer (HOSTADDR)
- *
- * DONE - app level keep-alive
- * DONE - index_wr other issues
- * DONE - from room to table
- * DONE - from table to room
- * DONE - chunked
- * DONE - bug: read from a not resource handle (already closed because a new socket substitute it)
- * DONE - partial write for normal page management
- * DONE - index_rd_ifra: last_clean issue
- * DONE - fwrite failed error management (select, buffer where store unsent data, and fwrite check and retry)
- * DONE - bug: after restart index_rd.php receive from prev clients a lot of req
- * DONE - index_wr.php::chat
- * DONE - index_wr.php::exit
- * DONE - index_rd.php porting
- * DONE - generic var management from internet
- * DONE - index.php auth part
- * ABRT - index_wr.php::reload - reload is js-only function
- * ABRT - keepalive management - not interesting for our purposes
*/
$G_base = "../";
require_once($G_base."Obj/user.phh");
require_once($G_base."Obj/brisk.phh");
require_once($G_base."Obj/auth.phh");
+require_once($G_base."Obj/zlibstream.phh");
// require_once("../Obj/proxyscan.phh");
require_once($G_base."index.php");
require_once($G_base."index_wr.php");
require_once($G_base."briskin5/index_wr.php");
-function main()
+function main($argv)
{
- if (($room = Room::create()) == FALSE) {
- log_crit("room::create failed");
- exit(1);
- }
+ pid_save();
+ do {
+ if (($room = Room::create(LEGAL_PATH."/brisk-crystal.data")) == FALSE) {
+ log_crit("room::create failed");
+ $ret = 1;
+ break;
+ }
- if (($s_a_p = Sac_a_push::create($room, "/tmp/brisk.sock", 0, 0)) === FALSE) {
- exit(1);
- }
+ if (($s_a_p = Sac_a_push::create($room, USOCK_PATH, 0, 0, $argv)) === FALSE) {
+ $ret = 2;
+ break;
+ }
- $s_a_p->run();
+ $ret = $s_a_p->run();
+ } while (0);
- exit(0);
+ pid_remove();
+ exit($ret);
}
-main();
+main($argv);
?>