Ce mode permet de déterminer la manière d’ouvrir ou créer un fichier IFS pour les fonctions ASfOuvre, ASfCree, ASfSauveTexte/Binaire.
Ce mode est une addition des constantes suivantes:
• type d’ouverture
ASfoAjout ajout en fin de fichier
ASfoTronque tronque le fichier
ASfoCréation créé le fichier, qui ne doit pas exister
ASfoCréationSiInexistant crée le fichier, s’il n’existe pas
• utilisation
ASfoEcriture écriture
ASfoLecture lecture
ASfoLectureEcriture lecture+écriture
ASfoBinaire pas de conversions
ASfoUnicode données texte stockées en Unicode
• verrouillage
ASfoBloqueLecture blocage en lecture
ASfoBloqueEcriture blocage en écriture
• droits. Il s’agit de droits type Unix, soit la lecture (R), écriture(W), exécution(X) pour l’utilisateur(U), le groupe(G) et les autres(O). Cela reprend les symboliques de la commande Unix chmod.
Lors de la création d’un fichier, l’utilisateur est toujours l’utilisateur en cours.
Côté AS/400, la commande CHGAUT permet d’ajuster les droits des objets ifs. CHGOWN permet de modifier l’utilisateur.
ASfoDroitsU_R le propriétaire du fichier a le droit de lecture
ASfoDroitsU_W le propriétaire du fichier a le droit d’écriture
ASfoDroitsU_X le propriétaire du fichier a le droit d’exécution
ASfoDroitsU_RW = ASfoDroitsU_R+ASfoDroitsU_W
ASfoDroitsU_RX = ASfoDroitsU_R+ASfoDroitsU_X
ASfoDroitsU_RWX = ASfoDroitsU_RW+ASfoDroitsU_X
ASfoDroitsG_R le groupe du fichier a le droit de lecture
ASfoDroitsG_W le groupe du fichier a le droit d’écriture
ASfoDroitsG_X le groupe du fichier a le droit d’exécution
ASfoDroitsG_RW = ASfoDroitsG_R+ASfoDroitsG_W
ASfoDroitsG_RX = ASfoDroitsG_R+ASfoDroitsG_X
ASfoDroitsG_RWX = ASfoDroitsG_RW+ASfoDroitsG_X
ASfoDroitsO_R les autres ont le droit de lecture
ASfoDroitsO_W le les autres ont le droit d’écriture
ASfoDroitsO_X le les autres ont le droit d’exécution
ASfoDroitsO_RW = ASfoDroitsO_R+ASfoDroitsO_W
ASfoDroitsO_RX = ASfoDroitsO_R+ASfoDroitsO_X
ASfoDroitsO_RWX = ASfoDroitsO_RW+ASfoDroitsO_X
ASfoDroitsA_R = ASfoDroitsU_R+ASfoDroitsG_R+ASfoDroitsO_R
ASfoDroitsA_W = ASfoDroitsU_W+ASfoDroitsG_W+ASfoDroitsO_W
ASfoDroitsA_X = ASfoDroitsU_X+ASfoDroitsG_X+ASfoDroitsO_X
ASfoDroitsA_RWX = ASfoDroitsA_R+ASfoDroitsA_W+ASfoDroitsA_X