FreeBSD 日本語マニュアル検索 (jman/japropos/jwhatis)


日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。

4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)

13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。



検索コマンド: man apropos whatis
コマンド/キーワード:
日本語マニュアル RELEASE :
セクション:
Table of Contents
名称 | ライブラリ | 書式 | 解説 | 戻り値 | 使用例 | 関連項目 | 作者
LIBCASPER(3)           FreeBSD ライブラリ関数マニュアル           LIBCASPER(3)

名称
     cap_init, cap_wrap, cap_unwrap, cap_sock, cap_clone, cap_close,
     cap_limit_get, cap_limit_set, cap_send_nvlist, cap_recv_nvlist,
     cap_xfer_nvlist, cap_service_open -- アプリケーションのケーパビリティを扱
     うためのライブラリ

ライブラリ
          libcasper Library (libcasper, -lcasper)

書式
     #include <libcasper.h>
     #include <nv.h>

     cap_channel_t *
     cap_init(void);

     cap_channel_t *
     cap_wrap(int sock);

     int
     cap_unwrap(cap_channel_t *chan);

     int
     cap_sock(const cap_channel_t *chan);

     cap_channel_t *
     cap_clone(const cap_channel_t *chan);

     void
     cap_close(cap_channel_t *chan);

     int
     cap_limit_get(const cap_channel_t *chan, nvlist_t **limitsp);

     int
     cap_limit_set(const cap_channel_t *chan, nvlist_t *limits);

     int
     cap_send_nvlist(const cap_channel_t *chan, const nvlist_t *nvl);

     nvlist_t *
     cap_recv_nvlist(const cap_channel_t *chan, int flags);

     nvlist_t *
     cap_xfer_nvlist(const cap_channel_t *chan, nvlist_t *nvl, int flags);

     cap_channel_t *
     cap_service_open(const cap_channel_t *chan, const char *name);

解説
     libcapsicum ライブラリは、casper プロセスを通してアプリケーションのケーパ
     ビリティを管理することを可能にします。

     (cap_channel_t タイプによって表される) アプリケーションのケーパビリティ
     は、呼び出し側と casper プロセスデーモンの間の通信チャネル、またはその
     サービスの 1 つのインスタンスです。cap_init() 関数で取得される casper プ
     ロセスへのケーパビリティは、cap_service_open() 関数を通して casper のサー
     ビスへのケーパビリティを作成することを可能にします。

     cap_init() 関数は、casper プロセスへのケーパビリティをオープンします。

     cap_wrap() 関数は、与えられたソケットに基づいて cap_channel_t を作成しま
     す。ケーパビリティが、execve(2) を通して継承されるか、または通常のファイ
     ル記述子として unix(4) ドメインソケットを越えて送信し、再び cap_channel_t
     として表されなければならないとき、関数は、使用されます。

     cap_unwrap() 関数は、cap_wrap() 関数の反対です。それは、cap_channel_t 構
     造体を解放し、それに関連した unix(4) ドメインソケットを返します。

     cap_clone() 関数は、与えられたケーパビリティをクローン化します。

     cap_close() 関数は、与えられたケーパビリティをクローズします。

     cap_sock() 関数は、kevent(2), poll(2)select(2) のようなシステムコール
     で使用するために与えられたケーパビリティと関連した unix(4) ドメインソケッ
     ト記述子を返します。

     cap_limit_get() 関数は、与えられたケーパビリティの現在の制限を limitsp 引
     数に格納します。関数が 0 を返し、NULL が limitsp に格納されるなら、それ
     は、設定の制限がないことを意味します。

     cap_limit_set() 関数は、与えられたケーパビリティのための制限を設定しま
     す。制限は、nvlist として提供されます。正確な形式は、ケーパビリティが表し
     ているサービスに依存します。

     cap_send_nvlist() 関数は、与えられたケーパビリティを越えて与えられた
     nvlist を送信します。これは、casper サービスと通信する低レベルのインタ
     フェースです。ほとんどのサービスは、より高いレベルの API が提供されるべき
     です。

     cap_recv_nvlist() 関数は、与えられたケーパビリティを越えて与えられた
     nvlist を受信します。flags 引数は、どのようなタイプのトップの nvlist がそ
     うであることが期待されているかを定義します。nvlist フラグが、
     cap_recv_nvlist() に渡されたフラグと一致していないなら、nvlist は、返され
     ません。

     cap_xfer_nvlist() 関数は、与えられた nvlist を送信し、それを破壊し、与え
     られたケーパビリティを越える応答で新しい nvlist を受信します。flags 引数
     は、どのようなタイプのトップの nvlist がそうであることが期待されているか
     を定義します。nvlist フラグが、cap_xfer_nvlist() に渡されたフラグと一致し
     ていないなら、nvlist は、返されません。関数が成功するか、または失敗するな
     らば、それは、重要ではなく、送信のために与えられた nvlist は、いったん関
     数が返ると常に破壊されます。

     cap_service_open() 関数は、cap_init() 関数によって取得された casper ケー
     パビリティを通して与えられた名前の casper サービスをオープンします。関数
     は、オープンされたサービスへのアクセスを提供するケーパビリティを返しま
     す。

