Skip to content

Commit 08f7cff

Browse files
committed
fix leaks and test
1 parent 78b8f38 commit 08f7cff

File tree

2 files changed

+3
-6
lines changed

2 files changed

+3
-6
lines changed

ext/sockets/sockets.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1720,12 +1720,12 @@ PHP_FUNCTION(socket_recvfrom)
17201720
}
17211721

17221722
Z_DELREF(zpayload);
1723+
zend_string_efree(recv_buf);
17231724
zend_update_property(Z_OBJCE(obj), Z_OBJ(obj), ZEND_STRL("socket"), arg1);
17241725
zend_update_property_string(Z_OBJCE(obj), Z_OBJ(obj), ZEND_STRL("macsrc"), ether_ntoa((struct ether_addr *)e->h_source));
17251726
zend_update_property_string(Z_OBJCE(obj), Z_OBJ(obj), ZEND_STRL("macdst"), ether_ntoa((struct ether_addr *)e->h_dest));
17261727
zend_update_property_long(Z_OBJCE(obj), Z_OBJ(obj), ZEND_STRL("ethprotocol"), protocol);
17271728
zend_update_property(Z_OBJCE(obj), Z_OBJ(obj), ZEND_STRL("payload"), &zpayload);
1728-
// TODO fix leaks
17291729

17301730
ZEND_TRY_ASSIGN_REF_VALUE(arg2, &obj);
17311731
ZEND_TRY_ASSIGN_REF_STRING(arg5, ifrname);

ext/sockets/tests/socket_afpacket.phpt

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ Warning: socket_getpeername(): unable to retrieve peer name [95]: %sot supported
5151
int(60)
5252
int(60)
5353
string(2) "lo"
54-
object(SocketEthernetInfo)#3 (4) {
54+
object(SocketEthernetInfo)#3 (%d) {
5555
["socket"]=>
5656
object(Socket)#1 (0) {
5757
}
@@ -63,9 +63,6 @@ object(SocketEthernetInfo)#3 (4) {
6363
string(%d) "%s:%s:%s:%s:%s:%s"
6464
["payload"]=>
6565
array(2) {
66-
["ipsrc"]=>
67-
string(%d) "%d.%d.%d.%d"
68-
["ipdst"]=>
69-
string(%d) "%d.%d.%d.%d"
66+
%a
7067
}
7168
}

0 commit comments

Comments
 (0)