- if ($num_changed_sockets === FALSE) {
- printf("No data in 5 secs");
- }
- else if ($num_changed_sockets > 0) {
- printf("num sock %d num_of_socket: %d\n", $num_changed_sockets, count($read));
- if ($debug > 1) {
- print_r($read);
- }
- /* At least at one of the sockets something interesting happened */
- foreach ($read as $i => $sock) {
- /* is_resource check is required because there is the possibility that
- during new request an old connection is closed */
- if (!is_resource($sock)) {
- continue;
- }
- if ($sock === $list) {
- printf("NUOVA CONNEX\n");
- $new_unix = stream_socket_accept($list);
- $stream_info = "";
- $method = "";
- $get = array();
- $post = array();
- $cookie = array();
- if (($new_socket = ancillary_getstream($new_unix, $stream_info)) !== FALSE) {
- stream_set_blocking($new_socket, $blocking_mode); // Set the stream to non-blocking
- printf("RECEIVED HEADER:\n%s", $stream_info);
- $path = spu_process_info($stream_info, $method, $header, $get, $post, $cookie);
- printf("PATH: [%s]\n", $path);
- printf("M: %s\nHEADER:\n", $method);
- print_r($header);
- printf("GET:\n");
- print_r($get);
- printf("POST:\n");
- print_r($post);
- printf("COOKIE:\n");
- print_r($cookie);
-
- $addr = stream_socket_get_name($new_socket, TRUE);
-
- switch ($path) {
- case SITE_PREFIX:
- case SITE_PREFIX."index.php":
- $header_out = array();
- ob_start();
- index_main($room, $header_out, $addr, $get, $post, $cookie);
- $content = ob_get_contents();
- ob_end_clean();
+ if (file_exists($thiz->file_socket)) {
+ unlink($thiz->file_socket);
+ }
+
+ $old_umask = umask(0);
+ if (($thiz->list = stream_socket_server($thiz->unix_socket, $err, $errs)) === FALSE) {
+ return (FALSE);
+ }
+ umask($old_umask);
+ stream_set_blocking($thiz->list, $thiz->blocking_mode); # Set the stream to non-blocking