OpenBSD CVS

CVS log for src/usr.bin/ssh/atomicio.c


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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.30 / (download) - annotate - [select for diffs], Thu Jan 24 02:42:23 2019 UTC (5 years, 3 months ago) by dtucker
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, OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9, OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5, HEAD
Changes since 1.29: +5 -7 lines
Diff to previous 1.29 (colored)

Check for both EAGAIN and EWOULDBLOCK.  This is a no-op in OpenBSD
(they are the same value) but makes things easier in -portable where
they may be distinct values.  "sigh ok" deraadt@

Revision 1.29 / (download) - annotate - [select for diffs], Wed Jan 23 08:01:46 2019 UTC (5 years, 3 months ago) by dtucker
Branch: MAIN
Changes since 1.28: +17 -5 lines
Diff to previous 1.28 (colored)

Sanitize scp filenames via snmprintf.  To do this we move the
progressmeter formatting outside of signal handler context and have
the atomicio callback called for EINTR too.  bz#2434 with contributions
from djm and jjelen at redhat.com, ok djm@

Revision 1.28 / (download) - annotate - [select for diffs], Wed Jul 27 23:18:12 2016 UTC (7 years, 9 months ago) by djm
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE, OPENBSD_6_4, OPENBSD_6_3_BASE, OPENBSD_6_3, OPENBSD_6_2_BASE, OPENBSD_6_2, OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.27: +3 -3 lines
Diff to previous 1.27 (colored)

better bounds check on iovcnt (we only ever use fixed, positive values)

