uIP 1.0
|
/** * \addtogroup resolv * @{ */ /** * \file * Заголовочный файл для DNS resolver. * \author Adam Dunkels <adam@dunkels.com> */ /* * Copyright (c) 2002-2003, Adam Dunkels. * Все права зарезервированы. * * Повторное распространение, использование в исходном и двоичном виде, * с модификацией или без - разрешается, если выполняются следующие * условия: * 1. Распространение исходного кода должно сохранить вышеуказанную пометку * копирайта, этот список условий и следующую правовую оговорку. * 2. Распространение исходного кода должно сохранить вышеуказанную пометку * копирайта, этот список условий и следующую правовую оговорку в * документации и/или других материалах, которые будут предоставлены * вместе с распространяемыми материалами. * 3. Имя автора не может использоваться, чтобы подтвердить или продвинуть * продукты, написанные с использованием этого программного обеспечения * без специального на то разрешения. * * ЭТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ АВТОРОМ ``КАК ЕСТЬ'', БЕЗ * КАКОЙ-ЛИБО ЛЮБОЙ РАСШИРЕННОЙ ИЛИ ПОДРАЗУМЕВАЕМОЙ ГАРАНТИИ, ВКЛЮЧАЯ, * НО НЕ ОГРАНИЧИВАЯСЬ ЭТИМ, ГАРАНТИИ ВЫСОКОГО СПРОСА И ПРИГОДНОСТИ * ДЛЯ КОНКРЕТНОЙ ЦЕЛИ. АВТОР НИ ПРИ КАКИХ УСЛОВИЯХ НЕ ОТВЕТСТВЕНЕН * ЗА ЛЮБЫЕ УБЫТКИ - ПРЯМЫЕ, КОСВЕННЫЕ, СЛУЧАЙНЫЕ, СПЕЦИАЛЬНЫЕ, ОБРАЗЦОВЫЕ * ИЛИ ПОСЛЕДОВАТЕЛЬНЫЕ (ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ЭТИМ, ТРЕБОВАНИЯ * ЗАМЕНЫ ТОВАРА ИЛИ СЕРВИСА; ПОТЕРИ ИСПОЛЬЗОВАНИЯ, ДАННЫХ ИЛИ ВЫГОДЫ; * ИЛИ ПРЕКРАЩЕНИЕ БИЗНЕСА), ОДНАКО ВЫЗВАННЫЕ ПО ЛЮБОЙ ТЕОРИИ ОТВЕТСТВЕННОСТИ, * ЛИБО В КОНТРАКТЕ, ПРЯМОЙ ОТВЕТСТВЕННОСТИ, ЛИБО В НАРУШЕНИИ ЗАКОННЫХ ПРАВ * (ВКЛЮЧАЯ ТАК ИЛИ ИНАЧЕ НЕБРЕЖНОСТЬ), ВОЗНИКАЮЩИЕ ВСЕГДА ИЗ ИСПОЛЬЗОВАНИЯ * ЭТОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ, ДАЖЕ ЕСЛИ БЫЛО ПРЕДУПРЕЖДЕНИЕ О ВОЗМОЖНОСТИ * ТАКОГО ПОВРЕЖДЕНИЯ. * * Этот файл является частью стека uIP TCP/IP. * * $Id: resolv.h,v 1.4 2006/06/11 21:46:37 adam Exp $ * */ #ifndef __RESOLV_H__ #define __RESOLV_H__ typedef int uip_udp_appstate_t; void resolv_appcall(void); #define UIP_UDP_APPCALL resolv_appcall #include "uipopt.h" /** * Функция обратного вызова (callback), которая будет вызвана, когда найдено * имя хоста. * * Эта функция должна быть релаизована модулем, который использует * DNS resolver. Она вызывается, когда имя хоста найдено, или когда не найдено. * * \param name Указатель на имя, которое ищется. * \param ipaddr Указатель на 4-байтный массив, содержащий адрес IP имени хоста * или NULL, если имя не было найдено. */ void resolv_found(char *name, u16_t *ipaddr); /* Функции. */ void resolv_conf(u16_t *dnsserver); u16_t *resolv_getserver(void); void resolv_init(void); u16_t *resolv_lookup(char *name); void resolv_query(char *name); #endif /* __RESOLV_H__ */ /** @} */