OpenBSD CVS

CVS log for src/usr.bin/rsync/downloader.c


[BACK] Up to [local] / src / usr.bin / rsync

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.21.4.1 / (download) - annotate - [select for diffs], Tue Nov 9 13:41:24 2021 UTC (2 years, 6 months ago) by benno
Branch: OPENBSD_6_9
Changes since 1.21: +2 -2 lines
Diff to previous 1.21 (colored) next main 1.22 (colored)

rpki-client(8) should handle CA misbehaviours as soft-errors.

This is a merge of usr.sbin/rpki-client and usr.bin/rsync from current
and includes all commits in rpki-client 7.5 up to Tue Nov 9 11:03:40
2021 and to openrsync up to Wed Nov 3 14:42:13 2021, including:

* Make rpki-client more resilient regarding untrusted input:
  - fail repository synchronisation after 15min runtime
  - limit the number of publication points per TAL
  - don't allow DOCTYPE definitions in RRDP XML files
  - fix detection of HTTP redirect loops.
* limit the number of concurrent rsync processes.
* fix CRLF in tal files.

This is patches/6.9/common/021_rpki.patch.sig

Revision 1.22.2.1 / (download) - annotate - [select for diffs], Tue Nov 9 13:40:41 2021 UTC (2 years, 6 months ago) by benno
Branch: OPENBSD_7_0
Changes since 1.22: +2 -2 lines
Diff to previous 1.22 (colored) next main 1.23 (colored)

rpki-client(8) should handle CA misbehaviours as soft-errors.

This is a merge of usr.sbin/rpki-client and usr.bin/rsync from current
and includes all commits in rpki-client 7.5 up to Tue Nov 9 11:03:40
2021 and to openrsync up to Wed Nov 3 14:42:13 2021, including:

* Make rpki-client more resilient regarding untrusted input:
  - fail repository synchronisation after 15min runtime
  - limit the number of publication points per TAL
  - don't allow DOCTYPE definitions in RRDP XML files
  - fix detection of HTTP redirect loops.
* limit the number of concurrent rsync processes.
* fix CRLF in tal files.

This is patches/7.0/common/004_rpki.patch.sig