Revision 1.27 / (download) - annotate - [select for diffs], Fri Jan 16 06:40:12 2015 UTC (9 years, 4 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0, OPENBSD_5_9_BASE, OPENBSD_5_9, OPENBSD_5_8_BASE, OPENBSD_5_8, OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.26: +2 -2 lines
Diff to previous 1.26 (colored)

Replace <sys/param.h> with <limits.h> and other less dirty headers where
possible.  Annotate <sys/param.h> lines with their current reasons.  Switch
to PATH_MAX, NGROUPS_MAX, HOST_NAME_MAX+1, LOGIN_NAME_MAX, etc.  Change
MIN() and MAX() to local definitions of MINIMUM() and MAXIMUM() where
sensible to avoid pulling in the pollution.  These are the files confirmed
through binary verification.
ok guenther, millert, doug (helped with the verification protocol)

Revision 1.26 / (download) - annotate - [select for diffs], Wed Sep 22 22:58:51 2010 UTC (13 years, 7 months ago) by djm
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6, OPENBSD_5_5_BASE, OPENBSD_5_5, OPENBSD_5_4_BASE, OPENBSD_5_4, OPENBSD_5_3_BASE, OPENBSD_5_3, OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1, OPENBSD_5_0_BASE, OPENBSD_5_0, OPENBSD_4_9_BASE, OPENBSD_4_9
Changes since 1.25: +28 -5 lines
Diff to previous 1.25 (colored)

add an option per-read/write callback to atomicio

factor out bandwidth limiting code from scp(1) into a generic bandwidth
limiter that can be attached using the atomicio callback mechanism

add a bandwidth limit option to sftp(1) using the above

"very nice" markus@

Revision 1.25 / (download) - annotate - [select for diffs], Mon Jun 25 12:02:27 2007 UTC (16 years, 10 months ago) by dtucker
Branch: MAIN
CVS Tags: OPENBSD_4_8_BASE, OPENBSD_4_8, OPENBSD_4_7_BASE, OPENBSD_4_7, OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5, OPENBSD_4_4_BASE, OPENBSD_4_4, OPENBSD_4_3_BASE, OPENBSD_4_3, OPENBSD_4_2_BASE, OPENBSD_4_2
Changes since 1.24: +2 -2 lines
Diff to previous 1.24 (colored)

Include <poll.h> like the man page says rather than <sys/poll.h>.  ok djm@

Revision 1.24 / (download) - annotate - [select for diffs], Tue Jun 19 02:04:43 2007 UTC (16 years, 11 months ago) by djm
Branch: MAIN
Changes since 1.23: +19 -3 lines
Diff to previous 1.23 (colored)

if the fd passed to atomicio/atomiciov() is non blocking, then poll() to
avoid a spin if it is not yet ready for reading/writing; ok dtucker@

Revision 1.13.2.1 / (download) - annotate - [select for diffs], Fri Oct 6 03:19:32 2006 UTC (17 years, 7 months ago) by brad
Branch: OPENBSD_3_8
Changes since 1.13: +61 -8 lines
Diff to previous 1.13 (colored) next main 1.14 (colored)

upgrade to OpenSSH 4.4

Revision 1.14.2.1 / (download) - annotate - [select for diffs], Sat Sep 30 04:06:50 2006 UTC (17 years, 7 months ago) by brad
Branch: OPENBSD_3_9
Changes since 1.14: +60 -7 lines
Diff to previous 1.14 (colored) next main 1.15 (colored)

upgrade to OpenSSH 4.4

Revision 1.23 / (download) - annotate - [select for diffs], Thu Aug 3 03:34:41 2006 UTC (17 years, 9 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_4_1_BASE, OPENBSD_4_1, OPENBSD_4_0_BASE, OPENBSD_4_0
Changes since 1.22: +2 -3 lines
Diff to previous 1.22 (colored)

almost entirely get rid of the culture of ".h files that include .h files"
ok djm, sort of ok stevesk
makes the pain stop in one easy step

Revision 1.22 / (download) - annotate - [select for diffs], Wed Jul 26 02:35:17 2006 UTC (17 years, 9 months ago) by stevesk
Branch: MAIN
Changes since 1.21: +3 -1 lines
Diff to previous 1.21 (colored)

move #include <sys/param.h> out of includes.h

Revision 1.21 / (download) - annotate - [select for diffs], Sat Jul 22 20:48:22 2006 UTC (17 years, 9 months ago) by stevesk
Branch: MAIN
Changes since 1.20: +2 -1 lines
Diff to previous 1.20 (colored)

move #include <string.h> out of includes.h

Revision 1.20 / (download) - annotate - [select for diffs], Tue Jul 11 20:07:25 2006 UTC (17 years, 10 months ago) by stevesk
Branch: MAIN
Changes since 1.19: +3 -1 lines
Diff to previous 1.19 (colored)

move #include <errno.h> out of includes.h; ok markus@

Revision 1.19 / (download) - annotate - [select for diffs], Sun Apr 16 07:59:00 2006 UTC (18 years, 1 month ago) by djm
Branch: MAIN
Changes since 1.18: +2 -2 lines
Diff to previous 1.18 (colored)

reorder sanity test so that it cannot dereference past the end of the
iov array; well spotted canacar@!

Revision 1.18 / (download) - annotate - [select for diffs], Sun Apr 16 00:52:55 2006 UTC (18 years, 1 month ago) by djm
Branch: MAIN
Changes since 1.17: +54 -1 lines
Diff to previous 1.17 (colored)

introduce atomiciov() function that wraps readv/writev to retry
interrupted transfers like atomicio() does for read/write;
feedback deraadt@ dtucker@ stevesk@ ok deraadt@

Revision 1.17 / (download) - annotate - [select for diffs], Sat Apr 1 05:51:34 2006 UTC (18 years, 1 month ago) by djm
Branch: MAIN
Changes since 1.16: +2 -6 lines
Diff to previous 1.16 (colored)

ANSIfy; requested deraadt@

Revision 1.16 / (download) - annotate - [select for diffs], Sat Mar 25 13:17:01 2006 UTC (18 years, 1 month ago) by djm
Branch: MAIN
Changes since 1.15: +1 -0 lines
Diff to previous 1.15 (colored)

Put $OpenBSD$ tags back (as comments) to replace the RCSID()s that
Theo nuked - our scripts to sync -portable need them in the files

Revision 1.15 / (download) - annotate - [select for diffs], Sun Mar 19 18:51:18 2006 UTC (18 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.14: +0 -1 lines
Diff to previous 1.14 (colored)

RCSID() can die

Revision 1.14 / (download) - annotate - [select for diffs], Sat Feb 11 19:31:18 2006 UTC (18 years, 3 months ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE
Branch point for: OPENBSD_3_9
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

type correctness; from Ray Lai in PR 5011; ok millert@

Revision 1.12.8.1 / (download) - annotate - [select for diffs], Sun Sep 4 18:39:52 2005 UTC (18 years, 8 months ago) by brad
Branch: OPENBSD_3_7
Changes since 1.12: +9 -5 lines
Diff to previous 1.12 (colored) next main 1.13 (colored)

upgrade to OpenSSH 4.2

Revision 1.12.6.1 / (download) - annotate - [select for diffs], Fri Sep 2 03:44:59 2005 UTC (18 years, 8 months ago) by brad
Branch: OPENBSD_3_6
Changes since 1.12: +9 -5 lines
Diff to previous 1.12 (colored) next main 1.13 (colored)

upgrade to OpenSSH 4.2

Revision 1.13 / (download) - annotate - [select for diffs], Tue May 24 17:32:43 2005 UTC (18 years, 11 months ago) by avsm
Branch: MAIN
CVS Tags: OPENBSD_3_8_BASE
Branch point for: OPENBSD_3_8
Changes since 1.12: +9 -5 lines
Diff to previous 1.12 (colored)

Switch atomicio to use a simpler interface; it now returns a size_t
(containing number of bytes read/written), and indicates error by
returning 0.  EOF is signalled by errno==EPIPE.
Typical use now becomes:

if (atomicio(read, ..., len) != len)
        err(1,"read");

ok deraadt@, cloder@, djm@

Revision 1.10.8.2 / (download) - annotate - [select for diffs], Thu Mar 4 18:18:14 2004 UTC (20 years, 2 months ago) by brad
Branch: OPENBSD_3_3
Changes since 1.10.8.1: +0 -0 lines
Diff to previous 1.10.8.1 (colored) to branchpoint 1.10 (colored) next main 1.11 (colored)

upgrade to OpenSSH 3.8upgrade to OpenSSH 3.8upgrade to OpenSSH 3.8

Revision 1.10.6.1 / (download) - annotate - [select for diffs], Tue Sep 16 21:20:23 2003 UTC (20 years, 8 months ago) by brad
Branch: OPENBSD_3_2
Changes since 1.10: +3 -3 lines
Diff to previous 1.10 (colored) next main 1.11 (colored)

upgrade to OpenSSH 3.7

Revision 1.10.8.1 / (download) - annotate - [select for diffs], Tue Sep 16 20:50:42 2003 UTC (20 years, 8 months ago) by brad
Branch: OPENBSD_3_3
Changes since 1.10: +3 -3 lines
Diff to previous 1.10 (colored)

upgrade to OpenSSH 3.7

Revision 1.12 / (download) - annotate - [select for diffs], Thu Jul 31 15:50:16 2003 UTC (20 years, 9 months ago) by avsm
Branch: MAIN
CVS Tags: OPENBSD_3_7_BASE, OPENBSD_3_6_BASE, OPENBSD_3_5_BASE, OPENBSD_3_5, OPENBSD_3_4_BASE, OPENBSD_3_4
Branch point for: OPENBSD_3_7, OPENBSD_3_6
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

correct comment: atomicio takes vwrite, not write; deraadt@ ok

Revision 1.11 / (download) - annotate - [select for diffs], Sat Jun 28 16:23:06 2003 UTC (20 years, 10 months ago) by deraadt
Branch: MAIN
Changes since 1.10: +2 -2 lines
Diff to previous 1.10 (colored)

deal with typing of write vs read in atomicio

Revision 1.9.2.2 / (download) - annotate - [select for diffs], Sat Mar 9 00:20:43 2002 UTC (22 years, 2 months ago) by miod
Branch: OPENBSD_2_9
Changes since 1.9.2.1: +0 -0 lines
Diff to previous 1.9.2.1 (colored) to branchpoint 1.9 (colored) next main 1.10 (colored)

Merge OpenSSH 3.1, keeping /etc as configuration files directory.
(i.e. OpenSSH 3.1 + openbsd29_3.1.patch)

Revision 1.9.2.1 / (download) - annotate - [select for diffs], Thu Sep 27 19:03:54 2001 UTC (22 years, 7 months ago) by jason
Branch: OPENBSD_2_9
Changes since 1.9: +1 -2 lines
Diff to previous 1.9 (colored)

Pull in OpenSSH-2.9.9

Revision 1.7.2.5 / (download) - annotate - [select for diffs], Thu Sep 27 00:15:41 2001 UTC (22 years, 7 months ago) by miod
Branch: OPENBSD_2_8
Changes since 1.7.2.4: +1 -2 lines
Diff to previous 1.7.2.4 (colored) to branchpoint 1.7 (colored) next main 1.8 (colored)

Pull in OpenSSH 2.9.9 to the 2.8 branch.

Revision 1.10 / (download) - annotate - [select for diffs], Tue May 8 22:48:07 2001 UTC (23 years ago) by markus
Branch: MAIN
CVS Tags: OPENBSD_3_3_BASE, OPENBSD_3_2_BASE, OPENBSD_3_1_BASE, OPENBSD_3_1, OPENBSD_3_0_BASE, OPENBSD_3_0
Branch point for: OPENBSD_3_3, OPENBSD_3_2
Changes since 1.9: +1 -2 lines
Diff to previous 1.9 (colored)

no need for xmalloc.h, thanks to espie@

Revision 1.7.2.4 / (download) - annotate - [select for diffs], Mon May 7 21:09:25 2001 UTC (23 years ago) by jason
Branch: OPENBSD_2_8
Changes since 1.7.2.3: +0 -0 lines
Diff to previous 1.7.2.3 (colored) to branchpoint 1.7 (colored)

Pull in OpenSSH-2.9 to 2.8 branch.

Revision 1.7.2.3 / (download) - annotate - [select for diffs], Wed Mar 21 19:46:21 2001 UTC (23 years, 2 months ago) by jason
Branch: OPENBSD_2_8
Changes since 1.7.2.2: +2 -2 lines
Diff to previous 1.7.2.2 (colored) to branchpoint 1.7 (colored)

Pull in OpenSSH-2.5.2 for 2.8 branch.

Revision 1.3.2.4 / (download) - annotate - [select for diffs], Wed Mar 21 18:52:31 2001 UTC (23 years, 2 months ago) by jason
Branch: OPENBSD_2_7
Changes since 1.3.2.3: +2 -2 lines
Diff to previous 1.3.2.3 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored)

Pull in OpenSSH-2.5.2 for 2.7 branch.

Revision 1.3.2.3 / (download) - annotate - [select for diffs], Mon Mar 12 15:44:06 2001 UTC (23 years, 2 months ago) by jason
Branch: OPENBSD_2_7
Changes since 1.3.2.2: +2 -2 lines
Diff to previous 1.3.2.2 (colored) to branchpoint 1.3 (colored)

OpenSSH-2.5.1 for 2.7 patch branch

Revision 1.9 / (download) - annotate - [select for diffs], Fri Mar 2 18:54:30 2001 UTC (23 years, 2 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_9_BASE
Branch point for: OPENBSD_2_9
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)

make copyright lines the same format

Revision 1.7.2.2 / (download) - annotate - [select for diffs], Mon Feb 19 17:18:31 2001 UTC (23 years, 3 months ago) by jason
Branch: OPENBSD_2_8
Changes since 1.7.2.1: +0 -0 lines
Diff to previous 1.7.2.1 (colored) to branchpoint 1.7 (colored)

Pull in OpenSSH-2.5.1

Revision 1.7.2.1 / (download) - annotate - [select for diffs], Fri Feb 16 20:12:51 2001 UTC (23 years, 3 months ago) by jason
Branch: OPENBSD_2_8
Changes since 1.7: +2 -2 lines
Diff to previous 1.7 (colored)

Pull in OpenSSH 2.5.0

Revision 1.8 / (download) - annotate - [select for diffs], Sun Jan 21 19:05:40 2001 UTC (23 years, 3 months ago) by markus
Branch: MAIN
Changes since 1.7: +2 -2 lines
Diff to previous 1.7 (colored)

split ssh.h and try to cleanup the #include mess. remove unnecessary #includes.
rename util.[ch] -> misc.[ch]

Revision 1.3.2.2 / (download) - annotate - [select for diffs], Wed Nov 8 21:30:16 2000 UTC (23 years, 6 months ago) by jason
Branch: OPENBSD_2_7
Changes since 1.3.2.1: +2 -2 lines
Diff to previous 1.3.2.1 (colored) to branchpoint 1.3 (colored)

openssh-2.3.0 (again) for 2.7 branch

Revision 1.7 / (download) - annotate - [select for diffs], Wed Oct 18 18:04:02 2000 UTC (23 years, 7 months ago) by markus
Branch: MAIN
CVS Tags: OPENBSD_2_8_BASE
Branch point for: OPENBSD_2_8
Changes since 1.6: +1 -1 lines
Diff to previous 1.6 (colored)

undo

Revision 1.6 / (download) - annotate - [select for diffs], Tue Oct 17 20:28:10 2000 UTC (23 years, 7 months ago) by markus
Branch: MAIN
Changes since 1.5: +2 -2 lines
Diff to previous 1.5 (colored)

return number of characters processed; ok deraadt@

Revision 1.5 / (download) - annotate - [select for diffs], Thu Sep 7 20:27:49 2000 UTC (23 years, 8 months ago) by deraadt
Branch: MAIN
Changes since 1.4: +2 -2 lines
Diff to previous 1.4 (colored)

cleanup copyright notices on all files.  I have attempted to be accurate with
the details.  everything is now under Tatu's licence (which I copied from his
readme), and/or the core-sdi bsd-ish thing for deattack, or various openbsd
developers under a 2-term bsd licence.  We're not changing any rules, just
being accurate.

Revision 1.3.2.1 / (download) - annotate - [select for diffs], Fri Sep 1 18:23:16 2000 UTC (23 years, 8 months ago) by jason
Branch: OPENBSD_2_7
Changes since 1.3: +1 -1 lines
Diff to previous 1.3 (colored)

Pull in the rest of openssh-2.2.0 to 2.7 branch (luvin' cvs...)

Revision 1.4 / (download) - annotate - [select for diffs], Tue Jun 20 01:39:37 2000 UTC (23 years, 11 months ago) by markus
Branch: MAIN
Changes since 1.3: +1 -1 lines
Diff to previous 1.3 (colored)

OpenBSD tag

Revision 1.3 / (download) - annotate - [select for diffs], Thu Mar 16 20:56:13 2000 UTC (24 years, 2 months ago) by markus
Branch: MAIN
CVS Tags: OPENBSD_2_7_BASE
Branch point for: OPENBSD_2_7
Changes since 1.2: +4 -3 lines
Diff to previous 1.2 (colored)

-pedantic: signed vs. unsigned, void*-arithm, etc

Revision 1.2 / (download) - annotate - [select for diffs], Tue Feb 1 22:32:53 2000 UTC (24 years, 3 months ago) by d
Branch: MAIN
Changes since 1.1: +4 -4 lines
Diff to previous 1.1 (colored)

int atomicio -> ssize_t (for alpha). ok deraadt@

Revision 1.1 / (download) - annotate - [select for diffs], Mon Dec 6 20:15:25 1999 UTC (24 years, 5 months ago) by deraadt
Branch: MAIN

move atomicio into it's own file.  wrap all socket write()s which were doing
write(sock, buf, len) != len, with atomicio() calls.

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.