]> git.pld-linux.org Git - packages/rsync.git/blame - rsync.spec
- rel 4; we use internal (modified) zlib, so add CVE fixes for it
[packages/rsync.git] / rsync.spec
CommitLineData
9323ad32
JR
1# TODO:
2# 3.1.3 rsyncd segfaults very early in server rsync:// mode (both inetd and standalone)
3# rsync[27223]: segfault at 7468 ip 00007f4281c56e81 sp 00007ffc29186160 error 4 in libc-2.27.so[7f4281bd3000+1b4000]
b555150c 4#
18124c65 5# Conditional build:
6%bcond_with rsh # set remote shell command to rsh instead of ssh (old behaviour)
b913b1dd 7%bcond_without fadvise # apply fadvise patch
83e6a663 8%bcond_with tests # perform "make test"
18124c65 9#
082eeb69
ER
10%ifarch alpha
11%undefine with_tests
12%endif
e1feaa4b 13Summary: Program for efficient remote updates of files
24cc1053
ER
14Summary(es.UTF-8): Programa para actualizar archivos remotos de forma eficiente
15Summary(ko.UTF-8): 네트워크를 통한 파일동기화를 위한 프로그램
16Summary(pl.UTF-8): Program do wydajnego zdalnego uaktualniania plików
17Summary(pt_BR.UTF-8): Programa para atualizar arquivos remotos de forma eficiente
18Summary(ru.UTF-8): Программа для эффективного удаленного обновления файлов
19Summary(uk.UTF-8): Програма для ефективного віддаленого оновлення файлів
20Summary(zh_CN.UTF-8): [通讯]传输工具
21Summary(zh_TW.UTF-8): [喙啪]\e$(B6G?i火(c\e(B
44a71ba1 22Name: rsync
5412de7b 23Version: 3.1.3
fda2b22e 24Release: 4
615041e0 25Epoch: 1
c9e14be2 26License: GPL v3+
b7135bf0 27Group: Networking/Utilities
5412de7b
ER
28Source0: https://rsync.samba.org/ftp/rsync/%{name}-%{version}.tar.gz
29# Source0-md5: 1581a588fde9d89f6bc6201e8129afaf
9cb7906f 30Source1: https://rsync.samba.org/ftp/rsync/%{name}-patches-%{version}.tar.gz
5412de7b 31# Source1-md5: 753fc37ffc277571c69135e8bc5fae9d
61a6555f
AM
32Source2: %{name}.inet
33Source3: %{name}.init
34Source4: %{name}.sysconfig
35Source5: %{name}d.logrotate
ba8c40ae 36Patch100: %{name}-fixes.patch
d32c1932 37Patch0: %{name}-config.patch
9cb7906f
ER
38Patch1: %{name}-fadvise.patch
39Patch2: %{name}-noatime.patch
fda2b22e
AM
40Patch3: CVE-2016-9840.patch
41Patch4: CVE-2016-9841.patch
42Patch5: CVE-2016-9842.patch
43Patch6: CVE-2016-9843.patch
5412de7b 44URL: https://rsync.samba.org/
148780a3 45BuildRequires: acl-devel
ee3bf881 46BuildRequires: autoconf >= 2.59
fd592fcf 47BuildRequires: automake
bbd47287 48BuildRequires: popt-devel
36bd60dd 49BuildRequires: rpmbuild(macros) >= 1.318
9e694c62 50BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
f6135b0e 51
94b2676a 52%define _duplicate_files_terminate_build 0
b555150c
JB
53%define _sysconfdir /etc/rsyncd
54
f6135b0e 55%description
56rsync is a replacement for rcp that has many more features.
57
58rsync uses the "rsync algorithm" which provides a very fast method for
59bringing remote files into sync. It does this by sending just the
60differences in the files across the link, without requiring that both
61sets of files are present at one of the ends of the link beforehand.
62
63A technical report describing the rsync algorithm is included with
854040a4 64this package.
f6135b0e 65
829ded76
JR
66%description -l es.UTF-8
67rsync es un substituto más rápido y flexible para rcp que permite la
68sincronización de archivos o directorios, vía red, de forma rápida y
69eficiente, entre diferentes máquinas transfiriendo solamente las
1d21ccde 70diferencias entre estos directorios de forma compactada. No necesita
829ded76
JR
71que ninguna de las máquinas tengan una copia de lo que está en la
72otra. Está disponible en este paquete, una relación técnica
1d21ccde 73describiendo el algoritmo usado por el rsync.
74
829ded76
JR
75%description -l ko.UTF-8
76Rsync는 원격 호스트 파일을 매우 빨리 동기화하는데 신뢰할만한
77알고리즘을 사용한다. Rsync는 파일의 전체를 보내는 것 대신에 네트웍을
78통해 파일의 다른 부분만을 전송하기 때문에 빠르다. Rsync는 강력한 미러
79프로세스 혹은 rcp 커멘드를 통한 더 우수한 대체용으로써 사용된다. rsync
80알고리즘을 묘사하는 기술적인 내용은 이 꾸러미에 포함되어 있다.
81
82%description -l pl.UTF-8
83Rsync jest zamiennikiem programu rcp z bardziej rozbudowaną składnią
84poleceń. Program ten używa efektywnego algorytmu "rsync" w czasie
85komunikacji i transportu plików do systemu zdalnego. Dokumentacja
86techniczna nowego algorytmu została również dołączona do pakietu.
87
88%description -l pt_BR.UTF-8
89O rsync é um substituto mais rápido e flexível para o rcp permitindo
90sincronização de arquivos ou diretórios via rede de forma rápida e
91eficiente entre diferentes máquinas transferindo somente as diferenças
92entre estes diretórios de forma compactada. Ele não precisa que
93nenhuma das máquinas tenha uma cópia do que está na outra.
94
95Um relatório técnico descrevendo o algoritmo usado pelo rsync está
96disponível neste pacote.
97
98%description -l ru.UTF-8
99rsync - это более быстрая и гибкая альтернатива rcp, позволяющая
100быструю и эффективную по отношению к ресурсам сети синхронизацию
101файлов или каталогов на различных машинах путем передачи только
102различий между ними в компрессированном виде. При этом совершенно не
103обязательно, чтобы одна машина имела у себя копию того, что есть на
104другой машине.
105
106%description -l uk.UTF-8
107rsync - це швидша та гнучкіша альтернатива rcp, яка забезпечує швидку
108та ефективну по відношенню до ресурсів мережі синхронізацію файлів чи
109каталогів на різних машинах шляхом передачі лише відмінностей між ними
110в компресованому виді. При цьому зовсім не обов'язково, щоб одна
111машина мала в себе копію того, що є на іншій машині.
1d21ccde 112
c0ab8b55 113%package -n rsyncd-inetd
be076d3d 114Summary: Files necessary to run rsync in daemon mode
24cc1053 115Summary(pl.UTF-8): Pliki niezbędne do uruchomienia rsynca w trybie serwera
b7135bf0 116Group: Networking/Daemons
f2db5eb2 117Requires: %{name} = %{epoch}:%{version}-%{release}
148780a3 118Requires: rc-inetd
c0ab8b55
PG
119Provides: rsyncd
120Obsoletes: rsyncd
121Obsoletes: rsyncd-standalone
be076d3d 122
c0ab8b55 123%description -n rsyncd-inetd
be076d3d
SZ
124rsync is a replacement for rcp that has many more features.
125
126rsync uses the "rsync algorithm" which provides a very fast method for
127bringing remote files into sync. It does this by sending just the
128differences in the files across the link, without requiring that both
129sets of files are present at one of the ends of the link beforehand.
130
131A technical report describing the rsync algorithm is included with
132this package.
133
829ded76
JR
134%description -n rsyncd-inetd -l pl.UTF-8
135Rsync jest zamiennikiem programu rcp z bardziej rozbudowaną składnią
136poleceń. Program ten używa efektywnego algorytmu "rsync" w czasie
137komunikacji i transportu plików do systemu zdalnego. Dokumentacja
138techniczna nowego algorytmu została również dołączona do pakietu.
c0ab8b55
PG
139
140%package -n rsyncd-standalone
141Summary: Files necessary to run rsync in daemon mode
24cc1053 142Summary(pl.UTF-8): Pliki niezbędne do uruchomienia rsynca w trybie serwera
b7135bf0 143Group: Networking/Daemons
94148ea8 144Requires(post,preun): /sbin/chkconfig
f2db5eb2 145Requires: %{name} = %{epoch}:%{version}-%{release}
c0ab8b55 146Provides: rsyncd
b51fca32 147Obsoletes: rsyncd
c0ab8b55
PG
148Obsoletes: rsyncd-inetd
149
150%description -n rsyncd-standalone
151rsync is a replacement for rcp that has many more features.
152
153rsync uses the "rsync algorithm" which provides a very fast method for
154bringing remote files into sync. It does this by sending just the
155differences in the files across the link, without requiring that both
156sets of files are present at one of the ends of the link beforehand.
157
158A technical report describing the rsync algorithm is included with
159this package.
160
829ded76
JR
161%description -n rsyncd-standalone -l pl.UTF-8
162Rsync jest zamiennikiem programu rcp z bardziej rozbudowaną składnią
163poleceń. Program ten używa efektywnego algorytmu "rsync" w czasie
164komunikacji i transportu plików do systemu zdalnego. Dokumentacja
165techniczna nowego algorytmu została również dołączona do pakietu.
be076d3d 166
f6135b0e 167%prep
61a6555f 168%setup -q -b1
ba8c40ae 169%patch100 -p1
d7ff894b 170%patch0 -p1
5412de7b 171%{?with_fadvise:%patch1 -p1}
c852e141 172%patch2 -p1
fda2b22e
AM
173%patch3 -p1
174%patch4 -p1
175%patch5 -p1
176%patch6 -p1
b73c62ab 177
61a6555f
AM
178# for compat with previous patched version
179patch -p1 -i patches/acls.diff || exit 1
180patch -p1 -i patches/xattrs.diff || exit 1
81cacf5d 181
f6135b0e 182%build
7846f798 183cp -f /usr/share/automake/config.sub .
48d3c2cd 184%{__autoheader}
4490f3a0 185%{__autoconf}
bbd47287 186%configure \
78dff7ac 187 LIBS="-lcrypto" \
18124c65 188 %{?with_rsh:--with-rsh=rsh} \
fbf643ad 189 --enable-ipv6 \
8ecc7ace
AM
190 --enable-acl-support \
191 --enable-xattr-support \
d46e8c94 192 --disable-debug \
fbc75855 193 --with-rsyncd-conf=%{_sysconfdir}/rsyncd.conf
233a0aea 194%{__make} proto
0fef7fa8 195%{__make}
f6135b0e 196
8ecc7ace
AM
197%{?with_tests:%{__make} test}
198
f6135b0e 199%install
200rm -rf $RPM_BUILD_ROOT
464464f2 201install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{sysconfig/rc-inetd,rc.d/init.d,logrotate.d,env.d},/var/log}
44a71ba1 202
95bf7754 203%{__make} install \
a3e2831a 204 prefix=$RPM_BUILD_ROOT%{_prefix} \
205 mandir=$RPM_BUILD_ROOT%{_mandir} \
51d15609 206 bindir=$RPM_BUILD_ROOT%{_bindir}
d7ff894b 207
3972ad9b 208:> $RPM_BUILD_ROOT/var/log/rsyncd.log
854040a4 209:> $RPM_BUILD_ROOT%{_sysconfdir}/rsyncd.secrets
44a71ba1 210
3972ad9b 211cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/rsyncd.conf
a6f19059 212#log file = /var/log/rsyncd.log
3972ad9b
PG
213EOF
214
7495c7e7 215cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/CVSIGNORE
8d6034a2
PG
216#CVSIGNORE=
217EOF
7495c7e7 218cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_RSH
8d6034a2
PG
219#RSYNC_RSH=
220EOF
7495c7e7 221cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_PROXY
8d6034a2
PG
222#RSYNC_PROXY=
223EOF
7495c7e7 224cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_PASSWORD
8d6034a2
PG
225#RSYNC_PASSWORD=
226EOF
227
9cb7906f
ER
228install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyncd
229cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/rsyncd
230cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rsyncd
231cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/rsyncd
be076d3d 232
5e338362
JB
233%clean
234rm -rf $RPM_BUILD_ROOT
235
7495c7e7
ER
236%post
237%env_update
238
239%postun
240%env_update
241
c0ab8b55 242%post -n rsyncd-inetd
148780a3 243%service -q rc-inetd reload
be076d3d 244
c0ab8b55 245%postun -n rsyncd-inetd
148780a3
ER
246if [ "$1" = "0" ]; then
247 %service -q rc-inetd reload
46fe218b 248fi
be076d3d 249
c0ab8b55
PG
250%post -n rsyncd-standalone
251/sbin/chkconfig --add rsyncd
148780a3 252%service rsyncd restart "rsync server"
c0ab8b55 253
5e338362 254%preun -n rsyncd-standalone
c0ab8b55 255if [ "$1" = "0" ]; then
148780a3 256 %service rsyncd stop
c0ab8b55
PG
257 /sbin/chkconfig --del rsyncd
258fi
259
f6135b0e 260%files
44a71ba1 261%defattr(644,root,root,755)
ccf03c22 262%doc README NEWS OLDNEWS TODO support
ee3bf881
JB
263%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/CVSIGNORE
264%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/RSYNC_PASSWORD
265%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/RSYNC_PROXY
266%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/RSYNC_RSH
267%attr(755,root,root) %{_bindir}/rsync
268%{_mandir}/man1/rsync.1*
be076d3d 269
c0ab8b55 270%files -n rsyncd-inetd
be076d3d
SZ
271%defattr(644,root,root,755)
272%dir %{_sysconfdir}
652c814a
KK
273%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyncd.conf
274%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyncd.secrets
94148ea8 275%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyncd
276%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/rsyncd
3972ad9b 277%attr(640,root,root) %ghost /var/log/rsyncd.log
ee3bf881 278%{_mandir}/man5/rsyncd.conf.5*
c0ab8b55
PG
279
280%files -n rsyncd-standalone
281%defattr(644,root,root,755)
282%dir %{_sysconfdir}
652c814a
KK
283%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyncd.conf
284%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyncd.secrets
94148ea8 285%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rsyncd
286%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyncd
3972ad9b 287%attr(640,root,root) %ghost /var/log/rsyncd.log
86951d3a 288%attr(754,root,root) /etc/rc.d/init.d/rsyncd
ee3bf881 289%{_mandir}/man5/rsyncd.conf.5*
This page took 0.110043 seconds and 4 git commands to generate.