9.3.6 エンティティ参照回数を制限する機能
- 〈この項の構成〉
(1) CBLXML-SET-ENTITYLIMITサービスルーチン
XMLドキュメントの入力時にエンティティ参照回数を制限するときは,CBLXML-SET-ENTITYLIMITサービスルーチンを呼び出して制限値を設定します。
- 形式
-
CALL 'CBLXML-SET-ENTITYLIMIT' USING XML-POINTER ENTITY-LIMIT.
- 引数
-
引数のデータ型
指定
説明
01 XML-POINTER USAGE POINTER.
○
XMLドキュメントのポインタを受け取るポインタ項目を指定します。
01 ENTITY-LIMIT PIC 9(9) COMP.
○
最大のエンティティ参照回数を指定する領域を4バイトの2進項目で指定します。指定できる値の範囲は,0〜2,147,483,647です。
- 戻り値
-
戻り値
内容
0
正常終了した。
-1
CBLXML-SET-ENTITYLIMITサービスルーチンの引数の値が不正である。
- 規則
-
-
CBLXML-SET-ENTITYLIMITサービスルーチンは,CBLXML-CREATE-XML-POINTERサービスルーチンでXMLドキュメントのポインタを作成したあとで,呼び出してください。
-
CBLXML-SET-ENTITYLIMITサービスルーチンの設定は,XMLドキュメントの入力時に有効になります。CBLXML-SET-ENTITYLIMITサービスルーチンを呼び出したXMLドキュメントのポインタを指定して,XMLドキュメントを開くアクセスルーチン(CBLXML-OP-Interface,CBLXML-OB-Interface)を呼び出してください。
-
引数ENTITY-LIMITの値が範囲外の場合,制限値を設定していないとみなし,参照回数は制限されません。CBLXML-SET-ENTITYLIMITサービスルーチンの戻り値は-1になります。
-
環境変数CBLXML_ENTITYLIMITが指定されている状態でCBLXML-SET-ENTITYLIMITサービスルーチンを呼び出した場合,CBLXML-SET-ENTITYLIMITサービスルーチンに指定した値が有効になります。
-