xwritev.c

来自「cipe 编程」· C语言 代码 · 共 33 行

C
33
字号
/*   cipelib - library routines common to CIPE (user-mode part) and PKCIPE   Copyright 2000 Olaf Titz <olaf@bigred.inka.de>   This program is free software; you can redistribute it and/or   modify it under the terms of the GNU General Public License   as published by the Free Software Foundation; either version   2 of the License, or (at your option) any later version.*//* $Id: xwritev.c,v 1.2 2000/12/13 01:38:56 olaf Exp $ */#include <sys/uio.h>#include "cipelib.h"int xwritev(int fd, struct iovec *vec, size_t cnt){    int e=0, t=0;    while (1) {        if ((e=writev(fd, vec, cnt))<0)            return e;        t+=e;        while (e>=vec->iov_len) {            if (--cnt<=0)                return t;            e-=vec->iov_len;            ++vec;        }        vec->iov_base+=e;        vec->iov_len-=e;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?