Check for SYS/GL during library init. Reason is that
[AROS.git] / workbench / network / stacks / AROSTCP / netlib / writev.c
blob7e8ef7b8f27a555cf55b3a94696e0fdfb87db16e
1 /*
2 * This file is taken from ixemul.library for the Amiga.
3 * Copyright (C) 1991, 1992 Markus M. Wild
4 * Copyright (C) 2005 Pavel Fedin
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Library General Public License for more details.
16 * You should have received a copy of the GNU Library General Public
17 * License along with this library; if not, write to the Free
18 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 * writev.c,v 1.1.1.1 1994/04/04 04:30:39 amiga Exp
22 * writev.c,v
23 * Revision 1.1.1.1 1994/04/04 04:30:39 amiga
24 * Initial CVS check in.
26 * Revision 1.1 1992/05/14 19:55:40 mwild
27 * Initial revision
31 #include <unistd.h>
32 #include <sys/uio.h>
34 ssize_t writev (int fd, const struct iovec *iov, int iovcnt)
36 int written = 0;
37 int res;
39 while (iovcnt--)
41 res = write( fd, iov->iov_base, iov->iov_len);
42 if (res == -1) return -1;
43 written += res;
44 if (res < iov->iov_len) break;
45 iov++;
48 return written;