summaryrefslogtreecommitdiff
path: root/main/network.c
diff options
context:
space:
mode:
authorWez Furlong <wez@php.net>2004-07-28 23:15:25 +0000
committerWez Furlong <wez@php.net>2004-07-28 23:15:25 +0000
commit637c424d64ab8978bc2a5411d6a0842686e6a63b (patch)
tree7d7b1f53ff2f2619ea8f32d40c01eecc85b16afd /main/network.c
parentb1667b579b69598ef35f75bef3ec0d2b1fffe4b5 (diff)
downloadphp-git-637c424d64ab8978bc2a5411d6a0842686e6a63b.tar.gz
Fix #29431: crash when parsing an invalid network address
Diffstat (limited to 'main/network.c')
-rw-r--r--main/network.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/main/network.c b/main/network.c
index ee8567967f..2bc7c0eb0f 100644
--- a/main/network.c
+++ b/main/network.c
@@ -495,12 +495,15 @@ PHPAPI int php_network_parse_network_address_with_port(const char *addr, long ad
if (*addr == '[') {
colon = memchr(addr + 1, ']', addrlen-1);
if (!colon || colon[1] != ':') {
- return 0;
+ return FAILURE;
}
port = atoi(colon + 2);
addr++;
} else {
colon = memchr(addr, ':', addrlen);
+ if (!colon || colon[1] != ':') {
+ return FAILURE;
+ }
port = atoi(colon + 1);
}