dns.c

Screenshot Software:
dns.c
Szczegóły programowe:
Wersja: 20120805
Filmu: 20 Feb 15
Wywoływacz: William Ahern
Licencja: Wolny
Popularność: 84

Rating: nan/5 (Total Votes: 0)

dns.c jest wklęsłego, rekurencyjne i non-blocking Biblioteka rozpoznawania nazw DNS, który znajduje się w pliku sincle .c. Również działa świetnie jako rezolwerem zwrotnicy.
Rdzeń API zbudowany wokół rzeczywistego pakietu DNS; ogólny charakter samego DNS. To sprawia, zapytań i manipulacji rekordy inne niż A, AAAA i PTR znacznie łatwiejsze.
Ponownego uruchamiania iteratory rekord z określonym przez użytkownika sortowania. Iteracja nad domeną lub rekordów SRV w porządku semantycznego (czyli uprzywilejowane i priorytetowych) jest tak proste, jak:
dns_rr_foreach (i rr, pakiet, .typ = DNS_T_SRV, .sort = & dns_rr_i_order) {
& Nbsp; ...
}
Lub w restartowalnym sposób:
Przełącznik (my-> Stan) {
Sprawa 0:
& Nbsp; dns_rr_i_init (i zapalenia mięśnia> rr_i);
& Nbsp; my-> rr_i.type = DNS_T_SRV;
& Nbsp; my-> rr_i.sort = & dns_rr_i_order;
& Nbsp; my-> Stan ++;
Przypadek 1:
& Nbsp; while (dns_rr_grep (i rr, 1, i my-> rr_i, zapalenia mięśnia> pakietów, i błędu)) {
& Nbsp; & nbsp; & nbsp; ...
& Nbsp; & nbsp; & nbsp; / * Powrót do pętli zdarzeń * /
& Nbsp; }
}
Obsługuje "inteligentne" pytania. Gdy włączony przelicznika rdzenia, zapytania dotyczące NS domeną i rekordów SRV zawsze próbować rozwiązać nazwę kanoniczną hosta RDATA w rekord A. Gospodarze, które są nie-bailiwick i / lub dla których serwer autorytatywny nie zawiera kleju są automagicznie rozwiązany i powrócił w pakiecie odpowiedzi. Obsługiwane zarówno odgałęzienie i rekurencyjnych dawałaby przelicznika. "Inteligentne" rozdzielczość jest również wbudowany w informacji adresowej (tj getaddrinfo ()) API.
Randomizowane porty źródłowe i QIDs.
Bez blokowania, wklęsłych, getaddrinfo oparte iterator () Interfejs: dns_ai_open (), dns_ai_nextent (), dns_ai_close (). Semantycznie jak getaddrinfo (), ale również zajmuje typ rekordu. Iteracyjnego (struct addrinfo) obiektów nawet przy odpytywaniu o MX, NS, SRV (i inni) hosta. Jest mniej opóźnienie robi "inteligentne" pytania w ten sposób, ponieważ wszelkie niezbędne rekurencji może być odroczone (i najprawdopodobniej nie będzie konieczne, ponieważ pierwszy gospodarz jest prawdopodobnie wystarczająca).

Co jest nowy w tym wydaniu:.

  • Naprawiono błąd, gdzie dns_srv_print () nie udało się wydrukować z tyłu NUL

Co nowego w wersji 20100813:

  • Dodaj socket.c w contrib /. Używam i rozwój to za rok lub tak w ramach innych projektów. Koncepcyjnie to proste otoki wokół gniazd API BSD, która obsługuje wyszukiwania DNS i negocjacji SSL przejrzysty i asynchronicznie.
  • Po utworzeniu gniazda z so_open (), wywołujący wybiera odpowiednie tryby, np so_connect () i so_starttls (). Dzwoniący może wtedy czekać na ich zakończenie (oni powrócić EAGAIN jeśli to konieczne), lub bardziej wygodnie zignorować wynik i przejść bezpośrednio do próby odczytu i zapisu. Błędy z ostatnich państw, w tym EAGAIN, zostaną zwrócone na każdej próby odczytu lub zapisu, dopóki te państwa są kompletne.
  • Użyj so_pollfd () i so_events () tak jak odpowiedniki dns.c. Wracają, odpowiednio, odpowiednich deskryptorów i zdarzeń flagi w zależności od stanu wewnętrznego wykonuje. Aplikacja musi martwić się tylko o wydanie logicznych operacji odczytu / zapisu.

Co nowego w wersji 20100709:

  • Fix MinGW zbudować dodając dns_strsep wewnętrznego () i DNS_ETIMEDOUT.

Co nowego w wersji 20100708:

  • Sprawdź ważność długości zwracanej przez dns_d_expand () przed przepuszczenie go jako długość źródłowego dns_d_cleave () wewnątrz dns_hints_query () jeszcze może zrobić nieprawidłowy odczyt. Dzięki Anonim.
  • Tag rel-20100708 (d493a0f7d8f1d67ef312a7ca3e142660895b32d8).
  • UWAGA: Nie pamiętasz wpadać DNS_V_REL do uwolnienia 20100708, a ponieważ nowy interfejs statystyki był w bagażniku również powinien wpadł DNS_V_API. Teraz już za późno.

Co nowego w wersji 20100515:

  • Pętla na serwery nazw resolv.conf: options.attempts razy.
  • Wymuszanie SPF nazwa kanoniczna ograniczenia wyszukiwania podczas uruchamiania mechanizmów MX i PTR.
  • Dodaj dns_p_study (), aby dowiedzieć się i zakresy sekcja sklepu.
  • Śledzenie sekcji waha się w dns_p_push ().
  • dns_p_merge Refactor (), aby poprawić wydajność na dużych pakietów.
  • Dodaj dns_p_make () dla malloc'ing i zainicjowania nowego pakietu.
  • Wymuszanie SPF utrzymujące ograniczenia wyszukiwania. Zmieniono układ struct spf_limits w oczekiwaniu na egzekwowanie limitów MX i PTR zapytaniami gospodarzy.
  • Naprawiono błąd w instrukcji dla indeksów generatora VM skok o ponad 255.

Co nowego w wersji 20100416:.

  • Wsparcie Dodane SSHFP
  • Tag rel-20100416 (5bd9963e693510e485a1f081f6c98a95d84debfe).
  • 90% wskaźnik przejścia na testowej pakietu OpenSPF. Potrzebujesz do symulacji limity czasu, aby przejść testy TempError. Niektóre z testów gramatycznych są dyskusyjne.
  • Procesor Zestaw testów Dodane OpenSPF YAML. Wymaga libyaml.

Co nowego w wersji 0.5:

  • Naprawiono błąd, gdzie nie Przenieś się z & quot; wiążą & quot ; metoda & quot; pliku & quot; Metoda jeśli recurse flaga została wyłączona.
  • generator Wyszukaj może zmieniły qname. Tak więc, w dns_ai_nextent () canonicalize na qname z odpowiedzi, nie qname pierwotnie przedstawiony do rozpoznawania nazw.

Podobne oprogramowanie

ZoneMaker
ZoneMaker

3 Jun 15

Open DHCP Server
Open DHCP Server

14 Apr 15

DynDNS
DynDNS

3 Jun 15

Komentarze do dns.c

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!