diff options
author | raf <none@none> | 2006-12-12 21:33:45 -0800 |
---|---|---|
committer | raf <none@none> | 2006-12-12 21:33:45 -0800 |
commit | d4188195113bc7f546b026033c66ea3e12de0e02 (patch) | |
tree | db507e14c10cb79ec46942a49c2ce76a6f4489d0 /usr/src/lib/libbc/libc/sys/sys5/writev.c | |
parent | 8dea286086b540419ab7594c626f1153fe6e99be (diff) | |
download | illumos-gate-d4188195113bc7f546b026033c66ea3e12de0e02.tar.gz |
6499491 libbc misuses <sys/syscall.h>
--HG--
rename : usr/src/lib/libbc/inc/include/sys/syscall.h => deleted_files/usr/src/lib/libbc/inc/include/sys/syscall.h
Diffstat (limited to 'usr/src/lib/libbc/libc/sys/sys5/writev.c')
-rw-r--r-- | usr/src/lib/libbc/libc/sys/sys5/writev.c | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/usr/src/lib/libbc/libc/sys/sys5/writev.c b/usr/src/lib/libbc/libc/sys/sys5/writev.c index fe9371ce58..a833f4e3a2 100644 --- a/usr/src/lib/libbc/libc/sys/sys5/writev.c +++ b/usr/src/lib/libbc/libc/sys/sys5/writev.c @@ -2,9 +2,8 @@ * CDDL HEADER START * * The contents of this file are subject to the terms of the - * Common Development and Distribution License, Version 1.0 only - * (the "License"). You may not use this file except in compliance - * with the License. + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. @@ -19,9 +18,10 @@ * * CDDL HEADER END */ + /* - * Copyright (c) 1999 by Sun Microsystems, Inc. - * All rights reserved. + * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" @@ -51,7 +51,7 @@ bc_writev(int fd, struct iovec *iov, int iovcnt) int nsize, total = 0; char *nbuf; int i; - + if (fd_get(fd) != -1) { for (i = 0; i < iovcnt; i++) { nsize = getmodsize(iov[i].iov_len, @@ -62,7 +62,7 @@ bc_writev(int fd, struct iovec *iov, int iovcnt) fprintf(stderr, "writev: malloc failed\n"); exit(-1); } - + (void) memset(nbuf, 0, nsize); ret = conv2utmpx(nbuf, iov[i].iov_base, iov[i].iov_len); @@ -72,17 +72,13 @@ bc_writev(int fd, struct iovec *iov, int iovcnt) return (-1); } - total += ret; - free(nbuf); - - ret = getmodsize(ret, sizeof (struct utmpx), + + ret = getmodsize(ret, sizeof (struct utmpx), sizeof (struct compat_utmp)); + total += ret; } - total = getmodsize(total, sizeof (struct utmpx), - sizeof (struct compat_utmp)); return (total); - } return (_writev(fd, iov, iovcnt)); |