함수 기능
파일 또는 디렉토리가 생성될 때에 불필요하게 많은 권한을 갖지 않도록 통제하는 함수
함수 원형
#include<sys/types.h>
#include<sys/stat.h>
Mode_t umask(mode_t cmask)
리턴 값 : 이전의 파일 모드 생성 마스크
함수 파라메터
cmask
원하는 mask 값
함수 예제
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
#include<sys/stat.h>
#define RW_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)
int main(void){
char *fname1="ssu_file1";
char *fname2="ssu_file2";
umask(0);
if(creat(fname1,RW_MODE)<0){
fprintf(stderr,"creat error for%s\n",fname1);
exit(1);
}
umask(S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH);
if(creat(fname2,RW_MODE)<0){
fprintf(stderr,"creat error for%s\n",fname2);
exit(1);
}
exit(0);
}
리눅스시스템 프로그래밍 - 홍지만 저
교재 내에 있는 예제를 바탕으로 작성한 글 입니다.
'C & LINUX' 카테고리의 다른 글
C / LINUX chown() fchown() lchown() (0) | 2022.05.02 |
---|---|
C / LINUX chmod(2) fchmod(2) (0) | 2022.05.02 |
C / LINUX access() (0) | 2022.05.02 |
C / LINUX atexit(3) (0) | 2022.05.02 |
C / LINUX exit(3) _Exit(2) _exit(2) (0) | 2022.05.02 |