summaryrefslogtreecommitdiff
path: root/main/php_network.h
diff options
context:
space:
mode:
authorWez Furlong <wez@php.net>2003-02-28 19:53:21 +0000
committerWez Furlong <wez@php.net>2003-02-28 19:53:21 +0000
commit1b53a2d12e520adec5cbbc60bf8f2b6d8e54eece (patch)
tree9ec880f9d210dc979ef007e1d69c4c53666f8a46 /main/php_network.h
parent14bf872003ff96b60960d5b822a0bb846bff176f (diff)
downloadphp-git-1b53a2d12e520adec5cbbc60bf8f2b6d8e54eece.tar.gz
New user-space functions:
. stream_socket_client() - similar to fsockopen(), but more powerful. . stream_socket_server() - Creates a server socket. . stream_socket_accept() - Accept a client connection. . stream_socket_get_name() - Get local or remote name of socket. Tidy up some leaks and debug printfs. Move more streams functions into streamsfuncs.c and streamsfuncs.h.
Diffstat (limited to 'main/php_network.h')
-rw-r--r--main/php_network.h32
1 files changed, 27 insertions, 5 deletions
diff --git a/main/php_network.h b/main/php_network.h
index f3870d2aa1..3439964353 100644
--- a/main/php_network.h
+++ b/main/php_network.h
@@ -119,12 +119,33 @@ PHPAPI int php_network_connect_socket(int sockfd,
char **error_string,
int *error_code);
-int php_hostconnect(const char *host, unsigned short port, int socktype, struct timeval *timeout TSRMLS_DC);
-PHPAPI int php_connect_nonb(int sockfd, const struct sockaddr *addr, socklen_t addrlen, struct timeval *timeout);
+#define php_connect_nonb(sock, addr, addrlen, timeout) \
+ php_network_connect_socket((sock), (addr), (addrlen), 0, (timeout), NULL, NULL)
-#ifdef PHP_WIN32
-PHPAPI int php_connect_nonb_win32(SOCKET sockfd, const struct sockaddr *addr, socklen_t addrlen, struct timeval *timeout);
-#endif
+PHPAPI int php_network_bind_socket_to_local_addr(const char *host, unsigned port,
+ int socktype, char **error_string, int *error_code
+ TSRMLS_DC);
+
+PHPAPI int php_network_accept_incoming(int srvsock,
+ char **textaddr, long *textaddrlen,
+ struct sockaddr **addr,
+ socklen_t *addrlen,
+ struct timeval *timeout,
+ char **error_string,
+ int *error_code
+ TSRMLS_DC);
+
+PHPAPI int php_network_get_sock_name(int sock,
+ char **textaddr, long *textaddrlen,
+ struct sockaddr **addr,
+ socklen_t *addrlen
+ TSRMLS_DC);
+
+PHPAPI int php_network_get_peer_name(int sock,
+ char **textaddr, long *textaddrlen,
+ struct sockaddr **addr,
+ socklen_t *addrlen
+ TSRMLS_DC);
void php_any_addr(int family, php_sockaddr_storage *addr, unsigned short port);
int php_sockaddr_size(php_sockaddr_storage *addr);
@@ -134,6 +155,7 @@ struct _php_netstream_data_t {
char is_blocked;
struct timeval timeout;
char timeout_event;
+ size_t ownsize;
};
typedef struct _php_netstream_data_t php_netstream_data_t;
extern php_stream_ops php_stream_socket_ops;