dns.c

Софтуер снимки:
dns.c
Софтуер детайли:
Версия: 20120805
Дата на качване: 20 Feb 15
Розробник: William Ahern
Разрешително: Безплатно
Популярност: 84

Rating: nan/5 (Total Votes: 0)

dns.c е Възстановителни, рекурсивни и без блокиране на DNS Резолвер библиотека, която се намира във файл sincle .c. Също така работи чудесно като мъниче резолвера.
Ядро API изградена около действителната DNS пакети; като родово като самата DNS. Това прави заявки и манипулиране на записи, различни от A, AAAA, и PTR много по-лесно.
Restartable рекордни итератори с потребителя, посочени сортиране. Итерации над MX или SRV записи в семантичен ред (т.е. за предпочитания и приоритет) е толкова просто като:
dns_rr_foreach (& RR, пакети, .type = DNS_T_SRV, .sort = & dns_rr_i_order) {
& Nbsp; ...
}
Или в restartable начин:
превключвател (изгарям> членка) {
При 0:
& Nbsp; dns_rr_i_init (и изгарям> rr_i);
& Nbsp; изгарям> rr_i.type = DNS_T_SRV;
& Nbsp; изгарям> rr_i.sort = & dns_rr_i_order;
& Nbsp; изгарям> държавната ++;
При 1:
& Nbsp; докато (dns_rr_grep (& RR, 1, и изгарям> rr_i, изгарям> пакети, и грешка)) {
& Nbsp; & Nbsp; & Nbsp; ...
& Nbsp; & Nbsp; & Nbsp; / * Завръщане в събитие линия * /
& Nbsp; }
}
Поддържа "умни" заявки. Когато е включено в основната резолвера, заявки за NS, MX, и SRV записи винаги ще се опитат да разрешат името каноничното хост RDATA в един запис. Силите, които са не по-поле на действие и / или за които авторитетното сървърът не предоставят лепило са автоматична решени и върнати в пакета отговор. Подкрепа за двамата все още мъниче и рекурсивни резолвера инстанцирания. "Smart" резолюцията също е вграден в инфото на адрес (т.е. getaddrinfo ()) API.
Рандомизирано изходните пристанища и QIDs.
Без блокиране, входящ, итератор базирани getaddrinfo () интерфейс: dns_ai_open (), dns_ai_nextent (), dns_ai_close (). Семантично точно като getaddrinfo (), но също така изразява типа запис. Обхождане (структура addrinfo) обекти, дори когато заявки за MX, NS, SRV (и др) хост. Има по-малка латентност прави "умни" запитвания по този начин, тъй като всички необходими рекурсия може да се отлага (и по всяка вероятност няма да е необходимо, тъй като първият домакин е вероятно достатъчно).

Какви е нова в тази версия:.

  • Fix бъг, при dns_srv_print () не успя да отпечатате зад гърба NUL характер

Какво ново във версия 20100813:

  • Добави socket.c в вноската /. Аз бях с и развитие на това за една година или така в рамките на други проекти. Концептуално това е просто обвивка около BSD контакти API на който обработва DNS заявки и SSL преговори прозрачно и асинхронно.
  • След създаването на гнездо с so_open (), на обаждащия се определят подходящите начини, например so_connect () и so_starttls (). Отсрещната страна може след това да ги чакам да завърши (те ще се върнат EAGAIN ако е необходимо), или още по-добре игнорира резултата и да се премести директно да пристъпите чете и пише. Грешки от предходни състояния, включително EAGAIN, ще бъдат върнати на всеки да четат или пишат опити, докато тези държави са пълни.
  • Използване so_pollfd () и so_events () точно като партньорите dns.c. Те се връщат, съответно, подходящи ЕВРОВОК и събития знамена в зависимост от които вътрешното състояние се изпълнява. Заявлението трябва да се тревожи само за издаване на логически операции четене / запис.

Какво ново във версия 20100709:

  • Fix MinGW изгради чрез добавяне на вътрешния dns_strsep () и DNS_ETIMEDOUT.

Какво ново във версия 20100708:

  • Проверка на валидността на дължината върнат от dns_d_expand () преди тя преминава като дължината на източник на dns_d_cleave () вътре в dns_hints_query () друго можем да направим невалиден четене. Благодарение на Anonymous.
  • Tag отн-20100708 (d493a0f7d8f1d67ef312a7ca3e142660895b32d8).
  • ЗАБЕЛЕЖКА: Забравих да избутам DNS_V_REL за 20100708 освобождаването, и поради новия интерфейс на статистика беше в багажника също е трябвало да се сблъска DNS_V_API. Твърде късно е сега.

Какво ново във версия 20100515:

  • Loop над сървърите на имената resolv.conf: options.attempts пъти.
  • Привеждане в изпълнение на SPF канонично име граници заявки, когато работи MX и PTR механизми.
  • Добави dns_p_study (), за да се научат и раздел магазин диапазони.
  • Следете раздел варира в dns_p_push ().
  • Refactor dns_p_merge (), за да се подобри работата на големи пакети.
  • Добави dns_p_make () за malloc'ing и инициализиране на нов пакет.
  • Привеждане в изпълнение на SPF план границите на заявки. Промяна на оформлението на структурата spf_limits в очакване на прилагане на лимити на MX и PTR домакини запитвания.
  • Fix бъг в генератора инструкция VM за скок индекси на повече от 255.

Какво ново във версия 20100416:.

  • Добавена е поддръжка SSHFP
  • Tag отн-20100416 (5bd9963e693510e485a1f081f6c98a95d84debfe).
  • 90% ставка преминаване на тестов пакет OpenSPF. Необходимо е да се симулира таймаутите да премине тестовете за TempError. Някои от тестовете на граматиката са спорно.
  • Добавено OpenSPF YAML тестов пакет процесор. Изисква libyaml.

Какво ново във версия 0.5:

  • Fix бъг, където ние не помощна от & quot; свързват & quot ; метод за & quot; файл & quot; метод, ако рекурсивно флаг бе забранено.
  • Search генератор може да са се променили qname. Така че, в dns_ai_nextent () канонизира за qname от отговора, не на qname първоначално представен на резолвера.

Подобен софтуер

NSD
NSD

17 Feb 15

hrdns
hrdns

14 Apr 15

redWall Firewall
redWall Firewall

11 May 15

Dnsmasq
Dnsmasq

2 Sep 17

Коментари към dns.c

Коментари не е намерена
добавите коментар
Включете на изображения!