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 &lt;input&gt; 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 &lt;Directory&gt; a 
    &lt;Virtualhost&gt;. 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 &note.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:
-->

Reply via email to