Я хочу знать, как на самом деле работает команда DIG (Domain Information Groper), когда дело доходит до кода и реализации. Я имею в виду, когда мы вводим команду DIG, какая часть кода во FreeBSD или BIND попадает первой.
В настоящее время я вижу, что при нажатии на команду DIG элемент управления переходит в файл client.c . Внутри этого файла вызывается следующая функция:
статическая пустота
client_request (isc_task_t * task, isc_event_t * event);
Но как контроль доходит до этого места, для меня все еще остается большой загадкой, даже после того, как я покопался в «именованной» части кода BIND.
Кроме того, я вижу, что эта функция вызывается из двух мест в этом файле. Я пытался поместить журналы в такие места, чтобы узнать, достигает ли контроль этих мест через эти пути, но, к сожалению, этого не происходит. Кажется, функция Client_request () каким-то образом вызывается извне, что я не могу понять.
Есть здесь кто-нибудь, кто может помочь мне разгадать эту тайну для меня?
Спасибо.