com php-src: list interfaces/adding just "binary" state status.: ext/standard/net.c
| From: | Peter Kokot | Date: | Sat, 11 May 2019 18:29:09 +0000 |
| Subject: | com php-src: list interfaces/adding just "binary" state status.: ext/standard/net.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-106132@lists.php.net to get a copy of this message | ||
Commit: 1f3f54f58625d9a72671f6293ae6f0cb758161a1
Author: David Carlier <devnexen@gmail.com> Sun, 27 Jan 2019 21:59:28 +0000
Committer: Peter Kokot <peterkokot@gmail.com> Sat, 11 May 2019 20:29:09 +0200
Parents: 836bbb4e2cb1b77bb109e140753399356ed7c159
Branches: PHP-7.4 master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=1f3f54f58625d9a72671f6293ae6f0cb758161a1
Log:
list interfaces/adding just "binary" state status.
Changed paths:
M ext/standard/net.c
Diff:
diff --git a/ext/standard/net.c b/ext/standard/net.c
index 3bb3d09..6bec7f0 100644
--- a/ext/standard/net.c
+++ b/ext/standard/net.c
@@ -252,6 +252,8 @@ PHP_FUNCTION(net_get_interfaces) {
}
add_assoc_zval(&iface, "unicast", &unicast);
+ add_assoc_bool(&iface, "up", (p->OperStatus == IfOperStatusUp));
+
add_assoc_zval(return_value, p->AdapterName, &iface);
}
@@ -271,7 +273,7 @@ PHP_FUNCTION(net_get_interfaces) {
array_init(return_value);
for (p = addrs; p; p = p->ifa_next) {
zval *iface = zend_hash_str_find(Z_ARR_P(return_value), p->ifa_name, strlen(p->ifa_name));
- zval *unicast;
+ zval *unicast, *status;
if (!iface) {
zval newif;
@@ -291,6 +293,10 @@ PHP_FUNCTION(net_get_interfaces) {
p->ifa_addr, p->ifa_netmask,
(p->ifa_flags & IFF_BROADCAST) ? p->ifa_broadaddr : NULL,
(p->ifa_flags & IFF_POINTOPOINT) ? p->ifa_dstaddr : NULL);
+ status = zend_hash_str_find(Z_ARR_P(iface), "up", sizeof("up") - 1);
+ if (!status) {
+ add_assoc_bool(iface, "up", ((p->ifa_flags & IFF_UP) != 0));
+ }
}
freeifaddrs(addrs);