Functions restricted/disabled by safe mode

This is a still probably incomplete and possibly incorrect listing of the functions limited by safe mode.

Safe mode limited functions
Function Limitations
dbmopen() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută.
dbase_open() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută.
filepro() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută.
filepro_rowcount() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută.
filepro_retrieve() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută.
ifx_* sql_safe_mode restrictions, (!= safe mode)
ingres_* sql_safe_mode restrictions, (!= safe mode)
mysql_* sql_safe_mode restrictions, (!= safe mode)
pg_lo_import() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută.
posix_mkfifo() Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
putenv() Obeys the safe_mode_protected_env_vars and safe_mode_allowed_env_vars ini-directives. See also the documentation on putenv()
move_uploaded_file() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută.
chdir() Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
dl() Această funcție este dezactivată atunci când PHP rulează în modul securizat.
backtick operator Această funcție este dezactivată atunci când PHP rulează în modul securizat.
shell_exec() (functional equivalent of backticks) Această funcție este dezactivată atunci când PHP rulează în modul securizat.
exec() You can only execute executables within the safe_mode_exec_dir. For practical reasons it's currently not allowed to have .. components in the path to the executable. escapeshellcmd() is executed on the argument of this function.
system() You can only execute executables within the safe_mode_exec_dir. For practical reasons it's currently not allowed to have .. components in the path to the executable. escapeshellcmd() is executed on the argument of this function.
passthru() You can only execute executables within the safe_mode_exec_dir. For practical reasons it's currently not allowed to have .. components in the path to the executable. escapeshellcmd() is executed on the argument of this function.
popen() You can only execute executables within the safe_mode_exec_dir. For practical reasons it's currently not allowed to have .. components in the path to the executable. escapeshellcmd() is executed on the argument of this function.
fopen() Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
mkdir() Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
rmdir() Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
rename() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
unlink() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
copy() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută. (on source and target)
chgrp() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută.
chown() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută.
chmod() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. In addition, you cannot set the SUID, SGID and sticky bits
touch() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
symlink() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută. (note: only the target is checked)
link() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută. (note: only the target is checked)
apache_request_headers() In safe mode, headers beginning with authorization (case-insensitive) will not be returned.
header() In safe mode, the uid of the script is added to the realm part of the WWW-Authenticate header if you set this header (used for HTTP Authentication).
PHP_AUTH variables In safe mode, the variables PHP_AUTH_USER, PHP_AUTH_PW, and AUTH_TYPE are not available in $_SERVER. Regardless, you can still use REMOTE_USER for the USER. (note: only affected since PHP 4.3.0)
highlight_file(), show_source() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
parse_ini_file() Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută.
set_time_limit() Has no effect when PHP is running in modul securizat.
max_execution_time Has no effect when PHP is running in modul securizat.
mail() In safe mode, the fifth parameter is disabled.
session_start() The owner of a script must be the same as owner of a session.save_path directory if the default files session.save_handler is used.
All filesystem and stream functions. Verifică dacă fișierele și directoarele cu care se operează au același UID (proprietar) ca și script-ul care se execută. Verifică dacă directorul în care se operează are același UID (proprietar) ca și script-ul ce se execută. (see the safe_mode_include_dir php.ini option.

add a note add a note

User Contributed Notes 2 notes

up
5
Jan
19 years ago
It seems that glob and file_exists functions are also restricted in safe-mode.
up
3
tschmieder at bitworks dot de
17 years ago
refers to the previuos posting of

bananarama
15-May-2006 10:11

"all file-handling and -management functions are restricted, just in case someones wondering why they're not listed here.
a script can run these functions on files without errors, if the files were created (are owned) by the same UID, the script was created (is owned) by."

.... or if the directory, in which the file is located, has the same UID as the script, which tries to use a file in that directory...
To Top