Объявление указателя XDR
10 Новый способ определения необязательных данных заключается в объявлении указателя. Он будет закодирован как:
4 байта со значением 1 и 4 байта значения либо
4 байта со значением 0
в зависимости от значения соответствующего указателя при кодировании данных. Если указатель ненулевой, используется первый вариант кодирования. Если указатель нулевой, получится второй вариант. Это удобный способ кодирования необязательных данных в случае, если в нашем коде имеется указатель на эти данные.
Важная деталь реализации, благодаря которой оба варианта дают одинаковый результат при кодировании, заключается в том, что значение TRUE равно 1, что совпадает с длиной массива переменной длины, когда в нем есть один элемент.
В листинге 16.18 приведен текст заголовочного файла, созданного программой rpcgen для данного файла спецификации.