Trusted Solaris 開発ガイド

属性マスクの作成

この例は、マスク構造のインスタンス化、必要な列挙型フィールドの論理和の計算に加え、属性マスク作成の 3 つの方法を示しています。

#include <tsix/t6attrs.h>
 #include <tsol/label.h>

 main()
 {
 	t6mask_t			suppmask, allocmask, presentmask,
 	t6mask_t 			getmask, recvmask;
 	t6attr_t			attrs, getattrs, recvattrs;

 	recvmask = T6M_ALL_ATTRS; recvattrs = t6alloc_blk(recvmask);
 	getmask = T6M_CLEARANCE; getattrs = t6alloc_blk(getmask);

/* システムがサポートする属性のマスクを得る */
 	suppmask = t6supported_attrs();

/* rcvattrs(T6M_ALL_ATTRS) により割り当てられる領域用の
/* マスクを得る */
 	allocmask = t6allocated_attrs(rcvattrs);

/* getattrs 内の属性のマスクを得る */
 	presentmask = t6present_attrs(getattrs);
 }