GSS_DISPLAY_STATUS(3) | Programmer's Manual | GSS_DISPLAY_STATUS(3) |
名称
gss_display_status — GSS-API ステータスコードをテキストに変換する書式
#include < gssapi/gssapi.h> OM_uint32
gss_display_status( OM_uint32 *minor_status, OM_uint32 status_value, int status_type, const gss_OID mech_type, OM_uint32 *message_context, gss_buffer_t status_string);
解説
アプリケーションは、ユーザに表示するため、またはログ記録の目的として GSS-API ステータスコードのテキスト形式の表現を取得することができます。いくつかの状態値は、複数の状態を示すので、アプリケーションは、各呼び出しで単一のテキスト文字列を生成して、複数の回 gss_display_status() を呼び出す必要があります。 message_context パラメータは、エラーメッセージが与えられた status_value から既に抽出された状態の情報を格納するために gss_display_status() によって使用されます。 message_context は、最初の呼び出しの前にアプリケーションによって 0 に初期化されなければなりません、そして、 gss_display_status() は、抽出するメッセージがさらにあるなら、このパラメータに 0 以外の値を返します。message_context パラメータは、 status_value からさらなるメッセージを抽出するために gss_display_status() によって必要とされたすべての状態の情報を含んでいます。このパラメータに 0 以外の値を返すときさえ、アプリケーションは、その後のメッセージを望んでいないなら、再び gss_display_status() への呼び出しを必要としません。次のコードは、与えられたステータスコードからすべてのメッセージを抽出して、標準エラー (stderr) にそれらを印刷します:
OM_uint32 message_context; OM_uint32 status_code; OM_uint32 maj_status; OM_uint32 min_status; gss_buffer_desc status_string; ... message_context = 0; do { maj_status = gss_display_status ( &min_status, status_code, GSS_C_GSS_CODE, GSS_C_NO_OID, &message_context, &status_string) fprintf(stderr, "%.*s\n", (int)status_string.length, (char *)status_string.value); gss_release_buffer(&min_status, &status_string); } while (message_context != 0);
パラメータ
- minor_status
- メカニズム特有のステータスコード。
- status_value
- 変換される状態値
- status_type
-
- GSS_C_GSS_CODE
- status_value は、GSS ステータスコードです
- GSS_C_MECH_CODE
- status_value は、メカニズムステータスコードです
- mech_type
- 基本的なメカニズム (マイナ状態値を解釈するために使用)。システムデフォルトを取得するために GSS_C_NO_OID を供給します
- message_context
- 最初の呼び出しの前にアプリケーションによって 0 に初期化されるべきです。 gss_display_status() からの返るときに、 0 以外の status_value パラメータは、追加メッセージが、同じ status_value, status_type, mech_type と message_context パラメータを渡された gss_display_status() へにその後の呼び出しを通してステータスコードから抽出されることを示します。
- status_string
- status_value のテキスト形式の解釈。このパラメータに関連している記憶域は、 gss_release_buffer() への呼び出しで使用された後に、アプリケーションによって解放されなければなりません。
戻り値
- GSS_S_COMPLETE
- 成功して終了した
- GSS_S_BAD_MECH
- サポートされないメカニズムタイプに従った変換が要求されたことを示します。
- GSS_S_BAD_STATUS
- 状態値が認識されなかったか、または状態タイプが、 GSS_C_GSS_CODE または GSS_C_MECH_CODE のいずれでもありませんでした。
規格
- RFC 2743
- Generic Security Service Application Program Interface Version 2, Update 1
- RFC 2744
- Generic Security Service API Version 2 : C-bindings
歴史
gss_display_status のマニュアルページは、 FreeBSD 7.0 ではじめて登場しました。作者
John Wray, Iris AssociatesCOPYRIGHT
Copyright (C) The Internet Society (2000). All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
January 26, 2010 | FreeBSD |