]> granicus.if.org Git - php/commitdiff
Simplify code and change strchr() to memchr()
authorIlia Alshanetsky <iliaa@php.net>
Sun, 31 Dec 2006 22:47:13 +0000 (22:47 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Sun, 31 Dec 2006 22:47:13 +0000 (22:47 +0000)
ext/filter/logical_filters.c

index c3dfd00db5d9348c26f1209674c1c5edcd3093ca..888ffc14c27a3a185521bbce4b81efb8fd87b2eb 100644 (file)
@@ -593,15 +593,12 @@ void php_filter_validate_ip(PHP_INPUT_FILTER_PARAM_DECL) /* {{{ */
         * allow_ipv4 and allow_ipv6 flags flag are used, then the first dot or
         * colon determine the format */
 
-       char          *str = NULL;
        int            ip[4];
        int            mode;
 
-       str = Z_STRVAL_P(value);
-
-       if (strchr(str, ':')) {
+       if (memchr(Z_STRVAL_P(value), ':', Z_STRLEN_P(value))) {
                mode = FORMAT_IPV6;
-       } else if (strchr(str, '.')) {
+       } else if (memchr(Z_STRVAL_P(value), '.', Z_STRLEN_P(value))) {
                mode = FORMAT_IPV4;
        } else {
                RETURN_VALIDATION_FAILED
@@ -617,7 +614,7 @@ void php_filter_validate_ip(PHP_INPUT_FILTER_PARAM_DECL) /* {{{ */
 
        switch (mode) {
                case FORMAT_IPV4:
-                       if (!_php_filter_validate_ipv4(str, Z_STRLEN_P(value), ip)) {
+                       if (!_php_filter_validate_ipv4(Z_STRVAL_P(value), Z_STRLEN_P(value), ip)) {
                                RETURN_VALIDATION_FAILED
                        }
 
@@ -647,7 +644,7 @@ void php_filter_validate_ip(PHP_INPUT_FILTER_PARAM_DECL) /* {{{ */
                case FORMAT_IPV6:
                        {
                                int res = 0;
-                               res = _php_filter_validate_ipv6(str, Z_STRLEN_P(value) TSRMLS_CC);
+                               res = _php_filter_validate_ipv6(Z_STRVAL_P(value), Z_STRLEN_P(value) TSRMLS_CC);
                                if (res < 1) {
                                        RETURN_VALIDATION_FAILED
                                }