]>
Commit | Line | Data |
---|---|---|
6aa67a8e | 1 | Summary: Advanced, easy to use, asynchronous-capable DNS client library |
c9fd767b JR |
2 | Summary(pl.UTF-8): Zaawansowana, prosta w użyciu, asynchroniczna biblioteka kliencka DNS |
3 | Summary(ru.UTF-8): Клиентская библиотека DNS с возможностью асинхронных запросов | |
4 | Summary(uk.UTF-8): Клієнтська бібліотека DNS з можливістю асинхронних запитів | |
66fada20 | 5 | Name: adns |
29d4df9a JB |
6 | Version: 1.4 |
7 | Release: 1 | |
585b659b | 8 | License: GPL v2+ |
71020c0c | 9 | Group: Libraries |
71020c0c | 10 | Source0: ftp://ftp.chiark.greenend.org.uk/users/ian/adns/%{name}-%{version}.tar.gz |
29d4df9a | 11 | # Source0-md5: 88bc7bbf3f62a8d4fb186b8f72ead853 |
71020c0c | 12 | Patch0: %{name}-DESTDIR.patch |
6aa67a8e | 13 | URL: http://www.chiark.greenend.org.uk/~ian/adns/ |
71020c0c | 14 | BuildRequires: autoconf |
71020c0c | 15 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
6aa67a8e | 16 | |
17 | %description | |
18 | adns is a resolver library for C (and C++) programs. In contrast with | |
19 | the existing interfaces, gethostbyname et al and libresolv, it has the | |
20 | following features: | |
c313b152 | 21 | - It is reasonably easy to use for simple programs which just want to |
22 | translate names to addresses, look up MX records, etc. | |
23 | - It can be used in an asynchronous, non-blocking, manner. Many | |
24 | queries can be handled simultaneously. | |
25 | - Responses are decoded automatically into a natural representation | |
26 | for a C program - there is no need to deal with DNS packet formats. | |
27 | - Sanity checking (eg, name syntax checking, reverse/forward | |
28 | correspondence, CNAME pointing to CNAME) is performed automatically. | |
29 | - Time-to-live, CNAME and other similar information is returned in an | |
30 | easy-to-use form, without getting in the way. | |
31 | - There is no global state in the library; resolver state is an opaque | |
32 | data structure which the client creates explicitly. A program can have | |
33 | several instances of the resolver. | |
34 | - Errors are reported to the application in a way that distinguishes | |
35 | the various causes of failure properly. | |
36 | - Understands conventional resolv.conf, but this can overridden by | |
37 | environment variables. | |
38 | - Flexibility. For example, the application can tell adns to: ignore | |
39 | environment variables (for setuid programs), disable sanity checks eg | |
40 | to return arbitrary data, override or ignore resolv.conf in favour of | |
41 | supplied configuration, etc. | |
42 | - Believed to be correct ! For example, will correctly back off to TCP | |
43 | in case of long replies or queries, or to other nameservers if several | |
44 | are available. It has sensible handling of bad responses etc. | |
71020c0c | 45 | |
c9fd767b JR |
46 | %description -l pl.UTF-8 |
47 | adns jest biblioteką rozwiązywania nazw dla programów w C (i C++). W | |
48 | przeciwieństwie do pozostałych interfejsów - gethostbyname itd. oraz | |
49 | libresolv, ma następujące możliwości: | |
50 | - Jest łatwa w użyciu dla prostych programów, które mają tylko | |
51 | tłumaczyć nazwy na adresy, szukać rekordów MX itp. | |
52 | - Może być używana w sposób asynchroniczny, nieblokujący; wiele | |
53 | zapytań może być obsługiwanych jednocześnie. | |
54 | - Odpowiedzi są dekodowane automatycznie do reprezentacji naturalnej | |
55 | dla programów w C - nie trzeba obsługiwać formatów pakietów DNS | |
56 | - Sprawdzanie poprawności (składni, zgodności rekordów odwrotnych i | |
57 | prostych, CNAME wskazujących na CNAME) jest automatyczne. | |
58 | - TTL, CNAME i podobne informacje są zwracane w postaci łatwej do | |
c313b152 | 59 | wykorzystania |
c9fd767b JR |
60 | - Nie ma globalnego stanu w bibliotece; stan resolvera jest strukturą |
61 | danych tworzoną przez klienta. Program może trzymać wiele instancji | |
c313b152 | 62 | resolvera. |
c9fd767b JR |
63 | - Błędy są zgłaszane aplikacji w sposób rozróżniający przyczyny. |
64 | - Rozumie konwencjonalny plik resolv.conf, ale to może być zmienione | |
65 | przez zmienne środowiskowe. | |
66 | - Konfigurowalność. Na przykład aplikacja może kazać adns: ignorować | |
67 | zmienne środowiskowe (dla programów setuid), wyłączyć sprawdzanie | |
68 | poprawności, zignorować resolv.conf na rzecz własnej konfiguracji. | |
69 | - Podobno jest poprawna! Na przykład, prawidłowo przełącza się na TCP | |
70 | w przypadku długich zapytań lub odpowiedzi, albo na inne serwery jeśli | |
71 | jest kilka dostępnych. Ma rozsądną obsługę złych odpowiedzi. | |
72 | ||
73 | %description -l ru.UTF-8 | |
74 | adns - это библиотека резолвера для программ на C (и C++). В отличие | |
75 | от существующих интерфейсов, gethostbyname с компанией и libresolv. | |
76 | она имеет следующие возможности: | |
77 | - Достаточно легкая для использования в простых программах, которым | |
78 | нужно всего лишь транслировать имена в адреса, искать MX записи, и | |
79 | т.п. | |
80 | - Может использоваться асинхронным, неблокирующим способом. Множество | |
81 | запросов может обрабатываться одновременно. | |
82 | - Ответы автоматически декодируются в естествееное для C программ | |
83 | представление - нет необходимости иметь дело с форматами DNS пакета. | |
84 | - Проверка на корректность (например, проверка синтаксической | |
85 | допустимости имен, соответсвие обратного и прямого резолвинга, CNAME, | |
86 | указывающий на CNAME) выполняется автоматически. | |
87 | - Время жизни записи (TTL), CNAME и другая подобная информация | |
88 | выдается в легкой для использования форме. | |
89 | - Ошибки сообщаются приложению таким образом, что разные причины их | |
90 | возникновения различаются правильно. | |
91 | - Понимает обычный resolv.conf, но это может быть изменено переменными | |
92 | среды. | |
93 | - Гибкость. Например, программа может заказать adns: игнорировать | |
94 | переменные среды (для setuid программ), отключить проверки | |
95 | корректности для возврата данных такими, как они есть, игнорировать | |
96 | resolv.conf. пользуюсь собственной конфигурацией и т.п. | |
97 | - Считается корректной! Например, корректно переключается на TCP в | |
98 | случае длинных ответов или запросов, или на другие сервера имен, если | |
99 | доступно несколько. Разбирается с некоректными ответами и т.д. | |
100 | ||
101 | %description -l uk.UTF-8 | |
102 | adns - це бібліотека резолвера для програм на C (та C++). На відміну | |
103 | від існуючих інтерфейсів, gethostbyname з компанією та libresolv, вона | |
104 | має наступні можливості: | |
105 | - Досить легка для використання в простих програмах, які лише | |
106 | транслюють імена в адреси, шукають MX записи, тощо. | |
107 | - Може використовуватись асинхронним, неблокуючим способом. Багато | |
108 | запитів можуть оброблятися одночасно. | |
109 | - Відповіді автоматично декодуються в природнє для C програм | |
110 | відображення - немає необхідності мати справу з форматами DNS пакету. | |
111 | - Перевірка на коректність (наприклад, перевірка синтаксичної | |
112 | допустимості імені, відповідність зворотнього та прямого резолвінгу, | |
113 | CNAME, що вказує на CNAME) виконується автоматично. | |
114 | - Час життя запису (TTL), CNAME та інша подібна інформація видається в | |
115 | легкій для використання формі. | |
116 | - Помилки повідомляються прикладній програмі таким чином, що різні | |
117 | причини їх виникнення розрізняються правильно. | |
118 | - Розуміє звичний resolv.conf, але це може бути відмінено змінними | |
119 | середовища. | |
120 | - Гнучкість. Наприклад, програма може замовити adns: ігнорувати змінні | |
121 | середовища (для setuid програм), відключити перевірки коректності для | |
122 | повернення даних такими як вони є, ігнорувати resolv.conf, | |
123 | користуючись власною конфігурацією та ін. | |
124 | - Вважається коректною! Наприклад, коректно переключається на TCP у | |
125 | випадку довгих відповідей чи запитів, чи на інші сервери імен, коли | |
126 | доступно кілька. Розбирається з некоректними відповідями та ін. | |
afbefd08 | 127 | |
71020c0c | 128 | %package devel |
129 | Summary: Asynchronous-capable DNS client library - development files | |
c9fd767b JR |
130 | Summary(pl.UTF-8): Asynchroniczna biblioteka kliencka DNS - pliki dla programistów |
131 | Summary(ru.UTF-8): Файлы для разработки с использованием библиотеки adns | |
132 | Summary(uk.UTF-8): Файли для розробки з використанням бібліотеки adns | |
71020c0c | 133 | Group: Development/Libraries |
cfdf7abc | 134 | Requires: %{name} = %{version}-%{release} |
71020c0c | 135 | |
136 | %description devel | |
137 | Asynchronous-capable DNS client library - development files. | |
138 | ||
c9fd767b JR |
139 | %description devel -l pl.UTF-8 |
140 | Asynchroniczna biblioteka kliencka DNS - pliki dla programistów. | |
66fada20 | 141 | |
c9fd767b JR |
142 | %description devel -l ru.UTF-8 |
143 | adns - это библиотека резолвера для программ на C (и C++). Этот пакет | |
144 | содержит файлы, необходимые для разработки программ. | |
afbefd08 | 145 | |
c9fd767b JR |
146 | %description devel -l uk.UTF-8 |
147 | adns - це бібліотека резолвера для програм на C (та C++). Цей пакет | |
148 | містить файли, необхідні для розробки програм. | |
afbefd08 | 149 | |
71020c0c | 150 | %package static |
151 | Summary: Asynchronous-capable DNS client library - static library | |
c9fd767b JR |
152 | Summary(pl.UTF-8): Asynchroniczna biblioteka kliencka DNS - wersja statyczna |
153 | Summary(ru.UTF-8): Статические библиотеки для разработки с использованием библиотеки adns | |
154 | Summary(uk.UTF-8): Статичні бібліотеки для розробки з використанням бібліотеки adns | |
71020c0c | 155 | Group: Development/Libraries |
cfdf7abc | 156 | Requires: %{name}-devel = %{version}-%{release} |
71020c0c | 157 | |
158 | %description static | |
159 | Asynchronous-capable DNS client library - static library. | |
160 | ||
c9fd767b | 161 | %description static -l pl.UTF-8 |
66fada20 JB |
162 | Asynchroniczna biblioteka kliencka DNS - biblioteka statyczna. |
163 | ||
c9fd767b JR |
164 | %description static -l ru.UTF-8 |
165 | adns - это библиотека резолвера для программ на C (и C++). Этот пакет | |
166 | содержит статические библиотеки для разработки программ. | |
afbefd08 | 167 | |
c9fd767b JR |
168 | %description static -l uk.UTF-8 |
169 | adns - це бібліотека резолвера для програм на C (та C++). Цей пакет | |
170 | містить статичні бібіліотеки для розробки програм. | |
afbefd08 | 171 | |
71020c0c | 172 | %package progs |
173 | Summary: Asynchronous-capable DNS client library - utility programs | |
c9fd767b | 174 | Summary(pl.UTF-8): Asynchroniczna biblioteka kliencka DNS - narzędzia |
71020c0c | 175 | Group: Development/Libraries |
cfdf7abc | 176 | Requires: %{name} = %{version}-%{release} |
71020c0c | 177 | |
b3ee6d17 | 178 | %description progs |
66fada20 JB |
179 | DNS utility programs: adns also comes with a number of utility |
180 | programs for use from the command line and in scripts: | |
c313b152 | 181 | - adnslogres is a much faster version of Apache's logresolv program, |
182 | - adnsresfilter is a filter which copies its input to its output, | |
183 | replacing IP addresses by the corresponding names, without unduly | |
184 | delaying the output. For example, you can usefully pipe the output of | |
185 | netstat -n, tcpdump -ln, and the like, into it. | |
186 | - adnshost is a general-purpose DNS lookup utility which can be used | |
187 | easily in from the command line and from shell scripts to do simple | |
188 | lookups. In a more advanced mode it can be used as a general-purpose | |
189 | DNS helper program for scripting languages which can invoke and | |
190 | communicate with subprocesses. | |
6aa67a8e | 191 | |
c9fd767b JR |
192 | %description progs -l pl.UTF-8 |
193 | Narzędzia DNS: adns przychodzi z paroma programami narzędziowymi do | |
194 | użytku z linii poleceń lub w skryptach: | |
c313b152 | 195 | - adnslogres to o wiele szybsza wersja programu logresolv z Apache |
c9fd767b JR |
196 | - adnsresfilter to filtr kopiujący wejście na wyjście zamieniając |
197 | adresy IP na nazwy, bez niepotrzebnych opóźnień. Na przykład możesz na | |
198 | wejście wpuścić wyjście z netstat -n, tcpdump -ln itp. | |
199 | - adnshost to ogólnego przeznaczenia narzędzie do odpytywania DNS, | |
200 | proste w użyciu z linii poleceń i skryptów powłoki. | |
66fada20 | 201 | |
6aa67a8e | 202 | %prep |
6aa67a8e | 203 | %setup -q |
71020c0c | 204 | %patch0 -p1 |
6aa67a8e | 205 | |
206 | %build | |
cfdf7abc | 207 | # aclocal.m4 is only local, don't run aclocal |
e086a4c7 | 208 | %{__autoconf} |
71020c0c | 209 | %configure \ |
210 | --enable-dynamic | |
211 | %{__make} | |
6aa67a8e | 212 | |
213 | %install | |
71020c0c | 214 | rm -rf $RPM_BUILD_ROOT |
6aa67a8e | 215 | |
71020c0c | 216 | %{__make} install \ |
217 | DESTDIR=$RPM_BUILD_ROOT | |
6aa67a8e | 218 | |
f01d5757 JB |
219 | cd $RPM_BUILD_ROOT%{_libdir} |
220 | ln -sf libadns.so.*.* libadns.so | |
6aa67a8e | 221 | |
6aa67a8e | 222 | %clean |
223 | rm -fr $RPM_BUILD_ROOT | |
224 | ||
c313b152 | 225 | %post -p /sbin/ldconfig |
226 | %postun -p /sbin/ldconfig | |
66fada20 | 227 | |
6aa67a8e | 228 | %files |
71020c0c | 229 | %defattr(644,root,root,755) |
88f064e7 | 230 | %doc README TODO changelog |
71020c0c | 231 | %attr(755,root,root) %{_libdir}/lib*.so.*.* |
6aa67a8e | 232 | |
71020c0c | 233 | %files devel |
234 | %defattr(644,root,root,755) | |
71020c0c | 235 | %attr(755,root,root) %{_libdir}/lib*.so |
85a06bd1 | 236 | %{_includedir}/* |
6aa67a8e | 237 | |
71020c0c | 238 | %files static |
239 | %defattr(644,root,root,755) | |
240 | %{_libdir}/*.a | |
6aa67a8e | 241 | |
71020c0c | 242 | %files progs |
243 | %defattr(644,root,root,755) | |
244 | %attr(755,root,root) %{_bindir}/* |