3 %bcond_with ldap # with support for ldap storage
6 Summary(es.UTF-8): Servidor DHCP
7 Summary(pl.UTF-8): Serwer DHCP
8 Summary(pt_BR.UTF-8): Servidor DHCP (Protocolo de configuração dinâmica de hosts)
14 License: distributable
15 Group: Networking/Daemons
16 Source0: ftp://ftp.isc.org/isc/dhcp/%{name}-%{version}%{_pre}.tar.gz
17 # Source0-md5: d09be1a80982b78482e8fbd416924468
19 Source2: %{name}-relay.init
20 Source3: %{name}-relay.sysconfig
21 Source4: %{name}d.conf.sample
22 Source5: %{name}.sysconfig
23 Patch0: %{name}-dhclient.script.patch
24 Patch1: %{name}-if_buffer_size.patch
25 # http://home.ntelos.net/~masneyb/dhcp-3.0.5-ldap-patch
26 Patch2: %{name}-ldap.patch
27 Patch3: %{name}-client-script-redhat.patch
28 Patch4: %{name}-3.0.3-x-option.patch
29 Patch5: %{name}-typo.patch
30 Patch6: %{name}-arg-concat.patch
31 Patch7: %{name}-split-VARDB.patch
32 URL: http://www.isc.org/sw/dhcp/
34 %{?with_ldap:BuildRequires: openldap-devel}
35 %{?with_ldap:BuildRequires: openssl-devel}
36 BuildRequires: rpmbuild(macros) >= 1.268
37 Requires(post): fileutils
38 Requires(post,preun): /sbin/chkconfig
39 Requires: rc-scripts >= 0.2.0
41 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44 DHCP (Dynamic Host Configuration Protocol) is a protocol which allows
45 individual devices on an IP network to get their own network
46 configuration information (IP address, subnetmask, broadcast address,
47 etc.) from a DHCP server. The overall purpose of DHCP is to make it
48 easier to administer a large network.
50 %description -l es.UTF-8
51 DHCP permite que hosts en una red TCP/IP soliciten y tengan sus
52 direcciones IP alocadas dinámicamente, permite también descubrir
53 información sobre la red en que están conectados. BOOTP provee una
54 funcionalidad similar, con ciertas restricciones. Este servidor
57 %description -l pl.UTF-8
58 Serwer DHCP (Dynamic Host Configuration Protocol).
60 DHCP to protokół pozwalający urządzeniom pracującym w sieci IP na
61 pobieranie ich konfiguracji IP (adresu, maski podsieci, adresu
62 rozgłoszeniowego itp.) z serwera DHCP. Ułatwia on administrowanie
65 %description -l pt_BR.UTF-8
66 DHCP permite que hosts numa rede TCP/IP requisitem e tenham seus
67 endereços IP alocados dinamicamente, permite também descobrir
68 informações sobre a rede em que estão conectados. BOOTP provê uma
69 funcionalidade similar, com certas restrições. Este servidor também
70 atende aquelas requisições. Esta versão é ainda considerada um
75 Summary(pl.UTF-8): Klient DHCP
76 Group: Networking/Daemons
77 Requires(post): fileutils
85 Dynamic Host Configuration Protocol Client.
87 %description client -l pl.UTF-8
88 Klient DHCP (Dynamic Host Configuration Protocol).
91 Summary: DHCP Relay Agent
92 Summary(pl.UTF-8): Agent przekazywania informacji DHCP
93 Group: Networking/Daemons
94 Requires(post): fileutils
95 Requires(post,preun): /sbin/chkconfig
96 Requires: rc-scripts >= 0.2.0
99 Dhcp relay is a relay agent for DHCP packets. It is used on a subnet
100 with DHCP clients to "relay" their requests to a subnet that has a
101 DHCP server on it. Because DHCP packets can be broadcast, they will
102 not be routed off of the local subnet. The DHCP relay takes care of
105 %description relay -l pl.UTF-8
106 Agent przekazywania DHCP (Dynamic Host Configuration Protocol) między
107 podsieciami. Ponieważ komunikaty DHCP mogą być przekazywane w formie
108 rozgłoszeniowej, bez tego agenta nie zostaną przerutowane do innej
112 Summary: DHCP development includes and libs
113 Summary(pl.UTF-8): Pliki nagłówkowe i biblioteki dla oprogramowania DHCP
114 Group: Development/Libraries
117 Includes OMAPI and dhcptl libraries.
119 OMAPI is an programming layer designed for controlling remote
120 applications, and for querying them for their state. It is currently
121 used by the ISC DHCP server.
123 The dhcpctl set of functions provide an API that can be used to
124 communicate with and manipulate a running ISC DHCP server.
126 %description devel -l pl.UTF-8
127 Zawiera biblioteki OMAPI oraz dhcpctl.
129 OMAPI to warstwa programowa stworzona do kontroli zdalnych aplikacji i
130 odpytywania o ich stan. Aktualnie jest używana przez serwer ISC DHCP.
132 dhcpctl to zbiór funkcji tworzących API, które może być używane do
133 komunikacji z działającym serwerem ISC DHCP i jego kontroli.
136 %setup -q -n %{name}-%{version}%{_pre}
140 %{?with_ldap:%patch2 -p1}
141 # These two patches are required for dhcdbd to function
150 # NOTE: this is not autoconf configure - do not change it to %%configure
155 CC_OPTIONS="%{rpmcflags} \
156 -D_PATH_DHCPD_DB=\\\"/var/lib/%{name}/dhcpd.leases\\\" \
157 -DEXTENDED_NEW_OPTION_INFO \
158 -D_PATH_DHCLIENT_DB=\\\"/var/lib/dhclient/dhclient.leases\\\" \
160 LFLAGS="%{rpmldflags}" \
162 VARDBS="/var/lib/%{name}"
163 VARDBC="/var/lib/dhclient"
166 rm -rf $RPM_BUILD_ROOT
167 install -d $RPM_BUILD_ROOT{/sbin,%{_sbindir},%{_bindir},%{_mandir}/man{5,8}} \
168 $RPM_BUILD_ROOT{/var/lib/%{name},%{_sysconfdir}/{rc.d/init.d,sysconfig}}
171 DESTDIR=$RPM_BUILD_ROOT \
175 INCDIR=%{_includedir} \
176 ADMMANDIR=%{_mandir}/man8 \
178 FFMANDIR=%{_mandir}/man5 \
179 LIBMANDIR=%{_mandir}/man3 \
181 USRMANDIR=%{_mandir}/man1 \
183 VARDBS=/var/lib/%{name} \
184 VARDBC=/var/lib/dhclient \
187 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/dhcpd
188 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/dhcp-relay
189 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/dhcp-relay
190 install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/dhcpd.conf
191 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/dhcpd
193 mv $RPM_BUILD_ROOT%{_mandir}/man3/omshell.3 \
194 $RPM_BUILD_ROOT%{_mandir}/man1/omshell.1
196 install client/scripts/linux $RPM_BUILD_ROOT%{_sbindir}/dhclient-script
198 touch $RPM_BUILD_ROOT/var/lib/%{name}/dhcpd.leases
199 touch $RPM_BUILD_ROOT/var/lib/dhclient/dhclient.leases
202 rm -rf $RPM_BUILD_ROOT
205 /sbin/chkconfig --add dhcpd
206 touch /var/lib/%{name}/dhcpd.leases
207 %service dhcpd restart "dhcpd daemon"
210 if [ "$1" = "0" ];then
212 /sbin/chkconfig --del dhcpd
216 if [ -f /var/lib/dhcp/dhclient.leases.rpmsave ]; then
217 mv /var/lib/dhcp/dhclient.leases.rpmsave /var/lib/dhclient/dhclient.leases
221 /sbin/chkconfig --add dhcp-relay
222 if [ -f /var/lock/subsys/dhcrelay ]; then
223 mv -f /var/lock/subsys/{dhcrelay,dhcp-relay}
225 %service dhcp-relay restart "dhcrelay daemon"
228 if [ "$1" = "0" ];then
229 %service dhcp-relay stop
230 /sbin/chkconfig --del dhcp-relay
233 %triggerpostun -- dhcp < 3.0
234 if [ "`grep ddns-update-style /etc/dhcpd.conf`" = "" ]; then
236 echo "ddns-update-style none;" > /etc/dhcpd.conf.tmp
237 echo "" >> /etc/dhcpd.conf.tmp
238 cat /etc/dhcpd.conf >>/etc/dhcpd.conf.tmp
239 mv -f /etc/dhcpd.conf.tmp /etc/dhcpd.conf
243 %defattr(644,root,root,755)
244 %doc doc/* README RELNOTES dhcpd.conf.sample LICENSE
245 %{?with_ldap:%doc contrib/*}
247 %{_mandir}/man5/dhcp*
248 %{_mandir}/man8/dhcp*
249 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/dhcpd
250 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dhcpd.conf
251 %attr(755,root,root) %{_bindir}/*
252 %attr(755,root,root) %{_sbindir}/dhcpd
253 %attr(754,root,root) /etc/rc.d/init.d/dhcpd
254 %attr(750,root,root) %dir /var/lib/%{name}
255 %ghost /var/lib/%{name}/dhcpd.leases
258 %defattr(644,root,root,755)
259 %attr(755,root,root) /sbin/dhclient
260 %attr(755,root,root) /sbin/dhclient-script
261 %{_mandir}/man[58]/dhclient*
262 %attr(750,root,root) %dir /var/lib/dhclient
263 %ghost /var/lib/dhclient/dhclient.leases
266 %defattr(644,root,root,755)
267 %{_mandir}/man8/dhcrelay*
268 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/dhcp-relay
269 %attr(755,root,root) %{_sbindir}/dhcrelay
270 %attr(754,root,root) /etc/rc.d/init.d/dhcp-relay
273 %defattr(644,root,root,755)