SecBSD's official ports repository

This commit is contained in:
purplerain 2023-08-16 22:26:55 +00:00
commit 2c0afcbbf3
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
64331 changed files with 5339189 additions and 0 deletions

62
net/rsync/Makefile Normal file
View file

@ -0,0 +1,62 @@
COMMENT = mirroring/synchronization over low bandwidth links
DISTNAME = rsync-3.2.7
REVISION = 0
CATEGORIES = net
HOMEPAGE = https://rsync.samba.org/
FLAVORS = iconv
FLAVOR ?=
# GPLv3
PERMIT_PACKAGE = Yes
WANTLIB = c crypto
MASTER_SITES = https://rsync.samba.org/ftp/rsync/src/ \
https://ftp.funet.fi/pub/mirrors/samba.org/pub/rsync/src/
MODULES = lang/python
MODPY_RUNDEP = No
BUILD_DEPENDS = textproc/py-commonmark${MODPY_FLAVOR} \
sysutils/xxhash
SEPARATE_BUILD =Yes
CONFIGURE_STYLE =gnu
CONFIGURE_ARGS =--disable-lz4 \
--disable-zstd \
--with-included-popt \
--with-included-zlib \
--with-rrsync \
--with-rsyncd-conf="${SYSCONFDIR}/rsyncd.conf" \
--with-rsh=/usr/bin/ssh \
--with-nobody-user=_rsync \
--with-nobody-group=_rsync
CONFIGURE_ENV +=CPPFLAGS="-I${LOCALBASE}/include -DXXH_INLINE_ALL=1" \
ac_cv_search_XXH64_createState=""
.include <bsd.port.arch.mk>
.if ${ARCH:Mamd64}
CONFIGURE_ARGS +=--enable-md5-asm
.endif
.if ${FLAVOR:Miconv}
CONFIGURE_ENV +=LDFLAGS='-L${LOCALBASE}/lib'
LIB_DEPENDS += converters/libiconv
WANTLIB += iconv
.endif
DOCDIR = ${PREFIX}/share/doc/rsync
DEBUG_PACKAGES = ${BUILD_PACKAGES}
pre-configure:
${SUBST_CMD} ${WRKSRC}/support/rrsync
post-install:
${INSTALL_DATA_DIR} ${DOCDIR}
${INSTALL_DATA} ${WRKSRC}/tech_report.tex ${DOCDIR}
.include <bsd.port.mk>

2
net/rsync/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (rsync-3.2.7.tar.gz) = Tn2dP27RCHjFjF+3JKZ9rPS2qsc0CxPkiPstxBNG8rs=
SIZE (rsync-3.2.7.tar.gz) = 1149787

View file

@ -0,0 +1,12 @@
Index: authenticate.c
--- authenticate.c.orig
+++ authenticate.c
@@ -351,7 +351,7 @@ void auth_client(int fd, const char *user, const char
char pass2[MAX_DIGEST_LEN*2];
if (!user || !*user)
- user = "nobody";
+ user = "_rsync";
negotiate_daemon_auth(-1, 1);
if (!(pass = getpassf(password_file))

View file

@ -0,0 +1,12 @@
Index: rsync.1.md
--- rsync.1.md.orig
+++ rsync.1.md
@@ -4723,7 +4723,7 @@ file is included or excluded.
The USER or LOGNAME environment variables are used to determine the default
username sent to an rsync daemon. If neither is set, the username defaults
- to "nobody". If both are set, `USER` takes precedence.
+ to "_rsync". If both are set, `USER` takes precedence.
0. `RSYNC_PARTIAL_DIR`

View file

@ -0,0 +1,32 @@
Index: rsyncd.conf.5.md
--- rsyncd.conf.5.md.orig
+++ rsyncd.conf.5.md
@@ -502,7 +502,7 @@ the values of parameters. See the GLOBAL PARAMETERS s
and from that module should take place as when the daemon was run as root.
In combination with the "[gid](#)" parameter this determines what file
permissions are available. The default when run by a super-user is to
- switch to the system's "nobody" user. The default for a non-super-user is
+ switch to the system's "_rsync" user. The default for a non-super-user is
to not try to change the user. See also the "[gid](#)" parameter.
The RSYNC_USER_NAME environment variable may be used to request that rsync
@@ -520,7 +520,7 @@ the values of parameters. See the GLOBAL PARAMETERS s
extra ones be set as supplemental groups. You may also specify a "`*`" as
the first gid in the list, which will be replaced by all the normal groups
for the transfer's user (see "[uid](#)"). The default when run by a super-user
- is to switch to your OS's "nobody" (or perhaps "nogroup") group with no
+ is to switch to the "_rsync" group with no
other supplementary groups. The default for a non-super-user is to not
change any group attributes (and indeed, your OS may not allow a
non-super-user to try to change their group settings).
@@ -1198,8 +1198,8 @@ A simple rsyncd.conf file that allow anonymous rsync t
A more sophisticated example would be:
> ```
-> uid = nobody
-> gid = nobody
+> uid = _rsync
+> gid = _rsync
> use chroot = yes
> max connections = 4
> syslog facility = local5

View file

@ -0,0 +1,12 @@
Index: support/rrsync
--- support/rrsync.orig
+++ support/rrsync
@@ -10,7 +10,7 @@
# You may configure these 2 values to your liking. See also the section of
# short & long options if you want to disable any options that rsync accepts.
-RSYNC = '/usr/bin/rsync'
+RSYNC = '${PREFIX}/bin/rsync'
LOGFILE = 'rrsync.log' # NOTE: the file must exist for a line to be appended!
# The following options are mainly the options that a client rsync can send

14
net/rsync/pkg/DESCR Normal file
View file

@ -0,0 +1,14 @@
Rsync is a fast and extraordinarily versatile file copying tool.
It can copy locally, to/from another host over any remote shell,
or to/from a remote rsync daemon. It offers a large number of options
that control every aspect of its behavior and permit very flexible
specification of the set of files to be copied. It is famous for
its delta-transfer algorithm, which reduces the amount of data sent
over the network by sending only the differences between the source
files and the existing files in the destination. Rsync is widely
used for backups and mirroring and as an improved copy command for
everyday use.
Flavor: iconv
extra dependency, for people wanting to bring files from other OSes with
more versatile filenames.

13
net/rsync/pkg/PLIST Normal file
View file

@ -0,0 +1,13 @@
@newgroup _rsync:669
@newuser _rsync:669:_rsync::rsync Daemon:/var/empty:/sbin/nologin
@rcscript ${RCDIR}/rsyncd
bin/rrsync
@bin bin/rsync
bin/rsync-ssl
@man man/man1/rrsync.1
@man man/man1/rsync-ssl.1
@man man/man1/rsync.1
@man man/man5/rsyncd.conf.5
share/doc/rsync/
share/doc/rsync/tech_report.tex
@extra ${SYSCONFDIR}/rsyncd.conf

9
net/rsync/pkg/rsyncd.rc Executable file
View file

@ -0,0 +1,9 @@
#!/bin/ksh
daemon="${TRUEPREFIX}/bin/rsync --daemon"
. /etc/rc.d/rc.subr
rc_reload=NO
rc_cmd $1