LDGETNAME(3X)

НАЗВАНИЕ
ldgetname - получение текста имени элемента таблицы имен об ектного файла

СИНТАКСИС


	#include <stdio.h>

	#include <filehdr.h>

	#include <syms.h>

	#include <ldfcn.h>

	

	char *ldgetname (ldptr, symbol)

	LDFILE *ldptr;

	SYMENT *symbol;

ОПИСАНИЕ
Функция ldgetname возвращает указатель на имя, связанное с элементом symbol таблицы имен. Текст имени как цепочка символов помещается в локальный статический буфер функции ldgetname и обновляется при каждом вызове, поэтому для сохранения текста вызывающая программа должна его скопировать.

Использование ldgetname не вызывает каких-либо проблем, связанных с совместимостью об ектных файлов снизу вверх. При невозможности получения имени функция возвращает значение NULL (определенное во включаемом файле <stdio.h>). Это может произойти по следующим причинам:

  1. Если не найдена таблица цепочек.
  2. Если под таблицу цепочек не хватает памяти.
  3. Если обнаруживается некорректность таблицы цепочек.
  4. Если смещение имени в таблице цепочек указывает за пределы таблицы.

Как правило, ldgetname вызывается сразу после успешного обращения к ldtbread(3X) для извлечения текста имени, соответствующего элементу таблицы, прочитанному функцией ldtbread.

При редактировании связей вызывающей программы следует подключить библиотеку программ доступа к об ектным файлам libld.a.

СМ. ТАКЖЕ
ldclose(3X), ldopen(3X), ldtbread(3X), ldtbseek(3X), ldfcn(4).