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 първоначално представен на резолвера.

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

SendIP
SendIP

3 Jun 15

pdnsd
pdnsd

15 Apr 15

HubDNS
HubDNS

11 May 15

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

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