Funções restritas/desabilitadas pelo "safe mode"


Funções restritas/desabilitadas pelo "safe mode"

Esta continua sendo uma lista provavelmente incompleta e possivelmente incorreta de funcões limitadas pelo "safe mode".

Funcões limitadas do safe mode
Funções Limitações
dbmopen() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado.
dbase_open() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado.
filepro() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado.
filepro_rowcount() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado.
filepro_retrieve() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado.
ifx_* sql_safe_mode restrictions, (!= safe mode)
ingres_* sql_safe_mode restrictions, (!= safe mode)
mysql_* sql_safe_mode restrictions, (!= safe mode)
pg_lo_import() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado.
posix_mkfifo() Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
putenv() Obedece as diretivas-ini safe_mode_protected_env_vars e safe_mode_allowed_env_vars. Veja também a documentação de putenv()
move_uploaded_file() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado.
chdir() Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
dl() Está função está desabilitada quando o PHP é rodado sob o safe mode.
backtick operator Está função está desabilitada quando o PHP é rodado sob o safe mode.
shell_exec() (função equivalente ao backticks) Está função está desabilitada quando o PHP é rodado sob o safe mode.
exec() Poderá somente utilizar executáveis dentro do safe_mode_exec_dir. Por razões práticas, não é permitido possuir componentes .. no endereço do executável. escapeshellcmd() é executado como argumento desta função.
system() Poderá somente utilizar executáveis dentro do safe_mode_exec_dir. Por razões práticas, não é permitido possuir componentes .. no endereço do executável. escapeshellcmd() é executado como argumento desta função.
passthru() Poderá somente utilizar executáveis dentro do safe_mode_exec_dir. Por razões práticas, não é permitido possuir componentes .. no endereço do executável. escapeshellcmd() é executado como argumento desta função.
popen() Poderá somente utilizar executáveis dentro do safe_mode_exec_dir. Por razões práticas, não é permitido possuir componentes .. no endereço do executável. escapeshellcmd() é executado como argumento desta função.
fopen() Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
mkdir() Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
rmdir() Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
rename() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
unlink() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
copy() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado. (on source and target)
chgrp() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado.
chown() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado.
chmod() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Além disso, não poderá alterar nem o SUID, nem o SGID, nem os sticky bits
touch() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
symlink() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado. (nota: somente o alvo é verificado)
link() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado. (nota: somente o alvo é verificado)
apache_request_headers() No "safe mode" o cabeçalho authorization (case-insensitive) não é retornado.
header() No "safe mode", o uid do script é adicionado ao realm que faz parte do cabeçalho WWW-Authenticate se você definir esse cabeçalho (usado para autenticação HTTP).
PHP_AUTH variables No "safe mode", as variáveis PHP_AUTH_USER, PHP_AUTH_PW e AUTH_TYPE não estão disponíveis em $_SERVER. Porém, pode-se utilizar o REMOTE_USER para o USER. (nota: apenas para a versão a partir PHP 4.3.0)
highlight_file(), show_source() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
parse_ini_file() Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado.
set_time_limit() Não há efeito quando o safe mode está ativado.
max_execution_time Não há efeito quando o safe mode está ativado.
mail() No safe mode, o quinto parâmetro é desabilitado.
session_start() O dono do script precisa ser o mesmo dono do diretório session.save_path se se o files padrão em session.save_handler for usado.
Todos as funções do sistemas de arquivos e de streams. Verifica se o arquivo ou diretório operados tem o mesmo UID (owner) que o script sendo executado. Verifica se o diretório onde o script está operando tem o mesmo UID (owner) que o script sendo executado. (veja a opção safe_mode_include_dir no php.ini