{
struct sockaddr_un sock;
int s = socket(AF_UNIX, SOCK_STREAM, 0);
- int len = strlen(PHPDBG_WG(path)) + sizeof(sock.sun_family);
+ size_t len = strlen(PHPDBG_WG(path)) + sizeof(sock.sun_family);
char buf[(1 << 8) + 1];
- int buflen;
+ ssize_t buflen;
sock.sun_family = AF_UNIX;
strcpy(sock.sun_path, PHPDBG_WG(path));
}
char *msg = NULL;
- char msglen[5] = {0};
- phpdbg_webdata_compress(&msg, (int *)msglen);
-
- send(s, msglen, 4, 0);
- send(s, msg, *(int *) msglen, 0);
+ size_t msglen = 0;
+ phpdbg_webdata_compress(&msg, &msglen);
+
+ buf[0] = (msglen >> 0) & 0xff;
+ buf[1] = (msglen >> 8) & 0xff;
+ buf[2] = (msglen >> 16) & 0xff;
+ buf[3] = (msglen >> 24) & 0xff;
+ send(s, buf, 4, 0);
+ send(s, msg, msglen, 0);
while ((buflen = recv(s, buf, sizeof(buf) - 1, 0)) > 0) {
php_write(buf, buflen);
#include "zend.h"
#include "phpdbg.h"
-PHPDBG_API void phpdbg_webdata_compress(char **msg, int *len);
+PHPDBG_API void phpdbg_webdata_compress(char **msg, size_t *len);
#endif /* PHPDBG_WEBDATA_TRANSFER_H */