_umask

Définit le masque d'accès de fichier par défaut. Des versions plus sécurisées de ces fonctions sont disponibles ; consultez _umask_s.

int _umask(
   int pmode 
);

Paramètres

  • pmode
    Paramètre d'autorisation par défaut.

Valeur de retour

_umask retourne la valeur précédente de pmode. Aucun retour d'erreur.

Notes

La fonction _umask définit le masque d'autorisation du processus actuel comme le mode spécifié par pmode*.* Le masque des autorisations de fichiers modifie le paramètre d'autorisation des nouveaux fichiers créés par _creat, _open, ou _sopen. Si un bit dans le masque est 1, le bit correspondant dans la valeur requise d'autorisation du fichier est défini à 0 (pas autorisé). Si un bit dans le masque est 0, le bit correspondant est inchangé. Le paramètre d'autorisation pour un nouveau fichier n'est pas défini tant que le fichier n'a pas été fermé pour la première fois.

L'expression entière pmode contient une des deux ou les deux constantes manifestes suivantes, défini dans SYS\STAT.H :

  • _S_IWRITE
    Écriture autorisée.

  • _S_IREAD
    Lecture autorisée.

  • _S_IREAD | _S_IWRITE
    Lecture et écriture autorisées.

Lorsque les deux constantes sont fournies, elles sont jointes à l'opérateur de bits OR ( | ). Si l'argument pmode est _S_IREAD, la lecture n'est pas autorisée (le fichier est en écriture seule. Si l'argument pmode est _S_IWRITE, l'écriture n'est pas autorisée (le fichier est en lecture seule). Par exemple, si le bit d'écriture est défini dans le masque, tous les nouveaux fichiers sont en lecture seule. Notez que avec MS-DOS et des systèmes d'exploitation Windows, tous les fichiers sont lisibles ; il est impossible de donner l'autorisation en écriture seule. Par conséquent, définir le bit de lecture avec _umask n'a aucun effet sur les modes du fichier.

Si pmode n'est pas une combinaison de l'une des constantes manifestes ou n'incorpore pas un jeu de remplacement de constantes, la fonction ignore simplement celles-ci.

Configuration requise

Routine

En-tête requis

_umask

<io.h>, <sys/stat.h>, <sys/types.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité dans l'introduction.

Bibliothèques

Toutes les versions des bibliothèques Runtime C.

Exemple

// 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 );
}
  

Équivalent .NET Framework

System::IO::File::SetAttributes

Voir aussi

Référence

Gestion de fichiers

E/S niveau bas

_chmod, _wchmod

_creat, _wcreat

_mkdir, _wmkdir

_open, _wopen