戻り値
     cap_clone(), cap_init(), cap_recv_nvlist(), cap_service_open(),
     cap_wrap() と cap_xfer_nvlist() 関数は、失敗すれば、NULL を返し、errno 変
     数を設定します。

     cap_limit_get(), cap_limit_set() と cap_send_nvlist() 関数は、失敗すれ
     ば、-1 を返し、errno 変数を設定します。

     cap_close(), cap_sock() と cap_unwrap() 関数は、常に成功します。

使用例
     次の例は、最初に casper へのケーパビリティをオープンし、次にこのケーパビ
     リティを使用して system.dns casper サービスへの新しいケーパビリティを作成
     し、IP アドレスを解決する後者のケーパビリティを使用します。

     cap_channel_t *capcas, *capdns;
     nvlist_t *limits;
     const char *ipstr = "127.0.0.1";
     struct in_addr ip;
     struct hostent *hp;

     /* Casper へのケーパビリティをオープンします. */
     capcas = cap_init();
     if (capcas == NULL)
             err(1, "Unable to contact Casper");

     /* ケーパビリティモードの sandbox に入ります. */
     if (cap_enter() < 0 && errno != ENOSYS)
             err(1, "Unable to enter capability mode");

     /* system.dns サービスへのケーパビリティを作成するために Casper
        ケーパビリティを使用します. */
     capdns = cap_service_open(capcas, "system.dns");
     if (capdns == NULL)
             err(1, "Unable to open system.dns service");

     /* Casper ケーパビリティをクローズします, もはや必要ではありません. */
     cap_close(capcas);

     /* system.dns を DNS の逆引きと IPv4 アドレスに制限します. */
     limits = nvlist_create(0);
     nvlist_add_string(limits, "type", "ADDR");
     nvlist_add_number(limits, "family", (uint64_t)AF_INET);
     if (cap_limit_set(capdns, limits) < 0)
             err(1, "Unable to limit access to the system.dns service");

     /* C 文字列の IP アドレスを in_addr に変換します. */
     if (!inet_aton(ipstr, &ip))
             errx(1, "Unable to parse IP address %s.", ipstr);

     /* 与えられた IP アドレスのためのホスト名を見つける. */
     hp = cap_gethostbyaddr(capdns, (const void *)&ip, sizeof(ip), AF_INET);
     if (hp == NULL)
             errx(1, "No name associated with %s.", ipstr);

     printf("Name associated with %s is %s.\n", ipstr, hp->h_name);

関連項目
     cap_enter(2), execve(2), kevent(2), poll(2), select(2),
     cap_gethostbyaddr(3), err(3), gethostbyaddr(3), inet_aton(3), nv(3),
     capsicum(4), unix(4)

作者
     libcasper ライブラリは、FreeBSD 財団の資金提供の下で Pawel Jakub Dawidek
     <pawel@dawidek.net> によって実装されました。libcasper の新しいアーキテク
     チャは、
     Mariusz Zaborski <oshogbo@FreeBSD.org> によって実装されました。

FreeBSD 11.4                   February 25, 2016                  FreeBSD 11.4

Table of Contents

FreeBSD マニュアル検索