Lines Matching refs:sock

59 	php_netstream_data_t *sock = (php_netstream_data_t*)stream->abstract;  in php_sockop_write()  local
63 if (!sock || sock->socket == -1) { in php_sockop_write()
67 if (sock->timeout.tv_sec == -1) in php_sockop_write()
70 ptimeout = &sock->timeout; in php_sockop_write()
73 …didwrite = send(sock->socket, buf, XP_SOCK_BUF_SIZE(count), (sock->is_blocked && ptimeout) ? MSG_D… in php_sockop_write()
79 if (sock->is_blocked) { in php_sockop_write()
82 sock->timeout_event = 0; in php_sockop_write()
85 retval = php_pollfd_for(sock->socket, POLLOUT, ptimeout); in php_sockop_write()
88 sock->timeout_event = 1; in php_sockop_write()
122 static void php_sock_stream_wait_for_data(php_stream *stream, php_netstream_data_t *sock) in php_sock_stream_wait_for_data() argument
127 if (!sock || sock->socket == -1) { in php_sock_stream_wait_for_data()
131 sock->timeout_event = 0; in php_sock_stream_wait_for_data()
133 if (sock->timeout.tv_sec == -1) in php_sock_stream_wait_for_data()
136 ptimeout = &sock->timeout; in php_sock_stream_wait_for_data()
139 retval = php_pollfd_for(sock->socket, PHP_POLLREADABLE, ptimeout); in php_sock_stream_wait_for_data()
142 sock->timeout_event = 1; in php_sock_stream_wait_for_data()
154 php_netstream_data_t *sock = (php_netstream_data_t*)stream->abstract; in php_sockop_read() local
158 if (!sock || sock->socket == -1) { in php_sockop_read()
162 if (sock->is_blocked) { in php_sockop_read()
163 php_sock_stream_wait_for_data(stream, sock); in php_sockop_read()
164 if (sock->timeout_event) in php_sockop_read()
168 …nr_bytes = recv(sock->socket, buf, XP_SOCK_BUF_SIZE(count), (sock->is_blocked && sock->timeout.tv_… in php_sockop_read()
191 php_netstream_data_t *sock = (php_netstream_data_t*)stream->abstract; in php_sockop_close() local
196 if (!sock) { in php_sockop_close()
203 if (sock->socket == -1) in php_sockop_close()
204 sock->socket = SOCK_ERR; in php_sockop_close()
206 if (sock->socket != SOCK_ERR) { in php_sockop_close()
209 shutdown(sock->socket, SHUT_RD); in php_sockop_close()
218 n = php_pollfd_for_ms(sock->socket, POLLOUT, 500); in php_sockop_close()
221 closesocket(sock->socket); in php_sockop_close()
222 sock->socket = SOCK_ERR; in php_sockop_close()
227 pefree(sock, php_stream_is_persistent(stream)); in php_sockop_close()
235 php_netstream_data_t *sock = (php_netstream_data_t*)stream->abstract; in php_sockop_flush()
236 return fsync(sock->socket); in php_sockop_flush()
246 php_netstream_data_t *sock = (php_netstream_data_t*)stream->abstract; in php_sockop_stat()
248 return zend_fstat(sock->socket, &ssb->sb); in php_sockop_stat()
252 static inline int sock_sendto(php_netstream_data_t *sock, const char *buf, size_t buflen, int flags, in sock_sendto() argument
258 ret = sendto(sock->socket, buf, XP_SOCK_BUF_SIZE(buflen), flags, addr, XP_SOCK_BUF_SIZE(addrlen)); in sock_sendto()
263 …return ((ret = send(sock->socket, buf, buflen > INT_MAX ? INT_MAX : (int)buflen, flags)) == SOCK_C… in sock_sendto()
265 return ((ret = send(sock->socket, buf, buflen, flags)) == SOCK_CONN_ERR) ? -1 : ret; in sock_sendto()
269 static inline int sock_recvfrom(php_netstream_data_t *sock, char *buf, size_t buflen, int flags, in sock_recvfrom() argument
280 ret = recvfrom(sock->socket, buf, XP_SOCK_BUF_SIZE(buflen), flags, (struct sockaddr*)&sa, &sl); in sock_recvfrom()
301 ret = recv(sock->socket, buf, XP_SOCK_BUF_SIZE(buflen), flags); in sock_recvfrom()
311 php_netstream_data_t *sock = (php_netstream_data_t*)stream->abstract; in php_sockop_set_option() local
314 if (!sock) { in php_sockop_set_option()
326 if (sock->timeout.tv_sec == -1) { in php_sockop_set_option()
330 tv = sock->timeout; in php_sockop_set_option()
337 if (sock->socket == -1) { in php_sockop_set_option()
339 } else if (php_pollfd_for(sock->socket, PHP_POLLREADABLE|POLLPRI, &tv) > 0) { in php_sockop_set_option()
347 ret = recv(sock->socket, &buf, sizeof(buf), MSG_PEEK); in php_sockop_set_option()
358 oldmode = sock->is_blocked; in php_sockop_set_option()
359 if (SUCCESS == php_set_sock_blocking(sock->socket, value)) { in php_sockop_set_option()
360 sock->is_blocked = value; in php_sockop_set_option()
366 sock->timeout = *(struct timeval*)ptrparam; in php_sockop_set_option()
367 sock->timeout_event = 0; in php_sockop_set_option()
371 add_assoc_bool((zval *)ptrparam, "timed_out", sock->timeout_event); in php_sockop_set_option()
372 add_assoc_bool((zval *)ptrparam, "blocked", sock->is_blocked); in php_sockop_set_option()
381 xparam->outputs.returncode = (listen(sock->socket, xparam->inputs.backlog) == 0) ? 0: -1; in php_sockop_set_option()
385 xparam->outputs.returncode = php_network_get_sock_name(sock->socket, in php_sockop_set_option()
393 xparam->outputs.returncode = php_network_get_peer_name(sock->socket, in php_sockop_set_option()
405 xparam->outputs.returncode = sock_sendto(sock, in php_sockop_set_option()
426 xparam->outputs.returncode = sock_recvfrom(sock, in php_sockop_set_option()
449 xparam->outputs.returncode = shutdown(sock->socket, shutdown_how[xparam->how]); in php_sockop_set_option()
464 php_netstream_data_t *sock = (php_netstream_data_t*)stream->abstract; in php_sockop_cast() local
466 if (!sock) { in php_sockop_cast()
473 *(FILE**)ret = fdopen(sock->socket, stream->mode); in php_sockop_cast()
483 *(php_socket_t *)ret = sock->socket; in php_sockop_cast()
622 static inline int php_tcp_sockop_bind(php_stream *stream, php_netstream_data_t *sock, in php_tcp_sockop_bind() argument
634sock->socket = socket(PF_UNIX, stream->ops == &php_stream_unix_socket_ops ? SOCK_STREAM : SOCK_DGR… in php_tcp_sockop_bind()
636 if (sock->socket == SOCK_ERR) { in php_tcp_sockop_bind()
647 return bind(sock->socket, (const struct sockaddr *)&unix_addr, in php_tcp_sockop_bind()
687 sock->socket = php_network_bind_socket_to_local_addr(host, portno, in php_tcp_sockop_bind()
698 return sock->socket == -1 ? -1 : 0; in php_tcp_sockop_bind()
701 static inline int php_tcp_sockop_connect(php_stream *stream, php_netstream_data_t *sock, in php_tcp_sockop_connect() argument
715sock->socket = socket(PF_UNIX, stream->ops == &php_stream_unix_socket_ops ? SOCK_STREAM : SOCK_DGR… in php_tcp_sockop_connect()
717 if (sock->socket == SOCK_ERR) { in php_tcp_sockop_connect()
726 ret = php_network_connect_socket(sock->socket, in php_tcp_sockop_connect()
781 sock->socket = php_network_connect_socket_to_host(host, portno, in php_tcp_sockop_connect()
792 ret = sock->socket == -1 ? -1 : 0; in php_tcp_sockop_connect()
814 static inline int php_tcp_sockop_accept(php_stream *stream, php_netstream_data_t *sock, in php_tcp_sockop_accept() argument
829 clisock = php_network_accept_incoming(sock->socket, in php_tcp_sockop_accept()
841 memcpy(clisockdata, sock, sizeof(*clisockdata)); in php_tcp_sockop_accept()
862 php_netstream_data_t *sock = (php_netstream_data_t*)stream->abstract; in php_tcp_sockop_set_option() local
872 xparam->outputs.returncode = php_tcp_sockop_connect(stream, sock, xparam); in php_tcp_sockop_set_option()
876 xparam->outputs.returncode = php_tcp_sockop_bind(stream, sock, xparam); in php_tcp_sockop_set_option()
881 xparam->outputs.returncode = php_tcp_sockop_accept(stream, sock, xparam STREAMS_CC); in php_tcp_sockop_set_option()
899 php_netstream_data_t *sock; in php_stream_generic_socket_factory() local
920 sock = pemalloc(sizeof(php_netstream_data_t), persistent_id ? 1 : 0); in php_stream_generic_socket_factory()
921 memset(sock, 0, sizeof(php_netstream_data_t)); in php_stream_generic_socket_factory()
923 sock->is_blocked = 1; in php_stream_generic_socket_factory()
924 sock->timeout.tv_sec = FG(default_socket_timeout); in php_stream_generic_socket_factory()
925 sock->timeout.tv_usec = 0; in php_stream_generic_socket_factory()
929 sock->socket = -1; in php_stream_generic_socket_factory()
931 stream = php_stream_alloc_rel(ops, sock, persistent_id, "r+"); in php_stream_generic_socket_factory()
934 pefree(sock, persistent_id ? 1 : 0); in php_stream_generic_socket_factory()