Compartilhar via


_umask

Define a máscara de arquivo padrão permissão. Uma versão mais segura dessa função está disponível; consulte _umask_s.

int _umask(
   int pmode 
);

Parâmetros

  • pmode
    Usar como padrão a configuração de permissão.

Valor de retorno

_umask retorna o valor anterior de pmode. Não há nenhum retorno de erro.

Comentários

A função de _umask define a máscara de arquivo permissão do processo atual para o modo especificado por pmode*.* A máscara de arquivo permissão altera a configuração de permissão dos novos arquivos criados por _creat, por _open, ou por _sopen. Se um bit na máscara é 1, o bit correspondente no valor solicitado de permissões do arquivo é definido como 0 (não permitido). Se um bit na máscara é 0, o bit correspondente está inalterado. A configuração de permissão para um novo arquivo não estiver definida até que o arquivo seja fechado pela primeira vez.

A expressão de inteiro pmode contém uma ou ambas as seguintes constantes manifestas, definido no sistema \ STAT.H:

  • _S_IWRITE
    Gravando permitida.

  • _S_IREAD
    Leitura permitidas.

  • _S_IREAD | _S_IWRITE
    Leitura e gravação permitidas.

Quando ambas as constantes são fornecidas, são adicionadas com bit a bit OR (o operador | ). Se o argumento de pmode é _S_IREAD, leia não é permitido (o arquivo é somente gravação.) Se o argumento de pmode é _S_IWRITE, escrever não é permitida (o arquivo é somente leitura). Por exemplo, se o bit de gravação é definido na máscara, todos os novos arquivos serão somente leitura. Observe que o MS-DOS e com os sistemas operacionais Windows, todos os arquivos são legíveis; não é possível atribuir a permissão somente gravação. Consequentemente, definir o bit de leitura com _umask não tem nenhum efeito nos modos de arquivo.

Se pmode não é uma combinação de uma das constantes manifestas nem inserir um conjunto de substituição de constantes, a função ignorará somente as.

Requisitos

Rotina

Cabeçalho necessário

_umask

<io.h, o sistema></stat.h, o sistema/>types.h <>

Para informações adicionais de compatibilidade, consulte Compatibilidade na Introdução.

Bibliotecas

Todas as versões das Bibliotecas em tempo de execução C.

Exemplo

// crt_umask.c
// compile with: /W3
// This program uses _umask to set
// the file-permission mask so that all future
// files will be created as read-only files.
// It also displays the old mask.
#include <sys/stat.h>
#include <sys/types.h>
#include <io.h>
#include <stdio.h>

int main( void )
{
   int oldmask;

   /* Create read-only files: */
   oldmask = _umask( _S_IWRITE ); // C4996
   // Note: _umask is deprecated; consider using _umask_s instead
   printf( "Oldmask = 0x%.4x\n", oldmask );
}
  

Equivalência do .NET Framework

System::IO::File::SetAttributes

Consulte também

Referência

Manipulação de arquivos

E/S de nível inferior

_chmod, _wchmod

_creat, _wcreat

_mkdir, _wmkdir

_open, _wopen