diff options
author | Damien Miller <djm@mindrot.org> | 1999-12-07 16:45:00 +1100 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 1999-12-07 16:45:00 +1100 |
commit | 534115826b5d347610605f6559359d74542195e1 (patch) | |
tree | fd89a933e12a5891deb5b1566363bb861298f04d /atomicio.c | |
parent | 871f3ca1e71c8055e0bb95be98cb49dc80e5ce79 (diff) | |
download | openssh-git-534115826b5d347610605f6559359d74542195e1.tar.gz |
Forgot -kb when checking in
Diffstat (limited to 'atomicio.c')
-rw-r--r-- | atomicio.c | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/atomicio.c b/atomicio.c deleted file mode 100644 index 03d635cb..00000000 --- a/atomicio.c +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (c) 1999 Theo de Raadt - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include "includes.h" -RCSID("$Id: atomicio.c,v 1.1 1999/12/07 04:38:31 damien Exp $"); - -#include "xmalloc.h" -#include "ssh.h" - -/* - * ensure all of data on socket comes through. f==read || f==write - */ -int -atomicio(f, fd, s, n) - int (*f) (); - int fd; - void *s; - size_t n; -{ - int res, pos = 0; - - while (n > pos) { - res = (f) (fd, s + pos, n - pos); - switch (res) { - case -1: - if (errno == EINTR || errno == EAGAIN) - continue; - case 0: - return (res); - default: - pos += res; - } - } - return (pos); -} |