Книга: Разработка приложений в среде Linux. Второе издание
26.5.2. Разрешение псевдонимов
26.5.2. Разрешение псевдонимов
Приложение должно разрешать разворачивание псевдонимов для popContext
перед первым вызовом функции poptGetNextOpt()
. Псевдонимы для содержимого определяются с помощью трех функций.
int poptReadDefaultConfig(poptContext con, int flags);
Эта функция считывает псевдонимы из /etc/popt
и файла .popt
в домашнем каталоге пользователя. На данный момент flags
должен иметь нулевое значение, поскольку он зарезервирован только для будущего использования.
int poptReadConfigFile(poptContext con, char * fn);
Файл, определяемый посредством fn
, открывается и анализируется как конфигурационный файл popt
. Это позволяет программам использовать конфигурационные файлы конкретных программ.
int poptAddAlias(poptContext con, struct poptAlias alias, int flags);
В некоторых случаях в программах необходимо определять псевдонимы, не читая их из конфигурационного файла. Эта функция добавляет новый псевдоним в содержимое. Аргумент flags
должен иметь нулевое значение, и в настоящий момент он зарезервирован только для будущего использования. Новый псевдоним определяется как struct poptAlias
следующим образом:
struct poptAlias {
char * longName; /* может быть NULL */
char shortName; /* может быть '' */
int argc;
char ** argv; /*должна быть возможность освобождения с помощью free()*/
};
Первые два элемента, longName
и shortName
, определяют параметр, для которого вводится псевдоним. Два последних аргумента, argc
и argv
, определяют разворачивание, которое будет использовано при обнаружении псевдонима параметра.
- 4.14. Запрет и разрешение хостов
- Разрешение трассировки с помощью ‹trace›
- Разрешение конфликтов имен
- Запрещение и разрешение прерываний
- Разрешение автоприращения для полей
- Как настроить разрешение экрана?
- 6.1. Разрешение экрана
- 12.3. Разрешение и блокировка конкретных программ
- Разрешение выполнения ActiveX-объектов на локальном компьютере
- Разрешение конфликтов шаблонов
- Семантика использования псевдонимов
- Выработка соглашений для динамических псевдонимов