luk Tue Feb 26 17:35:21 2002 EDT
Added files:
/phpdoc/cs/features file-upload.xml safe-mode.xml
Log:
Index: phpdoc/cs/features/file-upload.xml
+++ phpdoc/cs/features/file-upload.xml
<?xml version="1.0" encoding="iso-8859-2"?>
<chapter id="features.file-upload">
<title>Zpracov�n� uploadu soubor�</title>
<sect1 id="features.file-upload.post-method">
<title>Uploading metodou POST</title>
<simpara>
PHP umo��uje zpracov�n� uploadu soubor� z jak�hokoli prohl��e�e
vyhovuj�c�ho RFC-1867 (co� zahrnuje mj. Netscape Navigator 3 a pozd�j��,
Microsoft Internet Explorer 3 se z�platou od Microsoftu, nebo pozd�j��
bez z�platy). Tato schopnost umo��uje lidem uploadovat textov� i
bin�rn� soubory. S autentizac� poskytovanou PHP a s funkcemi pro manipulaci
se soubory m�te plnou kontrolu nad t�m, kdo sm� uploadovat a co se m�
ud�lat s uploadovan�m souborem.
</simpara>
<para>
Nezapome�te, �e PHP podporuje tak� uploady metodou PUT tak, jak se pou��v�
v Netscape Composeru a v editoru Amaya od W3C. Pro bli��� detaily viz
<link linkend="features.file-upload.put-method">Podpora metody PUT</link>.
</para>
<para>
Obrazovka pro upload souboru m��e b�t tvo�ena speci�ln�m formul��em, kter�
vypad� podobn� jako tento:
<example>
<title>Formul�� pro upload souboru</title>
<programlisting role="html">
<![CDATA[
<form enctype="multipart/form-data" action="_URL_" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="1000">
Send this file: <input name="userfile" type="file">
<input type="submit" value="Send File">
</form>
]]>
</programlisting>
</example>
_URL_ by m�lo ozna�ovat PHP soubor. Skryt� pole MAX_FILE_SIZE mus�
p�edch�zet pole pro vlo�en� souboru a jeho hodnota specifikuje maxim�ln�
akceptovanou velikost souboru. Hodnota je v bytech.
<warning>
<para>
Hodnota MAX_FILE_SIZE je z hlediska prohl��e�e pouze informativn�.
Je snadn� ji obej�t. Tak�e nepo��tejte s t�m, �e prohl��e� se bude
chovat tak, jak si p�ejete. Nastaven� maxim�ln� velikosti v PHP v�ak
samoz�ejm� nem��e b�t obelst�no.
</para>
</warning>
</para>
<para>
Prom�nn� definovan� pro uploadovan� soubory se li�� v z�vislosti na
verzi a konfiguraci PHP. Pokud je aktivn� volba
<link linkend="ini.track-vars">track_vars</link>, bude inicializov�no pole
$HTTP_POST_FILES/$_FILES. Kone�n�, souvisej�c� prom�nn� mohou b�t
inicializov�ny jako glob�ln�, pokud je zapnuta volba
<link linkend="ini.register-globals">register_globals</link>.
Ov�em pou��v�n� glob�ln�ch prom�nn�ch nen� doporu�eno.
Po �sp�n�m uploadu budou v c�lov�m skriptu definov�ny n�sleduj�c�
prom�nn�:
</para>
<note>
<para>
<link linkend="ini.track-vars">track_vars</link> je od PHP 4.0.3
v�dy zapnuto. U PHP 4.1.0 a pozd�j��ch m��e b�t pou�ito $_FILES
nam�sto <varname>$HTTP_POST_FILES</varname>. <varname>$_FILES</varname>
je v�dy glob�ln� prom�nn�, tak�e by se nem�la pou��vat specifikace
<literal>global</literal> pro prom�nnou $_FILES.
</para>
</note>
<para>
<varname>$HTTP_POST_FILES</varname>/<varname>$_FILES</varname>
obsahuje informace o uploadovan�m souboru.
</para>
<para>
Obsah <varname>$HTTP_POST_FILES</varname> je takov�to (uv�domte si, �e
se p�edpokl�d� pou�it� n�zvu uploadovan�ho souboru 'userfile' tak,
jako v p��kladu v��e):
<variablelist>
<varlistentry>
<term><varname>$HTTP_POST_FILES['userfile']['name']</varname></term>
<listitem>
<para>
Origin�ln� n�zev souboru na klientsk�m po��ta�i.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>$HTTP_POST_FILES['userfile']['type']</varname></term>
<listitem>
<para>
MIME typ souboru, pokud prohl��e� tuto informaci poskytuje
(nap�. <literal>"image/gif"</literal>).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>$HTTP_POST_FILES['userfile']['size']</varname></term>
<listitem>
<para>
Velikost uploadovan�ho souboru v bytech.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>$HTTP_POST_FILES['userfile']['tmp_name']</varname></term>
<listitem>
<para>
Do�asn� n�zev souboru, pod n�m� byl uploadovan� soubor ulo�en na server.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
<note>
<para>
PHP 4.1.0 a pozd�j�� podporuj� zkr�cen� n�zev prom�nn�
<varname>$_FILES</varname>. PHP 3 nepodporuje
<varname>$HTTP_POST_FILES</varname>.
</para>
</note>
<para>
Obsah prom�nn�ch v situaci, kdy je prom�nn�
<link linkend="ini.register-globals">register_globals</link>
zapnuta nastaven�m v souboru <filename>php.ini</filename> (uv�domte si, �e
se p�edpokl�d� pou�it� n�zvu uploadovan�ho souboru 'userfile' tak,
jako v p��kladu v��e):
<itemizedlist>
<listitem>
<simpara>
<varname>$userfile</varname> - Do�asn� n�zev souboru, pod kter�m byl
uploadovan� soubor ulo�en na server.
</simpara>
</listitem>
<listitem>
<simpara>
<varname>$userfile_name</varname> - Origin�ln� n�zev souboru nebo cesta
na odes�laj�c�m syst�mu.
</simpara>
</listitem>
<listitem>
<simpara>
<varname>$userfile_size</varname> - Velikost uploadovan�ho souboru
v bytech.
</simpara>
</listitem>
<listitem>
<simpara>
<varname>$userfile_type</varname> - MIME typ souboru, pokud prohl��e�
tuto informaci poskytuje (nap�. "image/gif").
</simpara>
</listitem>
</itemizedlist>
Uv�domte si, �e prom�nn� "<varname>$userfile</varname>" ve skute�nosti
p�edstavuje n�zev pole <input> se specifikac� type="file" ve
formul��i. Pro v��e uveden� p��klad jsme zvolili n�zev "userfile".
</para>
<note>
<para>
Nastaven� <literal>register_globals = On</literal> se nedoporu�uje z
bezpe�nostn�ch a v�konnostn�ch d�vod�.
</para>
</note>
<para>
Soubory se implicitn� ukl�daj� do syst�mov�ho adres��e pro do�asn�
soubory, pokud nebylo direktivou
<link linkend="ini.upload-tmp-dir">upload_tmp_dir</link> v souboru
<filename>php.ini</filename> stanoveno jinak. Syst�mov� adres�� pro
do�asn� soubory m��e b�t zm�n�n nastaven� prom�nn� prost�ed�
<envar>TMPDIR</envar> v prost�ed�, kde PHP b��. Nastaven� za pou�it�
<function>putenv</function> z PHP skriptu nebude fungovat. Tato
prom�nn� prost�ed� m��e b�t tak� pou�ita k uji�t�n� se, �e v�echny
ostatn� operace pracuj� s uploadovan�mi soubory.
<example>
<title>Ov��ov�n� uploadu souboru</title>
<para>
N�sleduj�c� p��klady jsou pro verze PHP 4 vy��� ne� PHP 4.0.2.
(viz funkce
<function>is_uploaded_file</function> a
<function>move_uploaded_file</function>).
</para>
<programlisting role="php">
<![CDATA[
<?php
// V PHP 4.1.0 a pozd�j��ch by m�lo b�t pou�ito $_FILES nam�sto $HTTP_POST_FILES.
if (is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'])) {
copy($HTTP_POST_FILES['userfile']['tmp_name'], "/place/to/put/uploaded/file");
} else {
echo "Possible file upload attack. Filename: " .
$HTTP_POST_FILES['userfile']['name'];
}
/* ...or... */
move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'],
"/place/to/put/uploaded/file");
?>
]]>
</programlisting>
</example>
</para>
<simpara>
PHP skript, kter� p�ij�m� uploadovan� soubory, by m�l implementovat
ve�kerou logiku pro stanoven�, co by se m�lo ud�lat s uploadovan�m
souborem. M��ete nap�. pou��t prom�nnou
<varname>$HTTP_POST_FILES['userfile']['size']</varname> pro zahozen�
soubor�, kter� jsou p��li� mal� nebo velk�. Mohli byste pou��t tak�
prom�nnou <varname>$HTTP_POST_FILES['userfile']['type']</varname>
pro filtraci soubor� podle MIME datov�ho typu. Bez ohledu na �e�en�,
soubor by m�l b�t smaz�n nebo p�esunut jinam.
</simpara>
<simpara>
Soubor bude automaticky smaz�n z do�asn�ho adres��e na konci skriptu,
pokud nebyl p�esunut jinam nebo p�ejmenov�n.
</simpara>
</sect1>
<sect1 id="features.file-upload.common-pitfalls">
<title>�ast� �skal�</title>
<simpara>
<literal>MAX_FILE_SIZE</literal> nem��e specifikovat velikost souboru
v�t�� ne� je ta, kter� byla nastavena pomoc�
<link linkend="ini.upload-max-filesize">upload_max_filesize</link>
v konfiguraci PHP. Implicitn� jsou to 2 MB.
</simpara>
<simpara>
Pokud je zapnut limit pam�ti, m��e b�t pot�eba v�t�� hodnota
<link linkend="ini.memory-limit">memory_limit</link>. Ujist�te se, �e
je hodnota <link linkend="ini.memory-limit">memory_limit</link>
dostate�n� velk�.
</simpara>
<!-- FIXME: max_execution_time INI -->
<simpara>
Pokud je nastaven� hodnota <literal>max_execution_time</literal> p��li�
mal�, doba prov�d�n� skriptu ji m��e p�ekro�it. Ujist�te se, �e je
hodnota <literal>max_execution_time</literal> dostate�n� velk�.
</simpara>
<simpara>
Pokud je nastaven� hodnota <literal>post_max_size</literal> p��li� mal�,
nem��e b�t uploadov�n v�t�� soubor. Ujist�te se, �e je hodnota
<literal>post_max_size</literal> dostate�n� velk�.
</simpara>
<simpara>
Neov��ov�n�, se kter�m souborem se pracuje, m��e znamenat, �e se u�ivatel�
mohou dostat k citliv�m informac�m v jin�ch adres���ch.
</simpara>
<simpara>
Uv�domte si pros�m, �e server CERN httpd odstra�uje v�echno, co po��naje
prvn� b�lou mezerou (whitespace) v MIME hlavi�ce Content-Type
obdr�� od klienta. Za existence tohoto jevu nebude CERN httpd podporovat
uploading soubor�.
</simpara>
</sect1>
<sect1 id="features.file-upload.multiple">
<title>Uploading v�ce soubor�</title>
<simpara>
V�ce soubor� m��e b�t uploadov�n� za pou�it� r�zn�ch n�zv�
<literal>name</literal> pro souborov� pole <literal>input</literal>.
</simpara>
<simpara>
Je tak� mo�n� uploadovat v�ce soubor� sou�asn� a nechat informace
automaticky zorganizovat v pol�ch. V takov�m p��pad� je t�eba
pou��t stejnou syntaxi v HTML formul��i jako pro v�cen�sobn� v�b�ry
a za�krt�vac� pol��ka (checkboxy).
</simpara>
<note>
<para>
Podpora pro upload v�ce soubor� byla p�id�na ve verzi 3.0.10.
</para>
</note>
<para>
<example>
<title>Uploading v�ce soubor�</title>
<programlisting role="html">
<![CDATA[
<form action="file-upload.php" method="post" enctype="multipart/form-data">
Send these files:<br>
<input name="userfile[]" type="file"><br>
<input name="userfile[]" type="file"><br>
<input type="submit" value="Send files">
</form>
]]>
</programlisting>
</example>
</para>
<simpara>
Pokud je v��e uveden� formul�� odesl�n, pole
<varname>$HTTP_POST_FILES['userfile']</varname>,
<varname>$HTTP_POST_FILES['userfile']['name']</varname>, a
<varname>$HTTP_POST_FILES['userfile']['size']</varname> budou
inicializov�na (jak $_FILES v PHP 4.1.0 a pozd�j��m, tak
$HTTP_POST_VARS v PHP 3. Pokud je nastaven�
<literal>register_globals</literal> aktivn� glob�ln� prom�nn� pro
uploadovan� soubory jsou tak� inicializov�ny). Ka�d� z nich bude
��seln� indexovan� pole odpov�daj�c�ch hodnot pro odeslan� soubory.
</simpara>
<simpara>
Kup��kladu p�edpokl�dejme, �e se pos�laj� soubory s n�zvy
<filename>/home/test/review.html</filename> a
<filename>/home/test/xwp.out</filename>. V tom p��pad� by
<varname>$HTTP_POST_FILES['userfile']['name'][0]</varname> obsahovalo
hodnotu <filename>review.html</filename> a
<varname>$HTTP_POST_FILES['userfile']['name'][1]</varname> hodnotu
<filename>xwp.out</filename>. Podobn�
<varname>$HTTP_POST_FILES['userfile']['size'][0]</varname> by obsahovalo
velikost <filename>review.html</filename> atd.
</simpara>
<simpara>
<varname>$HTTP_POST_FILES['userfile']['name'][0]</varname>,
<varname>$HTTP_POST_FILES['userfile']['tmp_name'][0]</varname>,
<varname>$HTTP_POST_FILES['userfile']['size'][0]</varname> a
<varname>$HTTP_POST_FILES['userfile']['type'][0]</varname> budou
rovn� nastaveny.
</simpara>
</sect1>
<sect1 id="features.file-upload.put-method">
<title>Podpora metody PUT</title>
<para>
PHP poskytuje podporu pro HTTP PUT metodu pou��vanou klienty jako
Netscape Composer nebo W3C Amaya. Po�adavky s metodou PUT jsou mnohem
jednodu��� ne� upload soubor� a vypadaj� p�ibli�n� takto:
<informalexample>
<programlisting>
PUT /path/filename.html HTTP/1.1
</programlisting>
</informalexample>
</para>
<para>
Toto by norm�ln� znamenalo, �e by cht�l klient ulo�it obsah, kter�
n�sleduje za n�zvem /path/filename.html, do sv�ho webov�ho stromu.
To samoz�ejm� nen� dobr� n�pad, aby Apache nebo PHP automaticky
nechal kohokoli p�epsat jak�koli soubory ve strom�. Tak�e,
pro zpracov�n� takov�ho po�adavku je t�eba nejd��v �ici va�emu
WWW serveru, �e chcete po�adavek zpracov�vat konkr�tn�m PHP skriptem.
U serveru Apache se to provede direktivou
<emphasis>Script</emphasis>. M��e b�t um�st�na kdekoli v konfigura�n�m
souboru Apache. �ast�mi m�sty jsou bloky <Directory> a
<Virtualhost>. Pou�ije se k tomu ��dek podobn� tomuto:
<informalexample>
<programlisting>
Skript PUT /put.php
</programlisting>
</informalexample>
</para>
<simpara>
Toto �ekne serveru Apache, aby v�echny PUT po�adavky na n�jak� URI
vyhovuj�c� kontextu pos�lal skriptu put.php. To pochopiteln� p�edpokl�d�,
�e m�te povoleno PHP pro p��ponu .php a PHP je aktivn�.
</simpara>
<simpara>
V souboru put.php byste potom mohli napsat n�co jako:
</simpara>
<para>
<informalexample><programlisting role="php">
<![CDATA[
<?php copy($PHP_UPLOADED_FILE_NAME,$DOCUMENT_ROOT.$REQUEST_URI); ?>
]]>
</programlisting></informalexample>
</para>
<simpara>
Toto by m�lo zkop�rovat soubor na m�sto po�adovan� vzd�len�m klientem.
Pravd�podobn� byste cht�li prov�st n�jak� ov��en� a/nebo autentizace
u�ivatele p�ed proveden�m tohoto zkop�rov�n�. Jedin�m pou�iteln�m trikem
je, �e PHP ulo�� p�enesen� soubor do do�asn�ho adres��e podobn�, jako
p�i pou�it�
<link linkend="features.file-upload.post-method">metody POST</link>.
A� skript skon��, do�asn� soubor bude odstran�n. Tak�e v� PHP skipt
pro zpracov�n� PUT po�adavk� mus� soubor zkop�rovat jinam. N�zev souboru
v do�asn�m um�st�n� je ulo�en v prom�nn� $PHP_PUT_FILENAME a po�adovan�
n�zev c�lov�ho souboru v prom�nn� $REQUEST_URI (m��e se li�it u server�
jin�ch ne� Apache). Toto c�lov� jm�no je to jedin�, co klient
specifikoval. Nemus�te ho poslechnout. Mohli byste, nap��klad, kop�rovat
v�echny uploadovan� soubory do speci�ln�ho uploadov�ho adres��e.
</simpara>
</sect1>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
Index: phpdoc/cs/features/safe-mode.xml
+++ phpdoc/cs/features/safe-mode.xml
<?xml version="1.0" encoding="iso-8859-2"?>
<chapter id="features.safe-mode">
<title>Bezpe�n� re�im</title>
<para>
Bezpe�n� re�im PHP je pokus o �e�en� bezpe�nosti sd�len�ch server�.
Je architektur�ln� nekorektn� pokou�et se �e�it tento probl�m na
�rovni PHP, ale proto�e �e�en� na �rovni webovsk�ho serveru a opera�n�ho
syst�mu nejsou p��li� realistick�, mnoho lid�, zvla�t� ISP, pou��v�
nyn� bezpe�n� re�im.
</para>
<para>
Konfigura�n� direktivy, kter� ovl�daj� bezpe�n� re�im:
<programlisting role="ini">
<![CDATA[
safe_mode = Off
open_basedir =
safe_mode_exec_dir =
safe_mode_allowed_env_vars = PHP_
safe_mode_protected_env_vars = LD_LIBRARY_PATH
disable_functions =
]]>
</programlisting>
</para>
<para>
Pokud je <link linkend="ini.safe-mode">safe_mode</link> zapnut�, PHP
kontroluje, je-li vlastn�k b��c�ho skriptu vlastn�kem souboru, s n�m�
se m� manipulovat. Nap��klad:
<programlisting role="ls">
<![CDATA[
-rw-rw-r-- 1 rasmus rasmus 33 Jul 1 19:20 script.php
-rw-r--r-- 1 root root 1116 May 26 18:01 /etc/passwd
]]>
</programlisting>
Spu�t�n� skriptu script.php
<programlisting role="php">
<![CDATA[
<?php
readfile('/etc/passwd');
?>
]]>
</programlisting>
bude m�t v bezpe�n�m re�imu za v�sledek tuto chybu:
<screen>
<![CDATA[
Warning: SAFE MODE Restriction in effect. The script whose uid is 500 is not
allowed to access /etc/passwd owned by uid 0 in /docroot/script.php on line 2
]]>
</screen>
</para>
<para>
Pokud nam�sto <link linkend="ini.safe-mode">safe_mode</link> nastav�te
adres�� <link linkend="ini.open-basedir">open_basedir</link>, potom
v�echny operace se soubory budou omezeny pod specifikovan� adres��.
Nap��klad (p��klad Apache httpd.conf):
<programlisting role="ini">
<![CDATA[
<Directory /docroot>
php_admin_value open_basedir /docroot
</Directory>
]]>
</programlisting>
Kdy� spust�te tent�� soubor script.php s timto nastaven�m
<link linkend="ini.open-basedir">open_basedir</link>, dostanete tento
v�sledek:
<screen>
<![CDATA[
Warning: open_basedir restriction in effect. File is in wrong directory in
/docroot/script.php on line 2
]]>
</screen>
</para>
<para>
M��ete tak� vypnout jednotliv� funkce. Pokud p�id�me toto do souboru
php.ini:
<programlisting role="ini">
<![CDATA[
disable_functions readfile,system
]]>
</programlisting>
z�sk�me takov�to v�stup:
<screen>
<![CDATA[
Warning: readfile() has been disabled for security reasons in
/docroot/script.php on line 2
]]>
</screen>
</para>
<sect1 id="features.safe-mode.functions">
<title>Funkce omezen�/deaktivovan� v bezpe�n�m re�imu</title>
<para>
Toto je pravd�podobn� ne�pln� a mo�n� nespr�vn� p�ehled funkc�
omezen�ch v
<link linkend="features.safe-mode">bezpe�n�m re�imu</link>.
<!-- TODO: add ¬e.sm.*; to the functions mentioned here.
That entity should link to this section -->
<table>
<title>Funkce omezen� v bezpe�n�m re�imu</title>
<tgroup cols="2">
<thead>
<row>
<entry>Funkce</entry>
<entry>Omezen�</entry>
</row>
</thead>
<tbody>
<row>
<entry><function>dbmopen</function></entry>
<entry>&sm.uidcheck;</entry>
</row>
<row>
<entry><function>dbase_open</function></entry>
<entry>&sm.uidcheck;</entry>
</row>
<row>
<entry><function>filepro</function></entry>
<entry>&sm.uidcheck;</entry>
</row>
<row>
<entry><function>filepro_rowcount</function></entry>
<entry>&sm.uidcheck;</entry>
</row>
<row>
<entry><function>filepro_retrieve</function></entry>
<entry>&sm.uidcheck;</entry>
</row>
<row>
<entry><function>ifx_*</function></entry>
<entry>sql_safe_mode restrictions, (!= safe mode)</entry>
<!-- TODO: more info on sql-safe-mode -->
</row>
<row>
<entry><function>ingres_*</function></entry>
<entry>sql_safe_mode restrictions, (!= safe mode)</entry>
<!-- TODO: more info on sql-safe-mode -->
</row>
<row>
<entry><function>mysql_*</function></entry>
<entry>sql_safe_mode restrictions, (!= safe mode)</entry>
<!-- TODO: more info on sql-safe-mode -->
</row>
<row>
<entry><function>pg_loimport</function></entry>
<entry>&sm.uidcheck;</entry>
<!-- source TODO: there is no PHP-warning for that safe-mode-restriction -->
</row>
<row>
<entry><function>posix_mkfifo</function></entry>
<entry>&sm.uidcheck.dir;</entry>
</row>
<row>
<entry><function>putenv</function></entry>
<entry>Obeys the safe_mode_protected_env_vars and
safe_mode_allowed_env_vars ini-directives. Viz tak� dokumentaci
<function>putenv</function></entry>
<!-- TODO: document those directives in chapters/config.xml -->
</row>
<row>
<entry><function>move_uploaded_file</function></entry>
<entry>&sm.uidcheck; <!-- TODO: check this --></entry>
</row>
<!-- TODO: from here on, add warning to the function itself -->
<row>
<entry><function>chdir</function></entry>
<entry>&sm.uidcheck.dir;</entry>
</row>
<row>
<entry><function>dl</function></entry>
<entry>&sm.disabled;</entry>
</row>
<row>
<entry><link linkend="language.operators.execution">backtick
oper�tor</link></entry>
<entry>&sm.disabled;</entry>
</row>
<row>
<entry><function>shell_exec</function> (funk�n� ekvivalent backticks)</entry>
<entry>&sm.disabled;</entry>
</row>
<row>
<entry><function>exec</function></entry>
<entry>M��ete spou�t�t programy pouze uvnit� adres��e <link
linkend="ini.safe-mode-exec-dir">safe_mode_exec_dir</link>.
Z praktick�ch d�vod� nen� moment�ln� mo�n� m�t v cest� k souboru
s programem komponenty <literal>..</literal>.</entry>
</row>
<row>
<entry><function>system</function></entry>
<entry>M��ete spou�t�t programy pouze uvnit� adres��e <link
linkend="ini.safe-mode-exec-dir">safe_mode_exec_dir</link>.
Z praktick�ch d�vod� nen� moment�ln� mo�n� m�t v cest� k souboru
s programem komponenty <literal>..</literal>.</entry>
</row>
<row>
<entry><function>passthru</function></entry>
<entry>M��ete spou�t�t programy pouze uvnit� adres��e <link
linkend="ini.safe-mode-exec-dir">safe_mode_exec_dir</link>.
Z praktick�ch d�vod� nen� moment�ln� mo�n� m�t v cest� k souboru
s programem komponenty <literal>..</literal>.</entry>
</row>
<row>
<entry><function>popen</function></entry>
<entry>M��ete spou�t�t programy pouze uvnit� adres��e <link
linkend="ini.safe-mode-exec-dir">safe_mode_exec_dir</link>.
Z praktick�ch d�vod� nen� moment�ln� mo�n� m�t v cest� k souboru
s programem komponenty <literal>..</literal>.</entry>
<!-- TODO: not sure. popen uses a completely different implementation
Don't know why, don't know whether it's behaving the same -->
</row>
<row>
<entry><function>mkdir</function></entry>
<entry>&sm.uidcheck.dir;</entry>
</row>
<row>
<entry><function>rmdir</function></entry>
<entry>&sm.uidcheck;</entry>
</row>
<row>
<entry><function>rename</function></entry>
<entry>&sm.uidcheck; &sm.uidcheck.dir;<!-- on the old name only, it seems. Is
rename preventing moving files? --></entry>
</row>
<row>
<entry><function>unlink</function></entry>
<entry>&sm.uidcheck; &sm.uidcheck.dir;</entry>
</row>
<row>
<entry><function>copy</function></entry>
<entry>&sm.uidcheck; &sm.uidcheck.dir; (pro
<parameter>source</parameter> a
<parameter>target</parameter>) </entry>
</row>
<row>
<entry><function>chgrp</function></entry>
<entry>&sm.uidcheck;</entry>
</row>
<row>
<entry><function>chown</function></entry>
<entry>&sm.uidcheck;</entry>
</row>
<row>
<entry><function>chmod</function></entry>
<entry>&sm.uidcheck; Nav�c nem��ete nastavovat
SUID, SGID a sticky bit</entry>
</row>
<row>
<entry><function>touch</function></entry>
<entry>&sm.uidcheck; &sm.uidcheck.dir;</entry>
</row>
<row>
<entry><function>symlink</function></entry>
<entry>&sm.uidcheck; &sm.uidcheck.dir; (pozn.: testov�n je pouze
c�l)</entry>
</row>
<row>
<entry><function>link</function></entry>
<entry>&sm.uidcheck; &sm.uidcheck.dir; (pozn.: testov�n je pouze
c�l)</entry>
</row>
<row>
<entry><function>getallheaders</function></entry>
<entry>V bezpe�n�m re�imu nebudou hlavi�ky za��naj�c� 'authorization'
(bez ohledu na velikost p�smen) vraceny. Varov�n�: toto nefunguje
s aol-server implementac� <function>getallheaders</function>!</entry>
</row>
<row>
<entry>Jak�koli funkce kter� pou��vaj�
<filename>php4/main/fopen_wrappers.c</filename>
</entry>
<entry>??</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
</sect1>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->