PHP  
 PHP: Test and Code Coverage Analysis
downloads | QA | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
 

LTP GCOV extension - code coverage report
Current view: directory - standard - php_var.h
Test: PHP Code Coverage
Date: 2009-11-19 Instrumented lines: 14
Code covered: 78.6 % Executed lines: 11
Legend: not executed executed

       1                 : /* 
       2                 :    +----------------------------------------------------------------------+
       3                 :    | PHP Version 5                                                        |
       4                 :    +----------------------------------------------------------------------+
       5                 :    | Copyright (c) 1997-2009 The PHP Group                                |
       6                 :    +----------------------------------------------------------------------+
       7                 :    | This source file is subject to version 3.01 of the PHP license,      |
       8                 :    | that is bundled with this package in the file LICENSE, and is        |
       9                 :    | available through the world-wide-web at the following url:           |
      10                 :    | http://www.php.net/license/3_01.txt                                  |
      11                 :    | If you did not receive a copy of the PHP license and are unable to   |
      12                 :    | obtain it through the world-wide-web, please send a note to          |
      13                 :    | license@php.net so we can mail you a copy immediately.               |
      14                 :    +----------------------------------------------------------------------+
      15                 :    | Author: Jani Lehtimäki <jkl@njet.net>                                |
      16                 :    +----------------------------------------------------------------------+
      17                 : */
      18                 : 
      19                 : /* $Id: php_var.h 272374 2008-12-31 11:17:49Z sebastian $ */
      20                 : 
      21                 : #ifndef PHP_VAR_H
      22                 : #define PHP_VAR_H
      23                 : 
      24                 : #include "ext/standard/php_smart_str_public.h"
      25                 : 
      26                 : PHP_FUNCTION(var_dump);
      27                 : PHP_FUNCTION(var_export);
      28                 : PHP_FUNCTION(debug_zval_dump);
      29                 : PHP_FUNCTION(serialize);
      30                 : PHP_FUNCTION(unserialize);
      31                 : PHP_FUNCTION(memory_get_usage);
      32                 : PHP_FUNCTION(memory_get_peak_usage);
      33                 : 
      34                 : PHPAPI void php_var_dump(zval **struc, int level TSRMLS_DC);
      35                 : PHPAPI void php_var_export(zval **struc, int level TSRMLS_DC);
      36                 : PHPAPI void php_debug_zval_dump(zval **struc, int level TSRMLS_DC);
      37                 : 
      38                 : /* typdef HashTable php_serialize_data_t; */
      39                 : #define php_serialize_data_t HashTable
      40                 : 
      41                 : struct php_unserialize_data {
      42                 :         void *first;
      43                 :         void *first_dtor;
      44                 : };
      45                 : 
      46                 : typedef struct php_unserialize_data php_unserialize_data_t;
      47                 : 
      48                 : PHPAPI void php_var_serialize(smart_str *buf, zval **struc, php_serialize_data_t *var_hash TSRMLS_DC);
      49                 : PHPAPI int php_var_unserialize(zval **rval, const unsigned char **p, const unsigned char *max, php_unserialize_data_t *var_hash TSRMLS_DC);
      50                 : 
      51                 : #define PHP_VAR_SERIALIZE_INIT(var_hash) \
      52                 :    zend_hash_init(&(var_hash), 10, NULL, NULL, 0)
      53                 : #define PHP_VAR_SERIALIZE_DESTROY(var_hash) \
      54                 :    zend_hash_destroy(&(var_hash))
      55                 : 
      56                 : #define PHP_VAR_UNSERIALIZE_INIT(var_hash) \
      57                 :         (var_hash).first = 0; \
      58                 :         (var_hash).first_dtor = 0
      59                 : #define PHP_VAR_UNSERIALIZE_DESTROY(var_hash) \
      60                 :         var_destroy(&(var_hash))
      61                 : 
      62                 : PHPAPI void var_replace(php_unserialize_data_t *var_hash, zval *ozval, zval **nzval);
      63                 : PHPAPI void var_destroy(php_unserialize_data_t *var_hash);
      64                 : 
      65                 : #define PHP_VAR_UNSERIALIZE_ZVAL_CHANGED(var_hash, ozval, nzval) \
      66                 :         var_replace((var_hash), (ozval), &(nzval))
      67                 :         
      68                 : PHPAPI zend_class_entry *php_create_empty_class(char *class_name, int len);
      69                 : 
      70                 : static inline int php_varname_check(char *name, int name_len, zend_bool silent TSRMLS_DC) /* {{{ */
      71              85 : {
      72              85 :     if (name_len == sizeof("GLOBALS") && !memcmp(name, "GLOBALS", sizeof("GLOBALS"))) {
      73               1 :                 if (!silent) {
      74               1 :                         php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempted GLOBALS variable overwrite");
      75                 :                 }
      76               1 :         return FAILURE;
      77              84 :     } else if (name[0] == '_' &&
      78                 :             (
      79                 :              (name_len == sizeof("_GET") && !memcmp(name, "_GET", sizeof("_GET"))) ||
      80                 :              (name_len == sizeof("_POST") && !memcmp(name, "_POST", sizeof("_POST"))) ||
      81                 :              (name_len == sizeof("_COOKIE") && !memcmp(name, "_COOKIE", sizeof("_COOKIE"))) ||
      82                 :              (name_len == sizeof("_ENV") && !memcmp(name, "_ENV", sizeof("_ENV"))) ||
      83                 :              (name_len == sizeof("_SERVER") && !memcmp(name, "_SERVER", sizeof("_SERVER"))) ||
      84                 :              (name_len == sizeof("_SESSION") && !memcmp(name, "_SESSION", sizeof("_SESSION"))) ||
      85                 :              (name_len == sizeof("_FILES") && !memcmp(name, "_FILES", sizeof("_FILES"))) ||
      86                 :              (name_len == sizeof("_REQUEST") && !memcmp(name, "_REQUEST", sizeof("_REQUEST")))
      87                 :             )
      88                 :             ) {
      89              15 :                 if (!silent) {
      90              15 :                         php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempted super-global (%s) variable overwrite", name);
      91                 :                 }
      92              15 :         return FAILURE;
      93              69 :     } else if (name[0] == 'H' &&
      94                 :             (
      95                 :              (name_len == sizeof("HTTP_POST_VARS") && !memcmp(name, "HTTP_POST_VARS", sizeof("HTTP_POST_VARS"))) ||
      96                 :              (name_len == sizeof("HTTP_GET_VARS") && !memcmp(name, "HTTP_GET_VARS", sizeof("HTTP_GET_VARS"))) ||
      97                 :              (name_len == sizeof("HTTP_COOKIE_VARS") && !memcmp(name, "HTTP_COOKIE_VARS", sizeof("HTTP_COOKIE_VARS"))) ||
      98                 :              (name_len == sizeof("HTTP_ENV_VARS") && !memcmp(name, "HTTP_ENV_VARS", sizeof("HTTP_ENV_VARS"))) ||
      99                 :              (name_len == sizeof("HTTP_SERVER_VARS") && !memcmp(name, "HTTP_SERVER_VARS", sizeof("HTTP_SERVER_VARS"))) ||
     100                 :              (name_len == sizeof("HTTP_SESSION_VARS") && !memcmp(name, "HTTP_SESSION_VARS", sizeof("HTTP_SESSION_VARS"))) ||
     101                 :              (name_len == sizeof("HTTP_RAW_POST_DATA") && !memcmp(name, "HTTP_RAW_POST_DATA", sizeof("HTTP_RAW_POST_DATA"))) ||
     102                 :              (name_len == sizeof("HTTP_POST_FILES") && !memcmp(name, "HTTP_POST_FILES", sizeof("HTTP_POST_FILES")))
     103                 :             )
     104                 :             ) {
     105               0 :                 if (!silent) {
     106               0 :                         php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempted long input array (%s) overwrite", name);
     107                 :                 }
     108               0 :         return FAILURE;
     109                 :     }
     110              69 :         return SUCCESS;
     111                 : }
     112                 : /* }}} */
     113                 : 
     114                 : #endif /* PHP_VAR_H */

Generated by: LTP GCOV extension version 1.5

Generated at Thu, 19 Nov 2009 08:20:22 +0000 (5 days ago)

Copyright © 2005-2009 The PHP Group
All rights reserved.