Manpages

이 름

capget, capset − 프 로 세 스 기 능 의 설 정 /소 유

사 용 법

#undef _POSIX_SOURCE
#include <sys/capability.h>

int capget(cap_user_header_t header, cap_user_data_t data);.sp int capset(cap_user_header_t header, const cap_user_data_t data);

설 명

리 눅 스 2.2의 경 우 , 슈 퍼 유 저 (root)의 권 한 이 분 리 되 었 다 . 모 든 프 로 세 스 는 현 재 사 용 하 고 있 다 고 여 겨 지 는 유 효 한 기 능 군 을 가 지 고 있 다 . 모 든 프 로 세 스 는 상 속 할 수 있 는 기 능 군 또 한 가 지 고 있 다 . 이 것 들 은 exedve(2)와 유 효 하 게 하 거 나 상 속 할 수 있 게 하 는 허 가 된 기 능 을 거 치 기 도 한 다 .

이 두 함 수 는 기 능 을 소 유 하 거 나 설 정 하 기 위 한 raw kernel interface이 다 . 이 시 스 템 은 리 눅 스 에 특 화 되 어 있 을 뿐 만 아 니 라 , 커 널 API 역 시 이 함 수 를 바 꾸 고 사 용 한 다 . (특 히 cap_user_*_t 타 입 의 포 멧 에 서 ) 이 것 은 각 커 널 개 정 판 을 바 꾸 는 주 제 이 다 .

이 인 터 페 이 스 들 을 어 플 리 케 이 션 에 서 사 용 할 수 있 다 면 , 이 식 인 터 페 이 스 는 cap_set_proc(3)cap_get_proc(3); 이 다 . 만 약 리 눅 스 확 장 을 어 플 리 케 이 션 에 서 사 용 하 고 자 한 다 면 , easier-to-use interfaces capsetp(3)capgetp(3). 을 사 용 해 야 한 다 .

반 환 값

성 공 하 면 , 0이 반 환 되 고 , 에 러 시 에 는 -1이 반 환 된 다 . errno 적 절 히 설 정 된 다 .

에 러

EINVAL

독 립 변 수 중 하 나 가 무 효 화 되 었 다 .

EPERM

승 인 된 군 에 기 능 을 첨 가 하 려 했 거 나 , 승 인 된 군 에 없 는 유 효 군 이 나 , 상 속 가 능 군 에 있 는 기 능 을 설 정 하 려 함

자 세 한 정 보

이 식 인 터 페 이 스 는 libcap 라 이 브 러 리 에 의 해 제 공 되 고 , 아 래 에 서 구 할 수 있 다 :
ftp://linux.kernel.org/pub/linux/libs/security/linux-privs

역 자

ASPLINUX<man [AT] asp-linux.kr>, 2000년 7월 29일