Revision 1.23 / (download) - annotate - [select for diffs], Sun Oct 24 21:24:17 2021 UTC (2 years, 6 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1, HEAD
Changes since 1.22: +2 -2 lines
Diff to previous 1.22 (colored)

For open/openat, if the flags parameter does not contain O_CREAT, the
3rd (variadic) mode_t parameter is irrelevant.  Many developers in the past
have passed mode_t (0, 044, 0644, or such), which might lead future people
to copy this broken idiom, and perhaps even believe this parameter has some
meaning or implication or application. Delete them all.
This comes out of a conversation where tb@ noticed that a strange (but
intentional) pledge behaviour is to always knock-out high-bits from
mode_t on a number of system calls as a safety factor, and his bewilderment
that this appeared to be happening against valid modes (at least visually),
but no sorry, they are all irrelevant junk.  They could all be 0xdeafbeef.
ok millert

Revision 1.22 / (download) - annotate - [select for diffs], Wed Jun 30 13:10:04 2021 UTC (2 years, 10 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE
Branch point for: OPENBSD_7_0
Changes since 1.21: +1 -1 lines
Diff to previous 1.21 (colored)

Replace Id: tags with OpenBSD: tags
OK deraadt@

Revision 1.21 / (download) - annotate - [select for diffs], Wed May 8 21:30:11 2019 UTC (5 years ago) by benno
Branch: MAIN
CVS Tags: OPENBSD_6_9_BASE, OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6
Branch point for: OPENBSD_6_9
Changes since 1.20: +9 -10 lines
Diff to previous 1.20 (colored)

remove sess argument from all functions that only used it for logging
functions.
ok deraadt@

Revision 1.20 / (download) - annotate - [select for diffs], Wed May 8 20:00:25 2019 UTC (5 years ago) by benno
Branch: MAIN
Changes since 1.19: +34 -35 lines
Diff to previous 1.19 (colored)

remove sess argument from log functions. ok deraadt@

Revision 1.19 / (download) - annotate - [select for diffs], Tue Apr 2 11:05:55 2019 UTC (5 years, 1 month ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE, OPENBSD_6_5
Changes since 1.18: +2 -2 lines
Diff to previous 1.18 (colored)

annoying white space

Revision 1.18 / (download) - annotate - [select for diffs], Sat Mar 23 16:04:28 2019 UTC (5 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.17: +5 -5 lines
Diff to previous 1.17 (colored)

indents and reflows around ERR*() and LOG*(); ok benno

Revision 1.17 / (download) - annotate - [select for diffs], Mon Feb 18 22:47:34 2019 UTC (5 years, 3 months ago) by benno
Branch: MAIN
Changes since 1.16: +5 -5 lines
Diff to previous 1.16 (colored)

new attempt to sync with kristaps up to Sun Feb 17 2019

339cf5998c0c022623cd68de50722b6c14543952 Push "error trail" further into code.

baf58ce5fe1bc6ce431b3b0ac8264b83ae8c7d02 Document all arguments.  Add
common -av usage.  Remove bits about not supporting anything but
files/dirs.

821a811a8c80e52fb56b241fc65a16cae1b4fb2c Disambiguate as prodded by deraadt@

6c4475b8f226e9031ec0ec1b3f14f7d347132c87 Add -h to usage string

4d344ae6156873b44c95de0c1ed629e637c2d7ab Clarify error message
language, use service name instead of port, specify that the socket is
SOCK_STREAM.  From deraadt@.  Tweaked for lowercase messages.

f3ec049e76257fc96bcdc872f1d3b967b98f3eb6 In consideration to benno@'s
comments, let the mktemp functions propogate an errno handled by the
caller.  Also keep the original line lengths.  While in mktemp.c, make
some defines into an enum.

e116c2bd00e634b56e4276120135915ceaa31cf2 Put the FSM of the sender
into its own function.  Put dry_run ack and end of phase ack into the
send buffer too, further reducing the possibility of deadlock.

c7745aa4c7394ca89d841f8ee76782256d694340 Make the sender write loop be
fully non-blocking.  This frees us of deadlocking the protocol because
the sender will always be able to pull down data.

93c7b4843e80aeac2ec6ae6ffc395df4deaf4a31 Remove "yoda" notation to be
more in tune with OpenBSD.  Most found by deraadt@.

Revision 1.16 / (download) - annotate - [select for diffs], Mon Feb 18 21:55:27 2019 UTC (5 years, 3 months ago) by benno
Branch: MAIN
Changes since 1.15: +5 -5 lines
Diff to previous 1.15 (colored)

revert previous

Revision 1.15 / (download) - annotate - [select for diffs], Mon Feb 18 21:34:54 2019 UTC (5 years, 3 months ago) by benno
Branch: MAIN
Changes since 1.14: +5 -5 lines
Diff to previous 1.14 (colored)

sync with kristaps up to Sun Feb 17 2019

339cf5998c0c022623cd68de50722b6c14543952 Push "error trail" further into code.

baf58ce5fe1bc6ce431b3b0ac8264b83ae8c7d02 Document all arguments.  Add
  common -av usage.  Remove bits about not supporting anything but
  files/dirs.

821a811a8c80e52fb56b241fc65a16cae1b4fb2c Disambiguate as prodded by deraadt@

6c4475b8f226e9031ec0ec1b3f14f7d347132c87 Add -h to usage string

4d344ae6156873b44c95de0c1ed629e637c2d7ab Clarify error message
  language, use service name instead of port, specify that the socket is
  SOCK_STREAM.  From deraadt@.  Tweaked for lowercase messages.

f3ec049e76257fc96bcdc872f1d3b967b98f3eb6 In consideration to benno@'s
  comments, let the mktemp functions propogate an errno handled by the
  caller.  Also keep the original line lengths.  While in mktemp.c, make
  some defines into an enum.

e116c2bd00e634b56e4276120135915ceaa31cf2 Put the FSM of the sender
  into its own function.  Put dry_run ack and end of phase ack into the
  send buffer too, further reducing the possibility of deadlock.

c7745aa4c7394ca89d841f8ee76782256d694340 Make the sender write loop be
  fully non-blocking.  This frees us of deadlocking the protocol because
  the sender will always be able to pull down data.

93c7b4843e80aeac2ec6ae6ffc395df4deaf4a31 Remove "yoda" notation to be
  more in tune with OpenBSD.  Most found by deraadt@.

Revision 1.14 / (download) - annotate - [select for diffs], Sun Feb 17 16:34:04 2019 UTC (5 years, 3 months ago) by deraadt
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

more yoda repairs

Revision 1.13 / (download) - annotate - [select for diffs], Sat Feb 16 16:56:33 2019 UTC (5 years, 3 months ago) by florian
Branch: MAIN
Changes since 1.12: +1 -2 lines
Diff to previous 1.12 (colored)

sync with kristaps, commit ad6f9d84aa041d28b93cdf885a583a09f58b1b88
Remove superfluous includes.

Revision 1.12 / (download) - annotate - [select for diffs], Sat Feb 16 16:55:35 2019 UTC (5 years, 3 months ago) by florian
Branch: MAIN
Changes since 1.11: +21 -1 lines
Diff to previous 1.11 (colored)

sync with kristaps, commit 9b79b4a3d06c810304321d5b58544751b5d9fefd
Fast-track reads back into a read loop to avoid the buffer with writes while
there are still reads pending.  This resolve some bottlenecking.

Revision 1.11 / (download) - annotate - [select for diffs], Sat Feb 16 10:47:20 2019 UTC (5 years, 3 months ago) by florian
Branch: MAIN
Changes since 1.10: +1 -18 lines
Diff to previous 1.10 (colored)

Handle file permissions in rsync_set_metadata().
We set permissions either when we create a new file or when the
-p flag is set.

"you snooze, you get collisions" deraadt@

Revision 1.10 / (download) - annotate - [select for diffs], Sat Feb 16 10:46:22 2019 UTC (5 years, 3 months ago) by florian
Branch: MAIN
Changes since 1.9: +13 -30 lines
Diff to previous 1.9 (colored)

Introduce mkstempat(), a variation on mkstemp(3) and mkstemplinkat().

mkstempat() works exactly like mkstemp(3) except that it replaces
open(2) with openat(2) so that it can be used in rsync_downloader()
to easily deal with relative paths.

mkstemplinkat() works somewhat like mkdtemp() to create a template
symlink.

Use the mkstemplinkat() to create or update symlinks and overwrite
existing objects including empty directories that might exist under
the destination name.

"you snooze, you get collisions" deraadt@

Revision 1.9 / (download) - annotate - [select for diffs], Thu Feb 14 18:29:08 2019 UTC (5 years, 3 months ago) by florian
Branch: MAIN
Changes since 1.8: +5 -34 lines
Diff to previous 1.8 (colored)

sync with kristaps, commit be8a27a290d5171290c015284542f2af4296be12

Put permission-setting code into its own function, as we'll need to call it
from several places.  Also enable that -o sets the owner.

Revision 1.8 / (download) - annotate - [select for diffs], Wed Feb 13 05:41:35 2019 UTC (5 years, 3 months ago) by tb
Branch: MAIN
Changes since 1.7: +3 -2 lines
Diff to previous 1.7 (colored)

Use md4 from libcrypto instead of using a compatible re-implementation.

ok benno, deraadt

Revision 1.7 / (download) - annotate - [select for diffs], Tue Feb 12 19:39:57 2019 UTC (5 years, 3 months ago) by benno
Branch: MAIN
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored)

whitespace and knf

Revision 1.6 / (download) - annotate - [select for diffs], Tue Feb 12 19:13:59 2019 UTC (5 years, 3 months ago) by benno
Branch: MAIN
Changes since 1.5: +12 -3 lines
Diff to previous 1.5 (colored)

sync
commit 8d00f73ef924d2c39c35f0eb2428d465b949bbe0
Author: kristaps <>
Date:   Tue Feb 12 07:37:24 2019 +0000

    Document the process of reassigning gid.

Revision 1.5 / (download) - annotate - [select for diffs], Tue Feb 12 19:10:28 2019 UTC (5 years, 3 months ago) by benno
Branch: MAIN
Changes since 1.4: +13 -1 lines
Diff to previous 1.4 (colored)

sync
commit 3a43d6aace5e83d7e9550086661b5354486171b9
Author: kristaps <>
Date:   Tue Feb 12 00:01:22 2019 +0000

    Actually do group reassignment, which might fail if the group doesn't exist
    or we can't change to it.

Revision 1.4 / (download) - annotate - [select for diffs], Mon Feb 11 21:41:22 2019 UTC (5 years, 3 months ago) by deraadt
Branch: MAIN
Changes since 1.3: +36 -38 lines
Diff to previous 1.3 (colored)

swap comparison arguments as needed, to match idiomatic C most of us
are familiar with.  Proofed by florian and benno

Revision 1.3 / (download) - annotate - [select for diffs], Mon Feb 11 19:18:36 2019 UTC (5 years, 3 months ago) by deraadt
Branch: MAIN
Changes since 1.2: +11 -11 lines
Diff to previous 1.2 (colored)

cleanup weird spaces around !.  (We normalize source-code to a standard
idiom because it is less error prone for a larger team.  kristaps idiom
is highly divergent)
ok benno

Revision 1.2 / (download) - annotate - [select for diffs], Sun Feb 10 23:24:14 2019 UTC (5 years, 3 months ago) by benno
Branch: MAIN
Changes since 1.1: +26 -26 lines
Diff to previous 1.1 (colored)

fix whitespace

Revision 1.1 / (download) - annotate - [select for diffs], Sun Feb 10 23:18:28 2019 UTC (5 years, 3 months ago) by benno
Branch: MAIN

Import Kristaps' openrsync into the tree.
OK deraadt@

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.