Re: Run-time taint support proposal
| From: | (Wietse Venema) | Date: | Fri, 15 Dec 2006 22:19:04 +0000 |
| Subject: | Re: Run-time taint support proposal | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-26985@lists.php.net to get a copy of this message | ||
Ilia Alshanetsky:
> > - Each ZVAL is marked tainted or not tainted (i.e. we don't taint
> > individual characters within substrings). Black and white is all.
> > In some future, someone may want to explore the possibility of
> > more than two shades. But not now.
>
> That means an additional element to a struct that has thousands of
> instances in most scripts, this will be the first overhead caused by
> the memory footprint increase.
There is no need for that.
zvalue_value value; /* value */
zend_uint refcount;
zend_uchar type; /* active type */
! zend_uchar is_ref;
};
--- 289,296 ----
zvalue_value value; /* value */
zend_uint refcount;
zend_uchar type; /* active type */
! zend_uchar is_ref:7;
! zend_uchar taint_flag:1;
};
Perhaps a working implementation will be convincing. I offer to
do the work, other people lose nothing except the possibility that
they will be proven right.
Wietse