dams Mon Nov 12 00:15:04 2001 EDT
Modified files:
/phpdoc/fr/features file-upload.xml safe-mode.xml
Log:
Commiting latest changes since July 1rst.
Addings new functions, typos corrections.
Uptodate with en.
Index: phpdoc/fr/features/file-upload.xml
diff -u phpdoc/fr/features/file-upload.xml:1.10 phpdoc/fr/features/file-upload.xml:1.11
--- phpdoc/fr/features/file-upload.xml:1.10 Tue Jul 24 09:46:57 2001
+++ phpdoc/fr/features/file-upload.xml Mon Nov 12 00:15:04 2001
@@ -1,3 +1,5 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!-- $Revision: 1.11 $ -->
<chapter id="features.file-upload">
<title>Gestion des chargements de fichier</title>
<sect1 id="features.file-upload.post-method">
@@ -72,13 +74,13 @@
<simpara>
<varname>$userfile_type</varname> - Le type MIME du fichier, si
le navigateur a fourni cette information. Par exemple,
- <literal>"image/gif"</literal>.
+ <literal>"image/gif"</literal>.
</simpara>
</listitem>
</itemizedlist>
- Notez que "$userfile" prend la valeur qui est passée dans
- le champs INPUT de type TYPE=file. Dans l'exemple ci-dessus,
- nous avons choisi de l'appeler "userfile".
+ Notez que "$userfile" prend la valeur qui est passée dans
+ le champs INPUT de type TYPE=file. Dans l'exemple ci-dessus,
+ nous avons choisi de l'appeler "userfile".
</para>
<para>
En PHP 4, le comportement est légèrement différent, car
c'est la
@@ -109,7 +111,7 @@
<listitem>
<para>
Le type MIME du fichier, si le navigateur a fourni cette information.
- Par exemple, <literal>"image/gif"</literal>.
+ Par exemple, <literal>"image/gif"</literal>.
</para>
</listitem>
</varlistentry>
Index: phpdoc/fr/features/safe-mode.xml
diff -u phpdoc/fr/features/safe-mode.xml:1.2 phpdoc/fr/features/safe-mode.xml:1.3
--- phpdoc/fr/features/safe-mode.xml:1.2 Mon Jul 16 04:47:12 2001
+++ phpdoc/fr/features/safe-mode.xml Mon Nov 12 00:15:04 2001
@@ -1,3 +1,5 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!-- $Revision: 1.3 $ -->
<chapter id="features.safe-mode">
<title>Safe mode</title>
<para>
@@ -22,16 +24,18 @@
</informalexample>
</para>
<para>
- Lorsque safe mod est actif, PHP vérifie que le propriétaire du script
- courant est le même que le propriétaire de fichier qui seront
manipulé
- par ce script. Par exemple, si on a la situation suivante :
+ Lorsque <link linkend="ini.safe-mode">safe_mode</link> est actif,
+ PHP vérifie que le propriétaire du script
+ courant est le même que le propriétaire des
+ fichiers qui seront manipulés par ce script. Par exemple,
+ dans a la situation suivante :
<informalexample>
<programlisting role="ls">
-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>
</informalexample>
- Exécuter le script <filename>script.php</filename>
+ éxécuter le script <filename>script.php</filename>
<informalexample>
<programlisting role="php">
<?php
@@ -41,14 +45,15 @@
</informalexample>
générera cette erreur, si le safe mode est activé :
<informalexample>
- <programlisting role="php">
+ <programlisting>
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
</programlisting>
</informalexample>
</para>
<para>
- Si vou utilisez la directive open_basedir au lieu du safe mode, alors les
+ Si vou utilisez la directive open_basedir au lieu du
+ <link linkend="ini.safe-mode">safe_mode</link>, alors les
manipulations seront limitées aux fichiers situés dans les dossiers
spécifiés. Par exemple :
<informalexample>
@@ -75,7 +80,7 @@
disable_functions readfile,system
</programlisting>
</informalexample>
- toute utilisation des fonctions <function>readfile</function> et
+ toute utilisation des fonctions <function>readfile</function> et
<function>system</function> générera l'affichage suivant :
<informalexample>
<programlisting role="php">
@@ -84,6 +89,210 @@
</programlisting>
</informalexample>
</para>
+
+ <sect1 id="features.safe-mode.functions">
+ <title>Functions désactivées par le Safe Mode</title>
+ <para>
+ Voici une liste non-exhaustive des fonctions désactivées par
+ le <link linkend="features.safe-mode">Safe Mode</link>.
+ <!-- TODO: add ¬e.sm.*; to the functions mentioned here.
+ That entity should link to this section -->
+ <table>
+ <title>Fonctions désactivées par le Safe Mode</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Fonction</entry>
+ <entry>Limitations</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>Fonctions ifx_</entry>
+ <entry>restrictions sql_safe_mode, (!= Safe Mode)</entry>
+ <!-- TODO: more info on sql-safe-mode -->
+ </row>
+ <row>
+ <entry>Fonctions ingres_</entry>
+ <entry>restrictions sql_safe_mode, (!= Safe Mode)</entry>
+ <!-- TODO: more info on sql-safe-mode -->
+ </row>
+ <row>
+ <entry>Fonctions mysql_</entry>
+ <entry>restrictions sql_safe_mode, (!= 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>Obéis aux directives safe_mode_protected_env_vars et
+ safe_mode_allowed_env_vars. Voir aussi la documentation de
+ <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
+operator</link></entry>
+ <entry>&sm.disabled;</entry>
+ </row>
+ <row>
+ <entry><function>shell_exec</function> (équivalent fonctionnels
+ des guillemets oblique)</entry>
+ <entry>&sm.disabled;</entry>
+ </row>
+ <row>
+ <entry><function>exec</function></entry>
+ <entry>
+ Vous ne pouvez éxécuter que les programmes qui
+ sont dans le dossier <link
+linkend="ini.safe-mode-exec-dir">safe_mode_exec_dir</link>.
+ Pour des raisons pratiques, il n'est pas possible d'utiliser des
+ jokers comme <literal>..</literal> dans le chemin de ce dossier.
+ </entry>
+ </row>
+ <row>
+ <entry><function>system</function></entry>
+ <entry>
+ Vous ne pouvez éxécuter que les programmes qui
+ sont dans le dossier <link
+linkend="ini.safe-mode-exec-dir">safe_mode_exec_dir</link>.
+ Pour des raisons pratiques, il n'est pas possible d'utiliser des
+ jokers comme <literal>..</literal> dans le chemin de ce dossier.
+ </entry>
+ </row>
+ <row>
+ <entry><function>passthru</function></entry>
+ <entry>
+ Vous ne pouvez éxécuter que les programmes qui
+ sont dans le dossier <link
+linkend="ini.safe-mode-exec-dir">safe_mode_exec_dir</link>.
+ Pour des raisons pratiques, il n'est pas possible d'utiliser des
+ jokers comme <literal>..</literal> dans le chemin de ce dossier.
+ </entry>
+ </row>
+ <row>
+ <entry><function>popen</function></entry>
+ <entry>
+ Vous ne pouvez éxécuter que les programmes qui
+ sont dans le dossier <link
+linkend="ini.safe-mode-exec-dir">safe_mode_exec_dir</link>.
+ Pour des raisons pratiques, il n'est pas possible d'utiliser des
+ jokers comme <literal>..</literal> dans le chemin de ce dossier.
+ </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; (on
+ <parameter>source</parameter> and
+ <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; De plus, vous ne pouvez pas modifier les
+ SUID, SGID et 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; (note: only the target is
+ checked)</entry>
+ </row>
+ <row>
+ <entry><function>link</function></entry>
+ <entry>
+ &sm.uidcheck; &sm.uidcheck.dir; (note: seule le fichier
+ de destination est vérifié.
+ </entry>
+ </row>
+ <row>
+ <entry><function>getallheaders</function></entry>
+ <entry>
+ En Safe Mode, les entêtes commencants par 'authorization'
+ (sensible à la casse) ne seront pas retournés. Attention :
+ cette protection est mise en défaut par la fonction
+ <function>getallheaders</function> sur les serveurs AOL!
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Toutes les fonctions qui utilisent les
+ wrappers de fichiers.
+ </entry>
+ <entry>??</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </para>
+ </sect1>
+
</chapter>
<!-- Keep this comment at the end of the file
Local variables: